From fd9f4c8bc633a4284bf77fcaa0efa6cf33874473 Mon Sep 17 00:00:00 2001 From: kingchenc Date: Mon, 15 Jun 2026 17:19:24 +0200 Subject: [PATCH] feat(bindings): expose name() on every indicator in all 10 languages (#308) * feat(bindings): expose name() on every indicator in Node, WASM, and Python Surface the core Indicator::name() / BarBuilder::name() accessor through the three native bindings so every indicator reports its canonical name at runtime, matching the existing reset/isReady/warmupPeriod surface. - Node (napi): name(): string on all 514 classes (regenerated index.d.ts) - WASM (wasm-bindgen): name(): string on all 514 classes - Python (pyo3): name() -> str on all classes * feat(bindings): expose name() across the C ABI and C/C++/Go/C#/Java/R Regenerate the C ABI and the four generated language bindings from the updated ScriptHelpers generators so every indicator and bar builder reports its canonical name at runtime, completing name() coverage across all 10 languages. - C ABI (bindings/c): wickra__name() -> *const c_char for all 514, cached in a per-function OnceLock with ind.name() as the source of truth; cbindgen header regenerated and vendored into bindings/go/include. - Go: Name() string; C#: string Name(); Java: String name(); R: name() S3 generic over the wk__name C glue (methods.R + NAMESPACE). The Java regeneration also restores two fixes that had drifted out of the generator (bool* arrays via boolSegment; uint8_t ctor args cast to byte) and C# re-emits '#nullable enable'; these are no-op vs the previous committed output apart from the new name() accessors. * test(golden): pin canonical name() across all 10 language bindings Add a cross-language name() consistency check: every indicator must report the exact core Indicator::name() (which can differ from the registered class name, e.g. ChaikinMoneyFlow -> "CMF", Donchian -> "DonchianChannels"). The 514 core names are committed as testdata/golden/names.json (keyed by Rust canonical) and asserted by each binding's golden replay, which already reconstructs the whole catalogue: - node / wasm: assert against names.json in the existing golden test - python: new test_golden_names.py over the shared node manifest - go / csharp / java / c+c++ / r: the golden-test generators load names.json and emit a name assertion per indicator (regenerated test artifacts committed) All 10 bindings return identical names by construction (each delegates to core), so this pins that contract and guards against a future binding breaking the passthrough. * docs(changelog): record name() across all 10 bindings under Unreleased * fix(r): restore bool* flag marshalling in the regenerated C glue The name() regeneration had reverted the cross-section bool fix: the R glue emitted (bool *)REAL(x) for const bool* inputs, reinterpreting 8-byte doubles as 1-byte bools so every flag read as false (PercentAboveMa, NewHighsNewLows, HighLowIndex, BullishPercentIndex returned 0 instead of the breadth value). The wk_bool_vec() helper is restored in the generator and the glue routes bool arrays through it again. --- CHANGELOG.md | 11 + bindings/c/include/wickra.h | 1030 +- bindings/c/src/lib.rs | 10128 +++++++++++++++- .../csharp/Wickra.Tests/GoldenAllTests.g.cs | 514 + .../csharp/Wickra/Generated/Indicators.g.cs | 4118 ++++++- .../Wickra/Generated/NativeMethods.g.cs | 1544 ++- bindings/csharp/gen_golden_test.py | 4 + bindings/go/gen_golden_test.py | 6 + bindings/go/golden_all_test.go | 1542 +++ bindings/go/include/wickra.h | 1030 +- bindings/go/indicators_gen.go | 3602 +++++- bindings/java/gen_golden_test.py | 16 +- .../main/java/org/wickra/AbandonedBaby.java | 10 + .../java/src/main/java/org/wickra/Abcd.java | 10 + .../java/org/wickra/AbsoluteBreadthIndex.java | 10 + .../java/org/wickra/AccelerationBands.java | 10 + .../org/wickra/AcceleratorOscillator.java | 10 + .../main/java/org/wickra/AdOscillator.java | 10 + .../main/java/org/wickra/AdVolumeLine.java | 10 + .../src/main/java/org/wickra/AdaptiveCci.java | 10 + .../main/java/org/wickra/AdaptiveCycle.java | 10 + .../org/wickra/AdaptiveLaguerreFilter.java | 10 + .../src/main/java/org/wickra/AdaptiveRsi.java | 10 + .../java/src/main/java/org/wickra/Adl.java | 10 + .../main/java/org/wickra/AdvanceBlock.java | 10 + .../main/java/org/wickra/AdvanceDecline.java | 10 + .../java/org/wickra/AdvanceDeclineRatio.java | 10 + .../java/src/main/java/org/wickra/Adx.java | 10 + .../java/src/main/java/org/wickra/Adxr.java | 10 + .../src/main/java/org/wickra/Alligator.java | 10 + .../java/src/main/java/org/wickra/Alma.java | 10 + .../java/src/main/java/org/wickra/Alpha.java | 10 + .../java/org/wickra/AmihudIlliquidity.java | 10 + .../src/main/java/org/wickra/AnchoredRsi.java | 10 + .../main/java/org/wickra/AnchoredVwap.java | 10 + .../java/org/wickra/AndrewsPitchfork.java | 10 + .../java/src/main/java/org/wickra/Apo.java | 10 + .../java/src/main/java/org/wickra/Aroon.java | 10 + .../main/java/org/wickra/AroonOscillator.java | 10 + .../java/src/main/java/org/wickra/Atr.java | 10 + .../src/main/java/org/wickra/AtrBands.java | 10 + .../src/main/java/org/wickra/AtrRatchet.java | 10 + .../main/java/org/wickra/AtrTrailingStop.java | 10 + .../src/main/java/org/wickra/AutoFib.java | 10 + .../main/java/org/wickra/Autocorrelation.java | 10 + .../wickra/AutocorrelationPeriodogram.java | 10 + .../java/org/wickra/AverageDailyRange.java | 10 + .../main/java/org/wickra/AverageDrawdown.java | 10 + .../src/main/java/org/wickra/AvgPrice.java | 10 + .../java/org/wickra/AwesomeOscillator.java | 10 + .../wickra/AwesomeOscillatorHistogram.java | 18 +- .../main/java/org/wickra/BalanceOfPower.java | 10 + .../main/java/org/wickra/BandpassFilter.java | 10 + .../java/src/main/java/org/wickra/Bat.java | 10 + .../src/main/java/org/wickra/BeltHold.java | 10 + .../java/src/main/java/org/wickra/Beta.java | 10 + .../java/org/wickra/BetaNeutralSpread.java | 10 + .../main/java/org/wickra/BetterVolume.java | 10 + .../java/org/wickra/BipowerVariation.java | 10 + .../src/main/java/org/wickra/BodySizePct.java | 10 + .../main/java/org/wickra/BollingerBands.java | 10 + .../java/org/wickra/BollingerBandwidth.java | 10 + .../src/main/java/org/wickra/BomarBands.java | 10 + .../main/java/org/wickra/BreadthThrust.java | 10 + .../src/main/java/org/wickra/Breakaway.java | 10 + .../java/org/wickra/BullishPercentIndex.java | 10 + .../src/main/java/org/wickra/BurkeRatio.java | 10 + .../src/main/java/org/wickra/Butterfly.java | 10 + .../main/java/org/wickra/CalendarSpread.java | 10 + .../src/main/java/org/wickra/CalmarRatio.java | 10 + .../src/main/java/org/wickra/Camarilla.java | 10 + .../main/java/org/wickra/CandleVolume.java | 10 + .../java/src/main/java/org/wickra/Cci.java | 10 + .../main/java/org/wickra/CenterOfGravity.java | 10 + .../java/org/wickra/CentralPivotRange.java | 10 + .../java/src/main/java/org/wickra/Cfo.java | 10 + .../java/org/wickra/ChaikinMoneyFlow.java | 10 + .../java/org/wickra/ChaikinOscillator.java | 10 + .../java/org/wickra/ChaikinVolatility.java | 10 + .../main/java/org/wickra/ChandeKrollStop.java | 10 + .../main/java/org/wickra/ChandelierExit.java | 10 + .../main/java/org/wickra/ChoppinessIndex.java | 10 + .../main/java/org/wickra/ClassicPivots.java | 10 + .../src/main/java/org/wickra/CloseVsOpen.java | 10 + .../main/java/org/wickra/ClosingMarubozu.java | 10 + .../java/src/main/java/org/wickra/Cmo.java | 10 + .../org/wickra/CoefficientOfVariation.java | 10 + .../main/java/org/wickra/Cointegration.java | 10 + .../java/org/wickra/CommonSenseRatio.java | 10 + .../java/org/wickra/CompositeProfile.java | 10 + .../org/wickra/ConcealingBabySwallow.java | 10 + .../org/wickra/ConditionalValueAtRisk.java | 10 + .../src/main/java/org/wickra/ConnorsRsi.java | 10 + .../src/main/java/org/wickra/Coppock.java | 10 + .../org/wickra/CorrelationTrendIndicator.java | 10 + .../main/java/org/wickra/Counterattack.java | 10 + .../java/src/main/java/org/wickra/Crab.java | 10 + .../org/wickra/CumulativeVolumeDelta.java | 10 + .../org/wickra/CumulativeVolumeIndex.java | 10 + .../main/java/org/wickra/CupAndHandle.java | 10 + .../main/java/org/wickra/CyberneticCycle.java | 10 + .../java/src/main/java/org/wickra/Cypher.java | 10 + .../java/org/wickra/DayOfWeekProfile.java | 10 + .../src/main/java/org/wickra/Decycler.java | 10 + .../java/org/wickra/DecyclerOscillator.java | 10 + .../java/src/main/java/org/wickra/Dema.java | 10 + .../src/main/java/org/wickra/DemandIndex.java | 10 + .../main/java/org/wickra/DemarkPivots.java | 10 + .../src/main/java/org/wickra/DepthSlope.java | 10 + .../java/org/wickra/DerivativeOscillator.java | 10 + .../main/java/org/wickra/DetrendedStdDev.java | 10 + .../main/java/org/wickra/DisparityIndex.java | 10 + .../src/main/java/org/wickra/DistanceSsd.java | 10 + .../java/src/main/java/org/wickra/Doji.java | 10 + .../src/main/java/org/wickra/DojiStar.java | 10 + .../src/main/java/org/wickra/DollarBars.java | 10 + .../src/main/java/org/wickra/Donchian.java | 10 + .../main/java/org/wickra/DonchianStop.java | 10 + .../main/java/org/wickra/DoubleBollinger.java | 10 + .../main/java/org/wickra/DoubleTopBottom.java | 10 + .../org/wickra/DownsideGapThreeMethods.java | 10 + .../java/src/main/java/org/wickra/Dpo.java | 10 + .../main/java/org/wickra/DragonflyDoji.java | 10 + .../java/org/wickra/DrawdownDuration.java | 10 + .../src/main/java/org/wickra/DumplingTop.java | 10 + .../java/src/main/java/org/wickra/Dx.java | 10 + .../java/org/wickra/DynamicMomentumIndex.java | 10 + .../main/java/org/wickra/EaseOfMovement.java | 10 + .../main/java/org/wickra/EffectiveSpread.java | 10 + .../java/org/wickra/EhlersStochastic.java | 10 + .../java/src/main/java/org/wickra/Ehma.java | 10 + .../main/java/org/wickra/ElderImpulse.java | 10 + .../src/main/java/org/wickra/ElderRay.java | 10 + .../main/java/org/wickra/ElderSafeZone.java | 10 + .../java/src/main/java/org/wickra/Ema.java | 10 + .../wickra/EmpiricalModeDecomposition.java | 10 + .../src/main/java/org/wickra/Engulfing.java | 10 + .../src/main/java/org/wickra/Equivolume.java | 10 + .../org/wickra/EstimatedLeverageRatio.java | 10 + .../java/org/wickra/EvenBetterSinewave.java | 10 + .../main/java/org/wickra/EveningDojiStar.java | 10 + .../java/src/main/java/org/wickra/Evwma.java | 10 + .../main/java/org/wickra/EwmaVolatility.java | 10 + .../src/main/java/org/wickra/Expectancy.java | 10 + .../java/org/wickra/FallingThreeMethods.java | 10 + .../java/src/main/java/org/wickra/Fama.java | 10 + .../src/main/java/org/wickra/FibArcs.java | 10 + .../src/main/java/org/wickra/FibChannel.java | 10 + .../main/java/org/wickra/FibConfluence.java | 10 + .../main/java/org/wickra/FibExtension.java | 10 + .../java/src/main/java/org/wickra/FibFan.java | 10 + .../main/java/org/wickra/FibProjection.java | 10 + .../main/java/org/wickra/FibRetracement.java | 10 + .../main/java/org/wickra/FibTimeZones.java | 10 + .../main/java/org/wickra/FibonacciPivots.java | 10 + .../src/main/java/org/wickra/FisherRsi.java | 10 + .../main/java/org/wickra/FisherTransform.java | 10 + .../src/main/java/org/wickra/FlagPennant.java | 10 + .../src/main/java/org/wickra/Footprint.java | 10 + .../src/main/java/org/wickra/ForceIndex.java | 10 + .../java/org/wickra/FractalChaosBands.java | 10 + .../java/src/main/java/org/wickra/Frama.java | 10 + .../main/java/org/wickra/FryPanBottom.java | 10 + .../main/java/org/wickra/FundingBasis.java | 10 + .../java/org/wickra/FundingImpliedApr.java | 10 + .../src/main/java/org/wickra/FundingRate.java | 10 + .../main/java/org/wickra/FundingRateMean.java | 10 + .../java/org/wickra/FundingRateZScore.java | 10 + .../main/java/org/wickra/GainLossRatio.java | 10 + .../main/java/org/wickra/GainToPainRatio.java | 10 + .../java/org/wickra/GapSideBySideWhite.java | 10 + .../src/main/java/org/wickra/Garch11.java | 10 + .../org/wickra/GarmanKlassVolatility.java | 10 + .../src/main/java/org/wickra/Gartley.java | 10 + .../main/java/org/wickra/GatorOscillator.java | 10 + .../main/java/org/wickra/GeneralizedDema.java | 10 + .../src/main/java/org/wickra/GeometricMa.java | 10 + .../main/java/org/wickra/GoldenPocket.java | 10 + .../java/org/wickra/GrangerCausality.java | 10 + .../main/java/org/wickra/GravestoneDoji.java | 10 + .../java/src/main/java/org/wickra/Hammer.java | 10 + .../src/main/java/org/wickra/HangingMan.java | 10 + .../java/src/main/java/org/wickra/Harami.java | 10 + .../src/main/java/org/wickra/HaramiCross.java | 10 + .../org/wickra/HasbrouckInformationShare.java | 10 + .../java/org/wickra/HeadAndShoulders.java | 10 + .../src/main/java/org/wickra/HeikinAshi.java | 10 + .../java/org/wickra/HeikinAshiOscillator.java | 10 + .../main/java/org/wickra/HiLoActivator.java | 10 + .../main/java/org/wickra/HighLowIndex.java | 10 + .../main/java/org/wickra/HighLowRange.java | 10 + .../java/org/wickra/HighLowVolumeNodes.java | 10 + .../src/main/java/org/wickra/HighWave.java | 10 + .../main/java/org/wickra/HighpassFilter.java | 10 + .../src/main/java/org/wickra/Hikkake.java | 10 + .../main/java/org/wickra/HikkakeModified.java | 10 + .../java/org/wickra/HilbertDominantCycle.java | 10 + .../java/org/wickra/HistoricalVolatility.java | 10 + .../java/src/main/java/org/wickra/Hma.java | 10 + .../src/main/java/org/wickra/HoltWinters.java | 10 + .../main/java/org/wickra/HomingPigeon.java | 10 + .../src/main/java/org/wickra/HtDcPhase.java | 10 + .../src/main/java/org/wickra/HtPhasor.java | 10 + .../src/main/java/org/wickra/HtTrendMode.java | 10 + .../main/java/org/wickra/HurstChannel.java | 10 + .../main/java/org/wickra/HurstExponent.java | 10 + .../src/main/java/org/wickra/Ichimoku.java | 10 + .../java/org/wickra/IdenticalThreeCrows.java | 10 + .../main/java/org/wickra/ImbalanceBars.java | 10 + .../java/src/main/java/org/wickra/InNeck.java | 10 + .../src/main/java/org/wickra/Inertia.java | 10 + .../java/org/wickra/InformationRatio.java | 10 + .../main/java/org/wickra/InitialBalance.java | 10 + .../org/wickra/InstantaneousTrendline.java | 10 + .../java/org/wickra/IntradayIntensity.java | 10 + .../org/wickra/IntradayMomentumIndex.java | 10 + .../org/wickra/IntradayVolatilityProfile.java | 10 + .../org/wickra/InverseFisherTransform.java | 10 + .../main/java/org/wickra/InvertedHammer.java | 10 + .../src/main/java/org/wickra/JarqueBera.java | 10 + .../java/src/main/java/org/wickra/Jma.java | 10 + .../main/java/org/wickra/JumpIndicator.java | 10 + .../java/src/main/java/org/wickra/KRatio.java | 10 + .../src/main/java/org/wickra/KagiBars.java | 10 + .../java/org/wickra/KalmanHedgeRatio.java | 10 + .../java/src/main/java/org/wickra/Kama.java | 10 + .../src/main/java/org/wickra/KaseDevStop.java | 10 + .../org/wickra/KasePermissionStochastic.java | 10 + .../main/java/org/wickra/KellyCriterion.java | 10 + .../src/main/java/org/wickra/Keltner.java | 10 + .../src/main/java/org/wickra/KendallTau.java | 10 + .../src/main/java/org/wickra/Kicking.java | 10 + .../main/java/org/wickra/KickingByLength.java | 10 + .../java/src/main/java/org/wickra/Kst.java | 10 + .../src/main/java/org/wickra/Kurtosis.java | 10 + .../java/src/main/java/org/wickra/Kvo.java | 10 + .../src/main/java/org/wickra/KylesLambda.java | 10 + .../main/java/org/wickra/LadderBottom.java | 10 + .../src/main/java/org/wickra/LaguerreRsi.java | 10 + .../org/wickra/LeadLagCrossCorrelation.java | 10 + .../src/main/java/org/wickra/LinRegAngle.java | 10 + .../main/java/org/wickra/LinRegChannel.java | 10 + .../main/java/org/wickra/LinRegIntercept.java | 10 + .../src/main/java/org/wickra/LinRegSlope.java | 10 + .../java/org/wickra/LinearRegression.java | 10 + .../java/org/wickra/LiquidationFeatures.java | 10 + .../src/main/java/org/wickra/LogReturn.java | 10 + .../main/java/org/wickra/LongLeggedDoji.java | 10 + .../src/main/java/org/wickra/LongLine.java | 10 + .../main/java/org/wickra/LongShortRatio.java | 10 + .../src/main/java/org/wickra/M2Measure.java | 10 + .../src/main/java/org/wickra/MaEnvelope.java | 10 + .../src/main/java/org/wickra/MacdExt.java | 10 + .../src/main/java/org/wickra/MacdFix.java | 10 + .../main/java/org/wickra/MacdHistogram.java | 10 + .../main/java/org/wickra/MacdIndicator.java | 10 + .../java/src/main/java/org/wickra/Mama.java | 10 + .../org/wickra/MarketFacilitationIndex.java | 10 + .../src/main/java/org/wickra/MartinRatio.java | 10 + .../src/main/java/org/wickra/Marubozu.java | 10 + .../src/main/java/org/wickra/MassIndex.java | 10 + .../src/main/java/org/wickra/MatHold.java | 10 + .../src/main/java/org/wickra/MatchingLow.java | 10 + .../src/main/java/org/wickra/MaxDrawdown.java | 10 + .../java/org/wickra/McClellanOscillator.java | 10 + .../org/wickra/McClellanSummationIndex.java | 10 + .../main/java/org/wickra/McGinleyDynamic.java | 10 + .../org/wickra/MedianAbsoluteDeviation.java | 10 + .../main/java/org/wickra/MedianChannel.java | 10 + .../src/main/java/org/wickra/MedianMa.java | 10 + .../src/main/java/org/wickra/MedianPrice.java | 10 + .../java/src/main/java/org/wickra/Mfi.java | 10 + .../src/main/java/org/wickra/Microprice.java | 10 + .../src/main/java/org/wickra/MidPoint.java | 10 + .../src/main/java/org/wickra/MidPrice.java | 10 + .../src/main/java/org/wickra/MinusDi.java | 10 + .../src/main/java/org/wickra/MinusDm.java | 10 + .../main/java/org/wickra/ModifiedMaStop.java | 10 + .../java/src/main/java/org/wickra/Mom.java | 10 + .../main/java/org/wickra/MorningDojiStar.java | 10 + .../java/org/wickra/MorningEveningStar.java | 10 + .../main/java/org/wickra/MurreyMathLines.java | 10 + .../src/main/java/org/wickra/NakedPoc.java | 10 + .../java/src/main/java/org/wickra/Natr.java | 10 + .../main/java/org/wickra/NewHighsNewLows.java | 10 + .../main/java/org/wickra/NewPriceLines.java | 10 + .../java/src/main/java/org/wickra/Nrtr.java | 10 + .../java/src/main/java/org/wickra/Nvi.java | 10 + .../java/org/wickra/OIPriceDivergence.java | 10 + .../src/main/java/org/wickra/OIWeighted.java | 10 + .../java/src/main/java/org/wickra/Obv.java | 10 + .../main/java/org/wickra/OiToVolumeRatio.java | 10 + .../src/main/java/org/wickra/OmegaRatio.java | 10 + .../java/src/main/java/org/wickra/OnNeck.java | 10 + .../java/org/wickra/OpenInterestDelta.java | 10 + .../java/org/wickra/OpenInterestMomentum.java | 10 + .../main/java/org/wickra/OpeningMarubozu.java | 10 + .../main/java/org/wickra/OpeningRange.java | 10 + .../org/wickra/OrderBookImbalanceFull.java | 10 + .../org/wickra/OrderBookImbalanceTop1.java | 10 + .../org/wickra/OrderBookImbalanceTopN.java | 10 + .../java/org/wickra/OrderFlowImbalance.java | 10 + .../src/main/java/org/wickra/OuHalfLife.java | 10 + .../main/java/org/wickra/OvernightGap.java | 10 + .../org/wickra/OvernightIntradayReturn.java | 10 + .../src/main/java/org/wickra/PainIndex.java | 10 + .../java/org/wickra/PairSpreadZScore.java | 10 + .../main/java/org/wickra/PairwiseBeta.java | 10 + .../java/org/wickra/ParkinsonVolatility.java | 10 + .../java/org/wickra/PearsonCorrelation.java | 10 + .../main/java/org/wickra/PercentAboveMa.java | 10 + .../src/main/java/org/wickra/PercentB.java | 10 + .../org/wickra/PercentageTrailingStop.java | 10 + .../org/wickra/PerpetualPremiumIndex.java | 10 + .../java/src/main/java/org/wickra/Pgo.java | 10 + .../java/org/wickra/PiercingDarkCloud.java | 10 + .../java/src/main/java/org/wickra/Pin.java | 10 + .../main/java/org/wickra/PivotReversal.java | 10 + .../java/src/main/java/org/wickra/PlusDi.java | 10 + .../java/src/main/java/org/wickra/PlusDm.java | 10 + .../java/src/main/java/org/wickra/Pmo.java | 10 + .../java/org/wickra/PointAndFigureBars.java | 10 + .../wickra/PolarizedFractalEfficiency.java | 10 + .../java/src/main/java/org/wickra/Ppo.java | 10 + .../main/java/org/wickra/PpoHistogram.java | 10 + .../main/java/org/wickra/ProfileShape.java | 10 + .../main/java/org/wickra/ProfitFactor.java | 10 + .../main/java/org/wickra/ProjectionBands.java | 10 + .../java/org/wickra/ProjectionOscillator.java | 10 + .../java/src/main/java/org/wickra/Psar.java | 10 + .../java/src/main/java/org/wickra/Pvi.java | 10 + .../java/src/main/java/org/wickra/Qqe.java | 10 + .../java/src/main/java/org/wickra/Qstick.java | 10 + .../main/java/org/wickra/QuartileBands.java | 10 + .../main/java/org/wickra/QuotedSpread.java | 10 + .../src/main/java/org/wickra/RSquared.java | 10 + .../src/main/java/org/wickra/RangeBars.java | 10 + .../main/java/org/wickra/RealizedSpread.java | 10 + .../java/org/wickra/RealizedVolatility.java | 10 + .../main/java/org/wickra/RecoveryFactor.java | 10 + .../main/java/org/wickra/RectangleRange.java | 10 + .../java/src/main/java/org/wickra/Reflex.java | 10 + .../src/main/java/org/wickra/RegimeLabel.java | 10 + .../java/org/wickra/RelativeStrengthAB.java | 10 + .../src/main/java/org/wickra/RenkoBars.java | 10 + .../java/org/wickra/RenkoTrailingStop.java | 10 + .../src/main/java/org/wickra/RickshawMan.java | 10 + .../java/org/wickra/RisingThreeMethods.java | 10 + .../java/src/main/java/org/wickra/Rmi.java | 10 + .../java/src/main/java/org/wickra/Roc.java | 10 + .../java/src/main/java/org/wickra/Rocp.java | 10 + .../java/src/main/java/org/wickra/Rocr.java | 10 + .../src/main/java/org/wickra/Rocr100.java | 10 + .../org/wickra/RogersSatchellVolatility.java | 10 + .../src/main/java/org/wickra/RollMeasure.java | 10 + .../java/org/wickra/RollingCorrelation.java | 10 + .../java/org/wickra/RollingCovariance.java | 10 + .../src/main/java/org/wickra/RollingIqr.java | 10 + .../java/org/wickra/RollingMinMaxScaler.java | 10 + .../org/wickra/RollingPercentileRank.java | 10 + .../main/java/org/wickra/RollingQuantile.java | 10 + .../src/main/java/org/wickra/RollingVwap.java | 10 + .../main/java/org/wickra/RoofingFilter.java | 10 + .../java/src/main/java/org/wickra/Rsi.java | 10 + .../java/src/main/java/org/wickra/Rsx.java | 10 + .../src/main/java/org/wickra/RunBars.java | 10 + .../java/src/main/java/org/wickra/Rvi.java | 10 + .../main/java/org/wickra/RviVolatility.java | 10 + .../java/src/main/java/org/wickra/Rwi.java | 10 + .../main/java/org/wickra/SampleEntropy.java | 10 + .../java/src/main/java/org/wickra/SarExt.java | 10 + .../main/java/org/wickra/SeasonalZScore.java | 10 + .../main/java/org/wickra/SeparatingLines.java | 10 + .../main/java/org/wickra/SessionHighLow.java | 10 + .../main/java/org/wickra/SessionRange.java | 10 + .../src/main/java/org/wickra/SessionVwap.java | 10 + .../main/java/org/wickra/ShannonEntropy.java | 10 + .../java/src/main/java/org/wickra/Shark.java | 10 + .../src/main/java/org/wickra/SharpeRatio.java | 10 + .../main/java/org/wickra/ShootingStar.java | 10 + .../src/main/java/org/wickra/ShortLine.java | 10 + .../main/java/org/wickra/SignedVolume.java | 10 + .../src/main/java/org/wickra/SineWave.java | 10 + .../main/java/org/wickra/SineWeightedMa.java | 10 + .../main/java/org/wickra/SinglePrints.java | 10 + .../src/main/java/org/wickra/Skewness.java | 10 + .../java/src/main/java/org/wickra/Sma.java | 10 + .../java/src/main/java/org/wickra/Smi.java | 10 + .../java/src/main/java/org/wickra/Smma.java | 10 + .../java/org/wickra/SmoothedHeikinAshi.java | 10 + .../main/java/org/wickra/SortinoRatio.java | 10 + .../java/org/wickra/SpearmanCorrelation.java | 10 + .../src/main/java/org/wickra/SpinningTop.java | 10 + .../java/org/wickra/SpreadAr1Coefficient.java | 10 + .../java/org/wickra/SpreadBollingerBands.java | 10 + .../src/main/java/org/wickra/SpreadHurst.java | 10 + .../main/java/org/wickra/StalledPattern.java | 10 + .../main/java/org/wickra/StandardError.java | 10 + .../java/org/wickra/StandardErrorBands.java | 10 + .../src/main/java/org/wickra/StarcBands.java | 10 + .../java/src/main/java/org/wickra/Stc.java | 10 + .../java/src/main/java/org/wickra/StdDev.java | 10 + .../java/org/wickra/StepTrailingStop.java | 10 + .../main/java/org/wickra/SterlingRatio.java | 10 + .../main/java/org/wickra/StickSandwich.java | 10 + .../src/main/java/org/wickra/StochRsi.java | 10 + .../src/main/java/org/wickra/Stochastic.java | 10 + .../main/java/org/wickra/StochasticCci.java | 10 + .../main/java/org/wickra/SuperSmoother.java | 10 + .../src/main/java/org/wickra/SuperTrend.java | 10 + .../java/src/main/java/org/wickra/T3.java | 10 + .../src/main/java/org/wickra/TailRatio.java | 10 + .../java/org/wickra/TakerBuySellRatio.java | 10 + .../java/src/main/java/org/wickra/Takuri.java | 10 + .../src/main/java/org/wickra/TasukiGap.java | 10 + .../main/java/org/wickra/TdCamouflage.java | 10 + .../java/src/main/java/org/wickra/TdClop.java | 10 + .../src/main/java/org/wickra/TdClopwin.java | 10 + .../src/main/java/org/wickra/TdCombo.java | 10 + .../src/main/java/org/wickra/TdCountdown.java | 10 + .../src/main/java/org/wickra/TdDWave.java | 10 + .../src/main/java/org/wickra/TdDeMarker.java | 10 + .../main/java/org/wickra/TdDifferential.java | 10 + .../src/main/java/org/wickra/TdLines.java | 10 + .../main/java/org/wickra/TdMovingAverage.java | 10 + .../java/src/main/java/org/wickra/TdOpen.java | 10 + .../src/main/java/org/wickra/TdPressure.java | 10 + .../main/java/org/wickra/TdPropulsion.java | 10 + .../java/org/wickra/TdRangeProjection.java | 10 + .../java/src/main/java/org/wickra/TdRei.java | 10 + .../src/main/java/org/wickra/TdRiskLevel.java | 10 + .../main/java/org/wickra/TdSequential.java | 10 + .../src/main/java/org/wickra/TdSetup.java | 10 + .../java/src/main/java/org/wickra/TdTrap.java | 10 + .../java/src/main/java/org/wickra/Tema.java | 10 + .../java/org/wickra/TermStructureBasis.java | 10 + .../src/main/java/org/wickra/ThreeDrives.java | 10 + .../src/main/java/org/wickra/ThreeInside.java | 10 + .../main/java/org/wickra/ThreeLineBreak.java | 10 + .../java/org/wickra/ThreeLineBreakBars.java | 10 + .../main/java/org/wickra/ThreeLineStrike.java | 10 + .../main/java/org/wickra/ThreeOutside.java | 10 + .../java/org/wickra/ThreeSoldiersOrCrows.java | 10 + .../java/org/wickra/ThreeStarsInSouth.java | 10 + .../src/main/java/org/wickra/Thrusting.java | 10 + .../src/main/java/org/wickra/TickBars.java | 10 + .../src/main/java/org/wickra/TickIndex.java | 10 + .../java/src/main/java/org/wickra/Tii.java | 10 + .../main/java/org/wickra/TimeBasedStop.java | 10 + .../org/wickra/TimeOfDayReturnProfile.java | 10 + .../main/java/org/wickra/TowerTopBottom.java | 10 + .../src/main/java/org/wickra/TpoProfile.java | 10 + .../main/java/org/wickra/TradeImbalance.java | 10 + .../org/wickra/TradeSignAutocorrelation.java | 10 + .../java/org/wickra/TradeVolumeIndex.java | 10 + .../src/main/java/org/wickra/TrendLabel.java | 10 + .../java/org/wickra/TrendStrengthIndex.java | 10 + .../src/main/java/org/wickra/Trendflex.java | 10 + .../main/java/org/wickra/TreynorRatio.java | 10 + .../src/main/java/org/wickra/Triangle.java | 10 + .../java/src/main/java/org/wickra/Trima.java | 10 + .../java/src/main/java/org/wickra/Trin.java | 10 + .../main/java/org/wickra/TripleTopBottom.java | 10 + .../src/main/java/org/wickra/Tristar.java | 10 + .../java/src/main/java/org/wickra/Trix.java | 10 + .../src/main/java/org/wickra/TrueRange.java | 10 + .../java/src/main/java/org/wickra/Tsf.java | 10 + .../main/java/org/wickra/TsfOscillator.java | 10 + .../java/src/main/java/org/wickra/Tsi.java | 10 + .../java/src/main/java/org/wickra/Tsv.java | 10 + .../src/main/java/org/wickra/TtmSqueeze.java | 10 + .../src/main/java/org/wickra/TtmTrend.java | 10 + .../src/main/java/org/wickra/TurnOfMonth.java | 10 + .../src/main/java/org/wickra/Tweezer.java | 10 + .../main/java/org/wickra/TwiggsMoneyFlow.java | 10 + .../src/main/java/org/wickra/TwoCrows.java | 10 + .../main/java/org/wickra/TypicalPrice.java | 10 + .../src/main/java/org/wickra/UlcerIndex.java | 10 + .../java/org/wickra/UltimateOscillator.java | 10 + .../java/org/wickra/UniqueThreeRiver.java | 10 + .../java/org/wickra/UniversalOscillator.java | 10 + .../java/org/wickra/UpDownVolumeRatio.java | 10 + .../org/wickra/UpsideGapThreeMethods.java | 10 + .../java/org/wickra/UpsideGapTwoCrows.java | 10 + .../java/org/wickra/UpsidePotentialRatio.java | 10 + .../src/main/java/org/wickra/ValueArea.java | 10 + .../src/main/java/org/wickra/ValueAtRisk.java | 10 + .../src/main/java/org/wickra/Variance.java | 10 + .../main/java/org/wickra/VarianceRatio.java | 10 + .../org/wickra/VerticalHorizontalFilter.java | 10 + .../java/src/main/java/org/wickra/Vidya.java | 10 + .../main/java/org/wickra/VolatilityCone.java | 10 + .../org/wickra/VolatilityOfVolatility.java | 10 + .../main/java/org/wickra/VolatilityRatio.java | 10 + .../src/main/java/org/wickra/VoltyStop.java | 10 + .../src/main/java/org/wickra/VolumeBars.java | 10 + .../java/org/wickra/VolumeByTimeProfile.java | 10 + .../java/org/wickra/VolumeOscillator.java | 10 + .../java/org/wickra/VolumePriceTrend.java | 10 + .../main/java/org/wickra/VolumeProfile.java | 10 + .../src/main/java/org/wickra/VolumeRsi.java | 10 + .../java/org/wickra/VolumeWeightedMacd.java | 10 + .../java/org/wickra/VolumeWeightedSr.java | 10 + .../java/src/main/java/org/wickra/Vortex.java | 10 + .../java/src/main/java/org/wickra/Vpin.java | 10 + .../java/src/main/java/org/wickra/Vwap.java | 10 + .../main/java/org/wickra/VwapStdDevBands.java | 10 + .../java/src/main/java/org/wickra/Vwma.java | 10 + .../java/src/main/java/org/wickra/Vzo.java | 10 + .../java/src/main/java/org/wickra/Wad.java | 10 + .../java/src/main/java/org/wickra/WavePm.java | 10 + .../src/main/java/org/wickra/WaveTrend.java | 10 + .../java/src/main/java/org/wickra/Wedge.java | 10 + .../main/java/org/wickra/WeightedClose.java | 10 + .../src/main/java/org/wickra/WickRatio.java | 10 + .../java/org/wickra/WilliamsFractals.java | 10 + .../src/main/java/org/wickra/WilliamsR.java | 10 + .../src/main/java/org/wickra/WinRate.java | 10 + .../java/src/main/java/org/wickra/Wma.java | 10 + .../main/java/org/wickra/WoodiePivots.java | 10 + .../java/org/wickra/YangZhangVolatility.java | 10 + .../src/main/java/org/wickra/YoyoExit.java | 10 + .../java/src/main/java/org/wickra/ZScore.java | 10 + .../src/main/java/org/wickra/ZeroLagMacd.java | 10 + .../java/src/main/java/org/wickra/ZigZag.java | 10 + .../java/src/main/java/org/wickra/Zlema.java | 10 + .../org/wickra/internal/NativeMethods.java | 1196 +- .../test/java/org/wickra/GoldenAllTest.java | 521 + bindings/node/__tests__/golden.test.js | 7 + bindings/node/index.d.ts | 514 + bindings/node/src/lib.rs | 1680 +++ bindings/python/src/lib.rs | 1656 +++ bindings/python/tests/test_golden_names.py | 28 + bindings/r/NAMESPACE | 2 + bindings/r/R/indicators.R | 4 +- bindings/r/R/methods.R | 20 + bindings/r/gen_golden_test.py | 9 +- bindings/r/src/wickra.c | 2570 ++++ bindings/r/tests/testthat/golden_specs.R | 1030 +- bindings/r/tests/testthat/test-golden-all.R | 2 + bindings/wasm/src/lib.rs | 1089 ++ bindings/wasm/tests/golden.test.js | 3 + examples/c/gen_golden_test.py | 5 + examples/c/golden_test.c | 1028 ++ testdata/golden/names.json | 516 + 545 files changed, 39963 insertions(+), 610 deletions(-) create mode 100644 bindings/python/tests/test_golden_names.py create mode 100644 testdata/golden/names.json diff --git a/CHANGELOG.md b/CHANGELOG.md index 373050f8..c0cdc7bb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Added +- **`name()` on every indicator in all 10 languages.** The canonical + `Indicator::name()` / `BarBuilder::name()` accessor is now exposed through every + binding — Node.js `name()`, WASM `name()`, Python `name()`, and the C ABI + `wickra__name()` surfaced as Go `Name()`, C# `Name()`, Java `name()`, and + the R `name()` S3 generic (C/C++ call the C ABI directly). The returned string + is the core canonical name, which may differ from the registered class name + (e.g. `ChaikinMoneyFlow` reports `"CMF"`, `Donchian` reports + `"DonchianChannels"`). A new cross-language golden (`testdata/golden/names.json`) + pins this name for all 514 indicators identically across every binding. + ## [0.9.2] - 2026-06-15 ### Added diff --git a/bindings/c/include/wickra.h b/bindings/c/include/wickra.h index e8589bda..4b057fed 100644 --- a/bindings/c/include/wickra.h +++ b/bindings/c/include/wickra.h @@ -1692,6 +1692,8 @@ uintptr_t wickra_adaptive_cycle_warmup_period(struct AdaptiveCycle *handle); bool wickra_adaptive_cycle_is_ready(struct AdaptiveCycle *handle); +const char *wickra_adaptive_cycle_name(struct AdaptiveCycle *handle); + void wickra_adaptive_cycle_reset(struct AdaptiveCycle *handle); void wickra_adaptive_cycle_free(struct AdaptiveCycle *handle); @@ -1709,6 +1711,8 @@ uintptr_t wickra_adaptive_laguerre_filter_warmup_period(struct AdaptiveLaguerreF bool wickra_adaptive_laguerre_filter_is_ready(struct AdaptiveLaguerreFilter *handle); +const char *wickra_adaptive_laguerre_filter_name(struct AdaptiveLaguerreFilter *handle); + void wickra_adaptive_laguerre_filter_reset(struct AdaptiveLaguerreFilter *handle); void wickra_adaptive_laguerre_filter_free(struct AdaptiveLaguerreFilter *handle); @@ -1726,6 +1730,8 @@ uintptr_t wickra_adaptive_rsi_warmup_period(struct AdaptiveRsi *handle); bool wickra_adaptive_rsi_is_ready(struct AdaptiveRsi *handle); +const char *wickra_adaptive_rsi_name(struct AdaptiveRsi *handle); + void wickra_adaptive_rsi_reset(struct AdaptiveRsi *handle); void wickra_adaptive_rsi_free(struct AdaptiveRsi *handle); @@ -1740,6 +1746,8 @@ uintptr_t wickra_alma_warmup_period(struct Alma *handle); bool wickra_alma_is_ready(struct Alma *handle); +const char *wickra_alma_name(struct Alma *handle); + void wickra_alma_reset(struct Alma *handle); void wickra_alma_free(struct Alma *handle); @@ -1757,6 +1765,8 @@ uintptr_t wickra_anchored_rsi_warmup_period(struct AnchoredRsi *handle); bool wickra_anchored_rsi_is_ready(struct AnchoredRsi *handle); +const char *wickra_anchored_rsi_name(struct AnchoredRsi *handle); + void wickra_anchored_rsi_reset(struct AnchoredRsi *handle); void wickra_anchored_rsi_free(struct AnchoredRsi *handle); @@ -1771,6 +1781,8 @@ uintptr_t wickra_apo_warmup_period(struct Apo *handle); bool wickra_apo_is_ready(struct Apo *handle); +const char *wickra_apo_name(struct Apo *handle); + void wickra_apo_reset(struct Apo *handle); void wickra_apo_free(struct Apo *handle); @@ -1788,6 +1800,8 @@ uintptr_t wickra_autocorrelation_warmup_period(struct Autocorrelation *handle); bool wickra_autocorrelation_is_ready(struct Autocorrelation *handle); +const char *wickra_autocorrelation_name(struct Autocorrelation *handle); + void wickra_autocorrelation_reset(struct Autocorrelation *handle); void wickra_autocorrelation_free(struct Autocorrelation *handle); @@ -1807,6 +1821,8 @@ uintptr_t wickra_autocorrelation_periodogram_warmup_period(struct Autocorrelatio bool wickra_autocorrelation_periodogram_is_ready(struct AutocorrelationPeriodogram *handle); +const char *wickra_autocorrelation_periodogram_name(struct AutocorrelationPeriodogram *handle); + void wickra_autocorrelation_periodogram_reset(struct AutocorrelationPeriodogram *handle); void wickra_autocorrelation_periodogram_free(struct AutocorrelationPeriodogram *handle); @@ -1824,6 +1840,8 @@ uintptr_t wickra_average_drawdown_warmup_period(struct AverageDrawdown *handle); bool wickra_average_drawdown_is_ready(struct AverageDrawdown *handle); +const char *wickra_average_drawdown_name(struct AverageDrawdown *handle); + void wickra_average_drawdown_reset(struct AverageDrawdown *handle); void wickra_average_drawdown_free(struct AverageDrawdown *handle); @@ -1841,6 +1859,8 @@ uintptr_t wickra_bandpass_filter_warmup_period(struct BandpassFilter *handle); bool wickra_bandpass_filter_is_ready(struct BandpassFilter *handle); +const char *wickra_bandpass_filter_name(struct BandpassFilter *handle); + void wickra_bandpass_filter_reset(struct BandpassFilter *handle); void wickra_bandpass_filter_free(struct BandpassFilter *handle); @@ -1858,6 +1878,8 @@ uintptr_t wickra_bipower_variation_warmup_period(struct BipowerVariation *handle bool wickra_bipower_variation_is_ready(struct BipowerVariation *handle); +const char *wickra_bipower_variation_name(struct BipowerVariation *handle); + void wickra_bipower_variation_reset(struct BipowerVariation *handle); void wickra_bipower_variation_free(struct BipowerVariation *handle); @@ -1875,6 +1897,8 @@ uintptr_t wickra_bollinger_bandwidth_warmup_period(struct BollingerBandwidth *ha bool wickra_bollinger_bandwidth_is_ready(struct BollingerBandwidth *handle); +const char *wickra_bollinger_bandwidth_name(struct BollingerBandwidth *handle); + void wickra_bollinger_bandwidth_reset(struct BollingerBandwidth *handle); void wickra_bollinger_bandwidth_free(struct BollingerBandwidth *handle); @@ -1892,6 +1916,8 @@ uintptr_t wickra_burke_ratio_warmup_period(struct BurkeRatio *handle); bool wickra_burke_ratio_is_ready(struct BurkeRatio *handle); +const char *wickra_burke_ratio_name(struct BurkeRatio *handle); + void wickra_burke_ratio_reset(struct BurkeRatio *handle); void wickra_burke_ratio_free(struct BurkeRatio *handle); @@ -1909,6 +1935,8 @@ uintptr_t wickra_calmar_ratio_warmup_period(struct CalmarRatio *handle); bool wickra_calmar_ratio_is_ready(struct CalmarRatio *handle); +const char *wickra_calmar_ratio_name(struct CalmarRatio *handle); + void wickra_calmar_ratio_reset(struct CalmarRatio *handle); void wickra_calmar_ratio_free(struct CalmarRatio *handle); @@ -1926,6 +1954,8 @@ uintptr_t wickra_center_of_gravity_warmup_period(struct CenterOfGravity *handle) bool wickra_center_of_gravity_is_ready(struct CenterOfGravity *handle); +const char *wickra_center_of_gravity_name(struct CenterOfGravity *handle); + void wickra_center_of_gravity_reset(struct CenterOfGravity *handle); void wickra_center_of_gravity_free(struct CenterOfGravity *handle); @@ -1940,6 +1970,8 @@ uintptr_t wickra_cfo_warmup_period(struct Cfo *handle); bool wickra_cfo_is_ready(struct Cfo *handle); +const char *wickra_cfo_name(struct Cfo *handle); + void wickra_cfo_reset(struct Cfo *handle); void wickra_cfo_free(struct Cfo *handle); @@ -1954,6 +1986,8 @@ uintptr_t wickra_cmo_warmup_period(struct Cmo *handle); bool wickra_cmo_is_ready(struct Cmo *handle); +const char *wickra_cmo_name(struct Cmo *handle); + void wickra_cmo_reset(struct Cmo *handle); void wickra_cmo_free(struct Cmo *handle); @@ -1971,6 +2005,8 @@ uintptr_t wickra_coefficient_of_variation_warmup_period(struct CoefficientOfVari bool wickra_coefficient_of_variation_is_ready(struct CoefficientOfVariation *handle); +const char *wickra_coefficient_of_variation_name(struct CoefficientOfVariation *handle); + void wickra_coefficient_of_variation_reset(struct CoefficientOfVariation *handle); void wickra_coefficient_of_variation_free(struct CoefficientOfVariation *handle); @@ -1988,6 +2024,8 @@ uintptr_t wickra_common_sense_ratio_warmup_period(struct CommonSenseRatio *handl bool wickra_common_sense_ratio_is_ready(struct CommonSenseRatio *handle); +const char *wickra_common_sense_ratio_name(struct CommonSenseRatio *handle); + void wickra_common_sense_ratio_reset(struct CommonSenseRatio *handle); void wickra_common_sense_ratio_free(struct CommonSenseRatio *handle); @@ -2006,6 +2044,8 @@ uintptr_t wickra_conditional_value_at_risk_warmup_period(struct ConditionalValue bool wickra_conditional_value_at_risk_is_ready(struct ConditionalValueAtRisk *handle); +const char *wickra_conditional_value_at_risk_name(struct ConditionalValueAtRisk *handle); + void wickra_conditional_value_at_risk_reset(struct ConditionalValueAtRisk *handle); void wickra_conditional_value_at_risk_free(struct ConditionalValueAtRisk *handle); @@ -2025,6 +2065,8 @@ uintptr_t wickra_connors_rsi_warmup_period(struct ConnorsRsi *handle); bool wickra_connors_rsi_is_ready(struct ConnorsRsi *handle); +const char *wickra_connors_rsi_name(struct ConnorsRsi *handle); + void wickra_connors_rsi_reset(struct ConnorsRsi *handle); void wickra_connors_rsi_free(struct ConnorsRsi *handle); @@ -2041,6 +2083,8 @@ uintptr_t wickra_coppock_warmup_period(struct Coppock *handle); bool wickra_coppock_is_ready(struct Coppock *handle); +const char *wickra_coppock_name(struct Coppock *handle); + void wickra_coppock_reset(struct Coppock *handle); void wickra_coppock_free(struct Coppock *handle); @@ -2059,6 +2103,8 @@ uintptr_t wickra_correlation_trend_indicator_warmup_period(struct CorrelationTre bool wickra_correlation_trend_indicator_is_ready(struct CorrelationTrendIndicator *handle); +const char *wickra_correlation_trend_indicator_name(struct CorrelationTrendIndicator *handle); + void wickra_correlation_trend_indicator_reset(struct CorrelationTrendIndicator *handle); void wickra_correlation_trend_indicator_free(struct CorrelationTrendIndicator *handle); @@ -2076,6 +2122,8 @@ uintptr_t wickra_cybernetic_cycle_warmup_period(struct CyberneticCycle *handle); bool wickra_cybernetic_cycle_is_ready(struct CyberneticCycle *handle); +const char *wickra_cybernetic_cycle_name(struct CyberneticCycle *handle); + void wickra_cybernetic_cycle_reset(struct CyberneticCycle *handle); void wickra_cybernetic_cycle_free(struct CyberneticCycle *handle); @@ -2090,6 +2138,8 @@ uintptr_t wickra_decycler_warmup_period(struct Decycler *handle); bool wickra_decycler_is_ready(struct Decycler *handle); +const char *wickra_decycler_name(struct Decycler *handle); + void wickra_decycler_reset(struct Decycler *handle); void wickra_decycler_free(struct Decycler *handle); @@ -2107,6 +2157,8 @@ uintptr_t wickra_decycler_oscillator_warmup_period(struct DecyclerOscillator *ha bool wickra_decycler_oscillator_is_ready(struct DecyclerOscillator *handle); +const char *wickra_decycler_oscillator_name(struct DecyclerOscillator *handle); + void wickra_decycler_oscillator_reset(struct DecyclerOscillator *handle); void wickra_decycler_oscillator_free(struct DecyclerOscillator *handle); @@ -2121,6 +2173,8 @@ uintptr_t wickra_dema_warmup_period(struct Dema *handle); bool wickra_dema_is_ready(struct Dema *handle); +const char *wickra_dema_name(struct Dema *handle); + void wickra_dema_reset(struct Dema *handle); void wickra_dema_free(struct Dema *handle); @@ -2141,6 +2195,8 @@ uintptr_t wickra_derivative_oscillator_warmup_period(struct DerivativeOscillator bool wickra_derivative_oscillator_is_ready(struct DerivativeOscillator *handle); +const char *wickra_derivative_oscillator_name(struct DerivativeOscillator *handle); + void wickra_derivative_oscillator_reset(struct DerivativeOscillator *handle); void wickra_derivative_oscillator_free(struct DerivativeOscillator *handle); @@ -2158,6 +2214,8 @@ uintptr_t wickra_detrended_std_dev_warmup_period(struct DetrendedStdDev *handle) bool wickra_detrended_std_dev_is_ready(struct DetrendedStdDev *handle); +const char *wickra_detrended_std_dev_name(struct DetrendedStdDev *handle); + void wickra_detrended_std_dev_reset(struct DetrendedStdDev *handle); void wickra_detrended_std_dev_free(struct DetrendedStdDev *handle); @@ -2175,6 +2233,8 @@ uintptr_t wickra_disparity_index_warmup_period(struct DisparityIndex *handle); bool wickra_disparity_index_is_ready(struct DisparityIndex *handle); +const char *wickra_disparity_index_name(struct DisparityIndex *handle); + void wickra_disparity_index_reset(struct DisparityIndex *handle); void wickra_disparity_index_free(struct DisparityIndex *handle); @@ -2189,6 +2249,8 @@ uintptr_t wickra_dpo_warmup_period(struct Dpo *handle); bool wickra_dpo_is_ready(struct Dpo *handle); +const char *wickra_dpo_name(struct Dpo *handle); + void wickra_dpo_reset(struct Dpo *handle); void wickra_dpo_free(struct Dpo *handle); @@ -2206,6 +2268,8 @@ uintptr_t wickra_drawdown_duration_warmup_period(struct DrawdownDuration *handle bool wickra_drawdown_duration_is_ready(struct DrawdownDuration *handle); +const char *wickra_drawdown_duration_name(struct DrawdownDuration *handle); + void wickra_drawdown_duration_reset(struct DrawdownDuration *handle); void wickra_drawdown_duration_free(struct DrawdownDuration *handle); @@ -2223,6 +2287,8 @@ uintptr_t wickra_dynamic_momentum_index_warmup_period(struct DynamicMomentumInde bool wickra_dynamic_momentum_index_is_ready(struct DynamicMomentumIndex *handle); +const char *wickra_dynamic_momentum_index_name(struct DynamicMomentumIndex *handle); + void wickra_dynamic_momentum_index_reset(struct DynamicMomentumIndex *handle); void wickra_dynamic_momentum_index_free(struct DynamicMomentumIndex *handle); @@ -2240,6 +2306,8 @@ uintptr_t wickra_ehlers_stochastic_warmup_period(struct EhlersStochastic *handle bool wickra_ehlers_stochastic_is_ready(struct EhlersStochastic *handle); +const char *wickra_ehlers_stochastic_name(struct EhlersStochastic *handle); + void wickra_ehlers_stochastic_reset(struct EhlersStochastic *handle); void wickra_ehlers_stochastic_free(struct EhlersStochastic *handle); @@ -2254,6 +2322,8 @@ uintptr_t wickra_ehma_warmup_period(struct Ehma *handle); bool wickra_ehma_is_ready(struct Ehma *handle); +const char *wickra_ehma_name(struct Ehma *handle); + void wickra_ehma_reset(struct Ehma *handle); void wickra_ehma_free(struct Ehma *handle); @@ -2274,6 +2344,8 @@ uintptr_t wickra_elder_impulse_warmup_period(struct ElderImpulse *handle); bool wickra_elder_impulse_is_ready(struct ElderImpulse *handle); +const char *wickra_elder_impulse_name(struct ElderImpulse *handle); + void wickra_elder_impulse_reset(struct ElderImpulse *handle); void wickra_elder_impulse_free(struct ElderImpulse *handle); @@ -2288,6 +2360,8 @@ uintptr_t wickra_ema_warmup_period(struct Ema *handle); bool wickra_ema_is_ready(struct Ema *handle); +const char *wickra_ema_name(struct Ema *handle); + void wickra_ema_reset(struct Ema *handle); void wickra_ema_free(struct Ema *handle); @@ -2307,6 +2381,8 @@ uintptr_t wickra_empirical_mode_decomposition_warmup_period(struct EmpiricalMode bool wickra_empirical_mode_decomposition_is_ready(struct EmpiricalModeDecomposition *handle); +const char *wickra_empirical_mode_decomposition_name(struct EmpiricalModeDecomposition *handle); + void wickra_empirical_mode_decomposition_reset(struct EmpiricalModeDecomposition *handle); void wickra_empirical_mode_decomposition_free(struct EmpiricalModeDecomposition *handle); @@ -2325,6 +2401,8 @@ uintptr_t wickra_even_better_sinewave_warmup_period(struct EvenBetterSinewave *h bool wickra_even_better_sinewave_is_ready(struct EvenBetterSinewave *handle); +const char *wickra_even_better_sinewave_name(struct EvenBetterSinewave *handle); + void wickra_even_better_sinewave_reset(struct EvenBetterSinewave *handle); void wickra_even_better_sinewave_free(struct EvenBetterSinewave *handle); @@ -2342,6 +2420,8 @@ uintptr_t wickra_ewma_volatility_warmup_period(struct EwmaVolatility *handle); bool wickra_ewma_volatility_is_ready(struct EwmaVolatility *handle); +const char *wickra_ewma_volatility_name(struct EwmaVolatility *handle); + void wickra_ewma_volatility_reset(struct EwmaVolatility *handle); void wickra_ewma_volatility_free(struct EwmaVolatility *handle); @@ -2359,6 +2439,8 @@ uintptr_t wickra_expectancy_warmup_period(struct Expectancy *handle); bool wickra_expectancy_is_ready(struct Expectancy *handle); +const char *wickra_expectancy_name(struct Expectancy *handle); + void wickra_expectancy_reset(struct Expectancy *handle); void wickra_expectancy_free(struct Expectancy *handle); @@ -2373,6 +2455,8 @@ uintptr_t wickra_fama_warmup_period(struct Fama *handle); bool wickra_fama_is_ready(struct Fama *handle); +const char *wickra_fama_name(struct Fama *handle); + void wickra_fama_reset(struct Fama *handle); void wickra_fama_free(struct Fama *handle); @@ -2390,6 +2474,8 @@ uintptr_t wickra_fisher_rsi_warmup_period(struct FisherRsi *handle); bool wickra_fisher_rsi_is_ready(struct FisherRsi *handle); +const char *wickra_fisher_rsi_name(struct FisherRsi *handle); + void wickra_fisher_rsi_reset(struct FisherRsi *handle); void wickra_fisher_rsi_free(struct FisherRsi *handle); @@ -2407,6 +2493,8 @@ uintptr_t wickra_fisher_transform_warmup_period(struct FisherTransform *handle); bool wickra_fisher_transform_is_ready(struct FisherTransform *handle); +const char *wickra_fisher_transform_name(struct FisherTransform *handle); + void wickra_fisher_transform_reset(struct FisherTransform *handle); void wickra_fisher_transform_free(struct FisherTransform *handle); @@ -2421,6 +2509,8 @@ uintptr_t wickra_frama_warmup_period(struct Frama *handle); bool wickra_frama_is_ready(struct Frama *handle); +const char *wickra_frama_name(struct Frama *handle); + void wickra_frama_reset(struct Frama *handle); void wickra_frama_free(struct Frama *handle); @@ -2438,6 +2528,8 @@ uintptr_t wickra_gain_loss_ratio_warmup_period(struct GainLossRatio *handle); bool wickra_gain_loss_ratio_is_ready(struct GainLossRatio *handle); +const char *wickra_gain_loss_ratio_name(struct GainLossRatio *handle); + void wickra_gain_loss_ratio_reset(struct GainLossRatio *handle); void wickra_gain_loss_ratio_free(struct GainLossRatio *handle); @@ -2455,6 +2547,8 @@ uintptr_t wickra_gain_to_pain_ratio_warmup_period(struct GainToPainRatio *handle bool wickra_gain_to_pain_ratio_is_ready(struct GainToPainRatio *handle); +const char *wickra_gain_to_pain_ratio_name(struct GainToPainRatio *handle); + void wickra_gain_to_pain_ratio_reset(struct GainToPainRatio *handle); void wickra_gain_to_pain_ratio_free(struct GainToPainRatio *handle); @@ -2469,6 +2563,8 @@ uintptr_t wickra_garch11_warmup_period(struct Garch11 *handle); bool wickra_garch11_is_ready(struct Garch11 *handle); +const char *wickra_garch11_name(struct Garch11 *handle); + void wickra_garch11_reset(struct Garch11 *handle); void wickra_garch11_free(struct Garch11 *handle); @@ -2486,6 +2582,8 @@ uintptr_t wickra_generalized_dema_warmup_period(struct GeneralizedDema *handle); bool wickra_generalized_dema_is_ready(struct GeneralizedDema *handle); +const char *wickra_generalized_dema_name(struct GeneralizedDema *handle); + void wickra_generalized_dema_reset(struct GeneralizedDema *handle); void wickra_generalized_dema_free(struct GeneralizedDema *handle); @@ -2503,6 +2601,8 @@ uintptr_t wickra_geometric_ma_warmup_period(struct GeometricMa *handle); bool wickra_geometric_ma_is_ready(struct GeometricMa *handle); +const char *wickra_geometric_ma_name(struct GeometricMa *handle); + void wickra_geometric_ma_reset(struct GeometricMa *handle); void wickra_geometric_ma_free(struct GeometricMa *handle); @@ -2520,6 +2620,8 @@ uintptr_t wickra_highpass_filter_warmup_period(struct HighpassFilter *handle); bool wickra_highpass_filter_is_ready(struct HighpassFilter *handle); +const char *wickra_highpass_filter_name(struct HighpassFilter *handle); + void wickra_highpass_filter_reset(struct HighpassFilter *handle); void wickra_highpass_filter_free(struct HighpassFilter *handle); @@ -2537,6 +2639,8 @@ uintptr_t wickra_hilbert_dominant_cycle_warmup_period(struct HilbertDominantCycl bool wickra_hilbert_dominant_cycle_is_ready(struct HilbertDominantCycle *handle); +const char *wickra_hilbert_dominant_cycle_name(struct HilbertDominantCycle *handle); + void wickra_hilbert_dominant_cycle_reset(struct HilbertDominantCycle *handle); void wickra_hilbert_dominant_cycle_free(struct HilbertDominantCycle *handle); @@ -2555,6 +2659,8 @@ uintptr_t wickra_historical_volatility_warmup_period(struct HistoricalVolatility bool wickra_historical_volatility_is_ready(struct HistoricalVolatility *handle); +const char *wickra_historical_volatility_name(struct HistoricalVolatility *handle); + void wickra_historical_volatility_reset(struct HistoricalVolatility *handle); void wickra_historical_volatility_free(struct HistoricalVolatility *handle); @@ -2569,6 +2675,8 @@ uintptr_t wickra_hma_warmup_period(struct Hma *handle); bool wickra_hma_is_ready(struct Hma *handle); +const char *wickra_hma_name(struct Hma *handle); + void wickra_hma_reset(struct Hma *handle); void wickra_hma_free(struct Hma *handle); @@ -2586,6 +2694,8 @@ uintptr_t wickra_holt_winters_warmup_period(struct HoltWinters *handle); bool wickra_holt_winters_is_ready(struct HoltWinters *handle); +const char *wickra_holt_winters_name(struct HoltWinters *handle); + void wickra_holt_winters_reset(struct HoltWinters *handle); void wickra_holt_winters_free(struct HoltWinters *handle); @@ -2603,6 +2713,8 @@ uintptr_t wickra_ht_dc_phase_warmup_period(struct HtDcPhase *handle); bool wickra_ht_dc_phase_is_ready(struct HtDcPhase *handle); +const char *wickra_ht_dc_phase_name(struct HtDcPhase *handle); + void wickra_ht_dc_phase_reset(struct HtDcPhase *handle); void wickra_ht_dc_phase_free(struct HtDcPhase *handle); @@ -2620,6 +2732,8 @@ uintptr_t wickra_ht_trend_mode_warmup_period(struct HtTrendMode *handle); bool wickra_ht_trend_mode_is_ready(struct HtTrendMode *handle); +const char *wickra_ht_trend_mode_name(struct HtTrendMode *handle); + void wickra_ht_trend_mode_reset(struct HtTrendMode *handle); void wickra_ht_trend_mode_free(struct HtTrendMode *handle); @@ -2637,6 +2751,8 @@ uintptr_t wickra_hurst_exponent_warmup_period(struct HurstExponent *handle); bool wickra_hurst_exponent_is_ready(struct HurstExponent *handle); +const char *wickra_hurst_exponent_name(struct HurstExponent *handle); + void wickra_hurst_exponent_reset(struct HurstExponent *handle); void wickra_hurst_exponent_free(struct HurstExponent *handle); @@ -2654,6 +2770,8 @@ uintptr_t wickra_instantaneous_trendline_warmup_period(struct InstantaneousTrend bool wickra_instantaneous_trendline_is_ready(struct InstantaneousTrendline *handle); +const char *wickra_instantaneous_trendline_name(struct InstantaneousTrendline *handle); + void wickra_instantaneous_trendline_reset(struct InstantaneousTrendline *handle); void wickra_instantaneous_trendline_free(struct InstantaneousTrendline *handle); @@ -2671,6 +2789,8 @@ uintptr_t wickra_inverse_fisher_transform_warmup_period(struct InverseFisherTran bool wickra_inverse_fisher_transform_is_ready(struct InverseFisherTransform *handle); +const char *wickra_inverse_fisher_transform_name(struct InverseFisherTransform *handle); + void wickra_inverse_fisher_transform_reset(struct InverseFisherTransform *handle); void wickra_inverse_fisher_transform_free(struct InverseFisherTransform *handle); @@ -2688,6 +2808,8 @@ uintptr_t wickra_jarque_bera_warmup_period(struct JarqueBera *handle); bool wickra_jarque_bera_is_ready(struct JarqueBera *handle); +const char *wickra_jarque_bera_name(struct JarqueBera *handle); + void wickra_jarque_bera_reset(struct JarqueBera *handle); void wickra_jarque_bera_free(struct JarqueBera *handle); @@ -2702,6 +2824,8 @@ uintptr_t wickra_jma_warmup_period(struct Jma *handle); bool wickra_jma_is_ready(struct Jma *handle); +const char *wickra_jma_name(struct Jma *handle); + void wickra_jma_reset(struct Jma *handle); void wickra_jma_free(struct Jma *handle); @@ -2719,6 +2843,8 @@ uintptr_t wickra_jump_indicator_warmup_period(struct JumpIndicator *handle); bool wickra_jump_indicator_is_ready(struct JumpIndicator *handle); +const char *wickra_jump_indicator_name(struct JumpIndicator *handle); + void wickra_jump_indicator_reset(struct JumpIndicator *handle); void wickra_jump_indicator_free(struct JumpIndicator *handle); @@ -2733,6 +2859,8 @@ uintptr_t wickra_k_ratio_warmup_period(struct KRatio *handle); bool wickra_k_ratio_is_ready(struct KRatio *handle); +const char *wickra_k_ratio_name(struct KRatio *handle); + void wickra_k_ratio_reset(struct KRatio *handle); void wickra_k_ratio_free(struct KRatio *handle); @@ -2747,6 +2875,8 @@ uintptr_t wickra_kama_warmup_period(struct Kama *handle); bool wickra_kama_is_ready(struct Kama *handle); +const char *wickra_kama_name(struct Kama *handle); + void wickra_kama_reset(struct Kama *handle); void wickra_kama_free(struct Kama *handle); @@ -2764,6 +2894,8 @@ uintptr_t wickra_kelly_criterion_warmup_period(struct KellyCriterion *handle); bool wickra_kelly_criterion_is_ready(struct KellyCriterion *handle); +const char *wickra_kelly_criterion_name(struct KellyCriterion *handle); + void wickra_kelly_criterion_reset(struct KellyCriterion *handle); void wickra_kelly_criterion_free(struct KellyCriterion *handle); @@ -2778,6 +2910,8 @@ uintptr_t wickra_kurtosis_warmup_period(struct Kurtosis *handle); bool wickra_kurtosis_is_ready(struct Kurtosis *handle); +const char *wickra_kurtosis_name(struct Kurtosis *handle); + void wickra_kurtosis_reset(struct Kurtosis *handle); void wickra_kurtosis_free(struct Kurtosis *handle); @@ -2795,6 +2929,8 @@ uintptr_t wickra_laguerre_rsi_warmup_period(struct LaguerreRsi *handle); bool wickra_laguerre_rsi_is_ready(struct LaguerreRsi *handle); +const char *wickra_laguerre_rsi_name(struct LaguerreRsi *handle); + void wickra_laguerre_rsi_reset(struct LaguerreRsi *handle); void wickra_laguerre_rsi_free(struct LaguerreRsi *handle); @@ -2812,6 +2948,8 @@ uintptr_t wickra_linear_regression_warmup_period(struct LinearRegression *handle bool wickra_linear_regression_is_ready(struct LinearRegression *handle); +const char *wickra_linear_regression_name(struct LinearRegression *handle); + void wickra_linear_regression_reset(struct LinearRegression *handle); void wickra_linear_regression_free(struct LinearRegression *handle); @@ -2829,6 +2967,8 @@ uintptr_t wickra_lin_reg_angle_warmup_period(struct LinRegAngle *handle); bool wickra_lin_reg_angle_is_ready(struct LinRegAngle *handle); +const char *wickra_lin_reg_angle_name(struct LinRegAngle *handle); + void wickra_lin_reg_angle_reset(struct LinRegAngle *handle); void wickra_lin_reg_angle_free(struct LinRegAngle *handle); @@ -2846,6 +2986,8 @@ uintptr_t wickra_lin_reg_intercept_warmup_period(struct LinRegIntercept *handle) bool wickra_lin_reg_intercept_is_ready(struct LinRegIntercept *handle); +const char *wickra_lin_reg_intercept_name(struct LinRegIntercept *handle); + void wickra_lin_reg_intercept_reset(struct LinRegIntercept *handle); void wickra_lin_reg_intercept_free(struct LinRegIntercept *handle); @@ -2863,6 +3005,8 @@ uintptr_t wickra_lin_reg_slope_warmup_period(struct LinRegSlope *handle); bool wickra_lin_reg_slope_is_ready(struct LinRegSlope *handle); +const char *wickra_lin_reg_slope_name(struct LinRegSlope *handle); + void wickra_lin_reg_slope_reset(struct LinRegSlope *handle); void wickra_lin_reg_slope_free(struct LinRegSlope *handle); @@ -2880,6 +3024,8 @@ uintptr_t wickra_log_return_warmup_period(struct LogReturn *handle); bool wickra_log_return_is_ready(struct LogReturn *handle); +const char *wickra_log_return_name(struct LogReturn *handle); + void wickra_log_return_reset(struct LogReturn *handle); void wickra_log_return_free(struct LogReturn *handle); @@ -2899,6 +3045,8 @@ uintptr_t wickra_m2_measure_warmup_period(struct M2Measure *handle); bool wickra_m2_measure_is_ready(struct M2Measure *handle); +const char *wickra_m2_measure_name(struct M2Measure *handle); + void wickra_m2_measure_reset(struct M2Measure *handle); void wickra_m2_measure_free(struct M2Measure *handle); @@ -2916,6 +3064,8 @@ uintptr_t wickra_macd_histogram_warmup_period(struct MacdHistogram *handle); bool wickra_macd_histogram_is_ready(struct MacdHistogram *handle); +const char *wickra_macd_histogram_name(struct MacdHistogram *handle); + void wickra_macd_histogram_reset(struct MacdHistogram *handle); void wickra_macd_histogram_free(struct MacdHistogram *handle); @@ -2933,6 +3083,8 @@ uintptr_t wickra_martin_ratio_warmup_period(struct MartinRatio *handle); bool wickra_martin_ratio_is_ready(struct MartinRatio *handle); +const char *wickra_martin_ratio_name(struct MartinRatio *handle); + void wickra_martin_ratio_reset(struct MartinRatio *handle); void wickra_martin_ratio_free(struct MartinRatio *handle); @@ -2950,6 +3102,8 @@ uintptr_t wickra_max_drawdown_warmup_period(struct MaxDrawdown *handle); bool wickra_max_drawdown_is_ready(struct MaxDrawdown *handle); +const char *wickra_max_drawdown_name(struct MaxDrawdown *handle); + void wickra_max_drawdown_reset(struct MaxDrawdown *handle); void wickra_max_drawdown_free(struct MaxDrawdown *handle); @@ -2967,6 +3121,8 @@ uintptr_t wickra_mc_ginley_dynamic_warmup_period(struct McGinleyDynamic *handle) bool wickra_mc_ginley_dynamic_is_ready(struct McGinleyDynamic *handle); +const char *wickra_mc_ginley_dynamic_name(struct McGinleyDynamic *handle); + void wickra_mc_ginley_dynamic_reset(struct McGinleyDynamic *handle); void wickra_mc_ginley_dynamic_free(struct McGinleyDynamic *handle); @@ -2985,6 +3141,8 @@ uintptr_t wickra_median_absolute_deviation_warmup_period(struct MedianAbsoluteDe bool wickra_median_absolute_deviation_is_ready(struct MedianAbsoluteDeviation *handle); +const char *wickra_median_absolute_deviation_name(struct MedianAbsoluteDeviation *handle); + void wickra_median_absolute_deviation_reset(struct MedianAbsoluteDeviation *handle); void wickra_median_absolute_deviation_free(struct MedianAbsoluteDeviation *handle); @@ -2999,6 +3157,8 @@ uintptr_t wickra_median_ma_warmup_period(struct MedianMa *handle); bool wickra_median_ma_is_ready(struct MedianMa *handle); +const char *wickra_median_ma_name(struct MedianMa *handle); + void wickra_median_ma_reset(struct MedianMa *handle); void wickra_median_ma_free(struct MedianMa *handle); @@ -3013,6 +3173,8 @@ uintptr_t wickra_mid_point_warmup_period(struct MidPoint *handle); bool wickra_mid_point_is_ready(struct MidPoint *handle); +const char *wickra_mid_point_name(struct MidPoint *handle); + void wickra_mid_point_reset(struct MidPoint *handle); void wickra_mid_point_free(struct MidPoint *handle); @@ -3027,6 +3189,8 @@ uintptr_t wickra_mom_warmup_period(struct Mom *handle); bool wickra_mom_is_ready(struct Mom *handle); +const char *wickra_mom_name(struct Mom *handle); + void wickra_mom_reset(struct Mom *handle); void wickra_mom_free(struct Mom *handle); @@ -3044,6 +3208,8 @@ uintptr_t wickra_omega_ratio_warmup_period(struct OmegaRatio *handle); bool wickra_omega_ratio_is_ready(struct OmegaRatio *handle); +const char *wickra_omega_ratio_name(struct OmegaRatio *handle); + void wickra_omega_ratio_reset(struct OmegaRatio *handle); void wickra_omega_ratio_free(struct OmegaRatio *handle); @@ -3061,6 +3227,8 @@ uintptr_t wickra_pain_index_warmup_period(struct PainIndex *handle); bool wickra_pain_index_is_ready(struct PainIndex *handle); +const char *wickra_pain_index_name(struct PainIndex *handle); + void wickra_pain_index_reset(struct PainIndex *handle); void wickra_pain_index_free(struct PainIndex *handle); @@ -3075,6 +3243,8 @@ uintptr_t wickra_percent_b_warmup_period(struct PercentB *handle); bool wickra_percent_b_is_ready(struct PercentB *handle); +const char *wickra_percent_b_name(struct PercentB *handle); + void wickra_percent_b_reset(struct PercentB *handle); void wickra_percent_b_free(struct PercentB *handle); @@ -3092,6 +3262,8 @@ uintptr_t wickra_percentage_trailing_stop_warmup_period(struct PercentageTrailin bool wickra_percentage_trailing_stop_is_ready(struct PercentageTrailingStop *handle); +const char *wickra_percentage_trailing_stop_name(struct PercentageTrailingStop *handle); + void wickra_percentage_trailing_stop_reset(struct PercentageTrailingStop *handle); void wickra_percentage_trailing_stop_free(struct PercentageTrailingStop *handle); @@ -3106,6 +3278,8 @@ uintptr_t wickra_pmo_warmup_period(struct Pmo *handle); bool wickra_pmo_is_ready(struct Pmo *handle); +const char *wickra_pmo_name(struct Pmo *handle); + void wickra_pmo_reset(struct Pmo *handle); void wickra_pmo_free(struct Pmo *handle); @@ -3125,6 +3299,8 @@ uintptr_t wickra_polarized_fractal_efficiency_warmup_period(struct PolarizedFrac bool wickra_polarized_fractal_efficiency_is_ready(struct PolarizedFractalEfficiency *handle); +const char *wickra_polarized_fractal_efficiency_name(struct PolarizedFractalEfficiency *handle); + void wickra_polarized_fractal_efficiency_reset(struct PolarizedFractalEfficiency *handle); void wickra_polarized_fractal_efficiency_free(struct PolarizedFractalEfficiency *handle); @@ -3139,6 +3315,8 @@ uintptr_t wickra_ppo_warmup_period(struct Ppo *handle); bool wickra_ppo_is_ready(struct Ppo *handle); +const char *wickra_ppo_name(struct Ppo *handle); + void wickra_ppo_reset(struct Ppo *handle); void wickra_ppo_free(struct Ppo *handle); @@ -3156,6 +3334,8 @@ uintptr_t wickra_ppo_histogram_warmup_period(struct PpoHistogram *handle); bool wickra_ppo_histogram_is_ready(struct PpoHistogram *handle); +const char *wickra_ppo_histogram_name(struct PpoHistogram *handle); + void wickra_ppo_histogram_reset(struct PpoHistogram *handle); void wickra_ppo_histogram_free(struct PpoHistogram *handle); @@ -3173,6 +3353,8 @@ uintptr_t wickra_profit_factor_warmup_period(struct ProfitFactor *handle); bool wickra_profit_factor_is_ready(struct ProfitFactor *handle); +const char *wickra_profit_factor_name(struct ProfitFactor *handle); + void wickra_profit_factor_reset(struct ProfitFactor *handle); void wickra_profit_factor_free(struct ProfitFactor *handle); @@ -3187,6 +3369,8 @@ uintptr_t wickra_r_squared_warmup_period(struct RSquared *handle); bool wickra_r_squared_is_ready(struct RSquared *handle); +const char *wickra_r_squared_name(struct RSquared *handle); + void wickra_r_squared_reset(struct RSquared *handle); void wickra_r_squared_free(struct RSquared *handle); @@ -3204,6 +3388,8 @@ uintptr_t wickra_realized_volatility_warmup_period(struct RealizedVolatility *ha bool wickra_realized_volatility_is_ready(struct RealizedVolatility *handle); +const char *wickra_realized_volatility_name(struct RealizedVolatility *handle); + void wickra_realized_volatility_reset(struct RealizedVolatility *handle); void wickra_realized_volatility_free(struct RealizedVolatility *handle); @@ -3221,6 +3407,8 @@ uintptr_t wickra_recovery_factor_warmup_period(struct RecoveryFactor *handle); bool wickra_recovery_factor_is_ready(struct RecoveryFactor *handle); +const char *wickra_recovery_factor_name(struct RecoveryFactor *handle); + void wickra_recovery_factor_reset(struct RecoveryFactor *handle); void wickra_recovery_factor_free(struct RecoveryFactor *handle); @@ -3235,6 +3423,8 @@ uintptr_t wickra_reflex_warmup_period(struct Reflex *handle); bool wickra_reflex_is_ready(struct Reflex *handle); +const char *wickra_reflex_name(struct Reflex *handle); + void wickra_reflex_reset(struct Reflex *handle); void wickra_reflex_free(struct Reflex *handle); @@ -3252,6 +3442,8 @@ uintptr_t wickra_regime_label_warmup_period(struct RegimeLabel *handle); bool wickra_regime_label_is_ready(struct RegimeLabel *handle); +const char *wickra_regime_label_name(struct RegimeLabel *handle); + void wickra_regime_label_reset(struct RegimeLabel *handle); void wickra_regime_label_free(struct RegimeLabel *handle); @@ -3269,6 +3461,8 @@ uintptr_t wickra_renko_trailing_stop_warmup_period(struct RenkoTrailingStop *han bool wickra_renko_trailing_stop_is_ready(struct RenkoTrailingStop *handle); +const char *wickra_renko_trailing_stop_name(struct RenkoTrailingStop *handle); + void wickra_renko_trailing_stop_reset(struct RenkoTrailingStop *handle); void wickra_renko_trailing_stop_free(struct RenkoTrailingStop *handle); @@ -3283,6 +3477,8 @@ uintptr_t wickra_rmi_warmup_period(struct Rmi *handle); bool wickra_rmi_is_ready(struct Rmi *handle); +const char *wickra_rmi_name(struct Rmi *handle); + void wickra_rmi_reset(struct Rmi *handle); void wickra_rmi_free(struct Rmi *handle); @@ -3297,6 +3493,8 @@ uintptr_t wickra_roc_warmup_period(struct Roc *handle); bool wickra_roc_is_ready(struct Roc *handle); +const char *wickra_roc_name(struct Roc *handle); + void wickra_roc_reset(struct Roc *handle); void wickra_roc_free(struct Roc *handle); @@ -3311,6 +3509,8 @@ uintptr_t wickra_rocp_warmup_period(struct Rocp *handle); bool wickra_rocp_is_ready(struct Rocp *handle); +const char *wickra_rocp_name(struct Rocp *handle); + void wickra_rocp_reset(struct Rocp *handle); void wickra_rocp_free(struct Rocp *handle); @@ -3325,6 +3525,8 @@ uintptr_t wickra_rocr_warmup_period(struct Rocr *handle); bool wickra_rocr_is_ready(struct Rocr *handle); +const char *wickra_rocr_name(struct Rocr *handle); + void wickra_rocr_reset(struct Rocr *handle); void wickra_rocr_free(struct Rocr *handle); @@ -3339,6 +3541,8 @@ uintptr_t wickra_rocr100_warmup_period(struct Rocr100 *handle); bool wickra_rocr100_is_ready(struct Rocr100 *handle); +const char *wickra_rocr100_name(struct Rocr100 *handle); + void wickra_rocr100_reset(struct Rocr100 *handle); void wickra_rocr100_free(struct Rocr100 *handle); @@ -3356,6 +3560,8 @@ uintptr_t wickra_rolling_iqr_warmup_period(struct RollingIqr *handle); bool wickra_rolling_iqr_is_ready(struct RollingIqr *handle); +const char *wickra_rolling_iqr_name(struct RollingIqr *handle); + void wickra_rolling_iqr_reset(struct RollingIqr *handle); void wickra_rolling_iqr_free(struct RollingIqr *handle); @@ -3373,6 +3579,8 @@ uintptr_t wickra_rolling_min_max_scaler_warmup_period(struct RollingMinMaxScaler bool wickra_rolling_min_max_scaler_is_ready(struct RollingMinMaxScaler *handle); +const char *wickra_rolling_min_max_scaler_name(struct RollingMinMaxScaler *handle); + void wickra_rolling_min_max_scaler_reset(struct RollingMinMaxScaler *handle); void wickra_rolling_min_max_scaler_free(struct RollingMinMaxScaler *handle); @@ -3390,6 +3598,8 @@ uintptr_t wickra_rolling_percentile_rank_warmup_period(struct RollingPercentileR bool wickra_rolling_percentile_rank_is_ready(struct RollingPercentileRank *handle); +const char *wickra_rolling_percentile_rank_name(struct RollingPercentileRank *handle); + void wickra_rolling_percentile_rank_reset(struct RollingPercentileRank *handle); void wickra_rolling_percentile_rank_free(struct RollingPercentileRank *handle); @@ -3407,6 +3617,8 @@ uintptr_t wickra_rolling_quantile_warmup_period(struct RollingQuantile *handle); bool wickra_rolling_quantile_is_ready(struct RollingQuantile *handle); +const char *wickra_rolling_quantile_name(struct RollingQuantile *handle); + void wickra_rolling_quantile_reset(struct RollingQuantile *handle); void wickra_rolling_quantile_free(struct RollingQuantile *handle); @@ -3424,6 +3636,8 @@ uintptr_t wickra_roofing_filter_warmup_period(struct RoofingFilter *handle); bool wickra_roofing_filter_is_ready(struct RoofingFilter *handle); +const char *wickra_roofing_filter_name(struct RoofingFilter *handle); + void wickra_roofing_filter_reset(struct RoofingFilter *handle); void wickra_roofing_filter_free(struct RoofingFilter *handle); @@ -3438,6 +3652,8 @@ uintptr_t wickra_rsi_warmup_period(struct Rsi *handle); bool wickra_rsi_is_ready(struct Rsi *handle); +const char *wickra_rsi_name(struct Rsi *handle); + void wickra_rsi_reset(struct Rsi *handle); void wickra_rsi_free(struct Rsi *handle); @@ -3452,6 +3668,8 @@ uintptr_t wickra_rsx_warmup_period(struct Rsx *handle); bool wickra_rsx_is_ready(struct Rsx *handle); +const char *wickra_rsx_name(struct Rsx *handle); + void wickra_rsx_reset(struct Rsx *handle); void wickra_rsx_free(struct Rsx *handle); @@ -3469,6 +3687,8 @@ uintptr_t wickra_rvi_volatility_warmup_period(struct RviVolatility *handle); bool wickra_rvi_volatility_is_ready(struct RviVolatility *handle); +const char *wickra_rvi_volatility_name(struct RviVolatility *handle); + void wickra_rvi_volatility_reset(struct RviVolatility *handle); void wickra_rvi_volatility_free(struct RviVolatility *handle); @@ -3486,6 +3706,8 @@ uintptr_t wickra_sample_entropy_warmup_period(struct SampleEntropy *handle); bool wickra_sample_entropy_is_ready(struct SampleEntropy *handle); +const char *wickra_sample_entropy_name(struct SampleEntropy *handle); + void wickra_sample_entropy_reset(struct SampleEntropy *handle); void wickra_sample_entropy_free(struct SampleEntropy *handle); @@ -3503,6 +3725,8 @@ uintptr_t wickra_shannon_entropy_warmup_period(struct ShannonEntropy *handle); bool wickra_shannon_entropy_is_ready(struct ShannonEntropy *handle); +const char *wickra_shannon_entropy_name(struct ShannonEntropy *handle); + void wickra_shannon_entropy_reset(struct ShannonEntropy *handle); void wickra_shannon_entropy_free(struct ShannonEntropy *handle); @@ -3520,6 +3744,8 @@ uintptr_t wickra_sharpe_ratio_warmup_period(struct SharpeRatio *handle); bool wickra_sharpe_ratio_is_ready(struct SharpeRatio *handle); +const char *wickra_sharpe_ratio_name(struct SharpeRatio *handle); + void wickra_sharpe_ratio_reset(struct SharpeRatio *handle); void wickra_sharpe_ratio_free(struct SharpeRatio *handle); @@ -3534,6 +3760,8 @@ uintptr_t wickra_sine_wave_warmup_period(struct SineWave *handle); bool wickra_sine_wave_is_ready(struct SineWave *handle); +const char *wickra_sine_wave_name(struct SineWave *handle); + void wickra_sine_wave_reset(struct SineWave *handle); void wickra_sine_wave_free(struct SineWave *handle); @@ -3551,6 +3779,8 @@ uintptr_t wickra_sine_weighted_ma_warmup_period(struct SineWeightedMa *handle); bool wickra_sine_weighted_ma_is_ready(struct SineWeightedMa *handle); +const char *wickra_sine_weighted_ma_name(struct SineWeightedMa *handle); + void wickra_sine_weighted_ma_reset(struct SineWeightedMa *handle); void wickra_sine_weighted_ma_free(struct SineWeightedMa *handle); @@ -3565,6 +3795,8 @@ uintptr_t wickra_skewness_warmup_period(struct Skewness *handle); bool wickra_skewness_is_ready(struct Skewness *handle); +const char *wickra_skewness_name(struct Skewness *handle); + void wickra_skewness_reset(struct Skewness *handle); void wickra_skewness_free(struct Skewness *handle); @@ -3579,6 +3811,8 @@ uintptr_t wickra_sma_warmup_period(struct Sma *handle); bool wickra_sma_is_ready(struct Sma *handle); +const char *wickra_sma_name(struct Sma *handle); + void wickra_sma_reset(struct Sma *handle); void wickra_sma_free(struct Sma *handle); @@ -3593,6 +3827,8 @@ uintptr_t wickra_smma_warmup_period(struct Smma *handle); bool wickra_smma_is_ready(struct Smma *handle); +const char *wickra_smma_name(struct Smma *handle); + void wickra_smma_reset(struct Smma *handle); void wickra_smma_free(struct Smma *handle); @@ -3610,6 +3846,8 @@ uintptr_t wickra_sortino_ratio_warmup_period(struct SortinoRatio *handle); bool wickra_sortino_ratio_is_ready(struct SortinoRatio *handle); +const char *wickra_sortino_ratio_name(struct SortinoRatio *handle); + void wickra_sortino_ratio_reset(struct SortinoRatio *handle); void wickra_sortino_ratio_free(struct SortinoRatio *handle); @@ -3627,6 +3865,8 @@ uintptr_t wickra_standard_error_warmup_period(struct StandardError *handle); bool wickra_standard_error_is_ready(struct StandardError *handle); +const char *wickra_standard_error_name(struct StandardError *handle); + void wickra_standard_error_reset(struct StandardError *handle); void wickra_standard_error_free(struct StandardError *handle); @@ -3641,6 +3881,8 @@ uintptr_t wickra_stc_warmup_period(struct Stc *handle); bool wickra_stc_is_ready(struct Stc *handle); +const char *wickra_stc_name(struct Stc *handle); + void wickra_stc_reset(struct Stc *handle); void wickra_stc_free(struct Stc *handle); @@ -3655,6 +3897,8 @@ uintptr_t wickra_std_dev_warmup_period(struct StdDev *handle); bool wickra_std_dev_is_ready(struct StdDev *handle); +const char *wickra_std_dev_name(struct StdDev *handle); + void wickra_std_dev_reset(struct StdDev *handle); void wickra_std_dev_free(struct StdDev *handle); @@ -3672,6 +3916,8 @@ uintptr_t wickra_step_trailing_stop_warmup_period(struct StepTrailingStop *handl bool wickra_step_trailing_stop_is_ready(struct StepTrailingStop *handle); +const char *wickra_step_trailing_stop_name(struct StepTrailingStop *handle); + void wickra_step_trailing_stop_reset(struct StepTrailingStop *handle); void wickra_step_trailing_stop_free(struct StepTrailingStop *handle); @@ -3689,6 +3935,8 @@ uintptr_t wickra_sterling_ratio_warmup_period(struct SterlingRatio *handle); bool wickra_sterling_ratio_is_ready(struct SterlingRatio *handle); +const char *wickra_sterling_ratio_name(struct SterlingRatio *handle); + void wickra_sterling_ratio_reset(struct SterlingRatio *handle); void wickra_sterling_ratio_free(struct SterlingRatio *handle); @@ -3703,6 +3951,8 @@ uintptr_t wickra_stoch_rsi_warmup_period(struct StochRsi *handle); bool wickra_stoch_rsi_is_ready(struct StochRsi *handle); +const char *wickra_stoch_rsi_name(struct StochRsi *handle); + void wickra_stoch_rsi_reset(struct StochRsi *handle); void wickra_stoch_rsi_free(struct StochRsi *handle); @@ -3720,6 +3970,8 @@ uintptr_t wickra_super_smoother_warmup_period(struct SuperSmoother *handle); bool wickra_super_smoother_is_ready(struct SuperSmoother *handle); +const char *wickra_super_smoother_name(struct SuperSmoother *handle); + void wickra_super_smoother_reset(struct SuperSmoother *handle); void wickra_super_smoother_free(struct SuperSmoother *handle); @@ -3734,6 +3986,8 @@ uintptr_t wickra_t3_warmup_period(struct T3 *handle); bool wickra_t3_is_ready(struct T3 *handle); +const char *wickra_t3_name(struct T3 *handle); + void wickra_t3_reset(struct T3 *handle); void wickra_t3_free(struct T3 *handle); @@ -3751,6 +4005,8 @@ uintptr_t wickra_tail_ratio_warmup_period(struct TailRatio *handle); bool wickra_tail_ratio_is_ready(struct TailRatio *handle); +const char *wickra_tail_ratio_name(struct TailRatio *handle); + void wickra_tail_ratio_reset(struct TailRatio *handle); void wickra_tail_ratio_free(struct TailRatio *handle); @@ -3765,6 +4021,8 @@ uintptr_t wickra_tema_warmup_period(struct Tema *handle); bool wickra_tema_is_ready(struct Tema *handle); +const char *wickra_tema_name(struct Tema *handle); + void wickra_tema_reset(struct Tema *handle); void wickra_tema_free(struct Tema *handle); @@ -3779,6 +4037,8 @@ uintptr_t wickra_tii_warmup_period(struct Tii *handle); bool wickra_tii_is_ready(struct Tii *handle); +const char *wickra_tii_name(struct Tii *handle); + void wickra_tii_reset(struct Tii *handle); void wickra_tii_free(struct Tii *handle); @@ -3796,6 +4056,8 @@ uintptr_t wickra_trend_label_warmup_period(struct TrendLabel *handle); bool wickra_trend_label_is_ready(struct TrendLabel *handle); +const char *wickra_trend_label_name(struct TrendLabel *handle); + void wickra_trend_label_reset(struct TrendLabel *handle); void wickra_trend_label_free(struct TrendLabel *handle); @@ -3813,6 +4075,8 @@ uintptr_t wickra_trend_strength_index_warmup_period(struct TrendStrengthIndex *h bool wickra_trend_strength_index_is_ready(struct TrendStrengthIndex *handle); +const char *wickra_trend_strength_index_name(struct TrendStrengthIndex *handle); + void wickra_trend_strength_index_reset(struct TrendStrengthIndex *handle); void wickra_trend_strength_index_free(struct TrendStrengthIndex *handle); @@ -3830,6 +4094,8 @@ uintptr_t wickra_trendflex_warmup_period(struct Trendflex *handle); bool wickra_trendflex_is_ready(struct Trendflex *handle); +const char *wickra_trendflex_name(struct Trendflex *handle); + void wickra_trendflex_reset(struct Trendflex *handle); void wickra_trendflex_free(struct Trendflex *handle); @@ -3844,6 +4110,8 @@ uintptr_t wickra_trima_warmup_period(struct Trima *handle); bool wickra_trima_is_ready(struct Trima *handle); +const char *wickra_trima_name(struct Trima *handle); + void wickra_trima_reset(struct Trima *handle); void wickra_trima_free(struct Trima *handle); @@ -3858,6 +4126,8 @@ uintptr_t wickra_trix_warmup_period(struct Trix *handle); bool wickra_trix_is_ready(struct Trix *handle); +const char *wickra_trix_name(struct Trix *handle); + void wickra_trix_reset(struct Trix *handle); void wickra_trix_free(struct Trix *handle); @@ -3872,6 +4142,8 @@ uintptr_t wickra_tsf_warmup_period(struct Tsf *handle); bool wickra_tsf_is_ready(struct Tsf *handle); +const char *wickra_tsf_name(struct Tsf *handle); + void wickra_tsf_reset(struct Tsf *handle); void wickra_tsf_free(struct Tsf *handle); @@ -3889,6 +4161,8 @@ uintptr_t wickra_tsf_oscillator_warmup_period(struct TsfOscillator *handle); bool wickra_tsf_oscillator_is_ready(struct TsfOscillator *handle); +const char *wickra_tsf_oscillator_name(struct TsfOscillator *handle); + void wickra_tsf_oscillator_reset(struct TsfOscillator *handle); void wickra_tsf_oscillator_free(struct TsfOscillator *handle); @@ -3903,6 +4177,8 @@ uintptr_t wickra_tsi_warmup_period(struct Tsi *handle); bool wickra_tsi_is_ready(struct Tsi *handle); +const char *wickra_tsi_name(struct Tsi *handle); + void wickra_tsi_reset(struct Tsi *handle); void wickra_tsi_free(struct Tsi *handle); @@ -3920,6 +4196,8 @@ uintptr_t wickra_ulcer_index_warmup_period(struct UlcerIndex *handle); bool wickra_ulcer_index_is_ready(struct UlcerIndex *handle); +const char *wickra_ulcer_index_name(struct UlcerIndex *handle); + void wickra_ulcer_index_reset(struct UlcerIndex *handle); void wickra_ulcer_index_free(struct UlcerIndex *handle); @@ -3937,6 +4215,8 @@ uintptr_t wickra_universal_oscillator_warmup_period(struct UniversalOscillator * bool wickra_universal_oscillator_is_ready(struct UniversalOscillator *handle); +const char *wickra_universal_oscillator_name(struct UniversalOscillator *handle); + void wickra_universal_oscillator_reset(struct UniversalOscillator *handle); void wickra_universal_oscillator_free(struct UniversalOscillator *handle); @@ -3954,6 +4234,8 @@ uintptr_t wickra_upside_potential_ratio_warmup_period(struct UpsidePotentialRati bool wickra_upside_potential_ratio_is_ready(struct UpsidePotentialRatio *handle); +const char *wickra_upside_potential_ratio_name(struct UpsidePotentialRatio *handle); + void wickra_upside_potential_ratio_reset(struct UpsidePotentialRatio *handle); void wickra_upside_potential_ratio_free(struct UpsidePotentialRatio *handle); @@ -3971,6 +4253,8 @@ uintptr_t wickra_value_at_risk_warmup_period(struct ValueAtRisk *handle); bool wickra_value_at_risk_is_ready(struct ValueAtRisk *handle); +const char *wickra_value_at_risk_name(struct ValueAtRisk *handle); + void wickra_value_at_risk_reset(struct ValueAtRisk *handle); void wickra_value_at_risk_free(struct ValueAtRisk *handle); @@ -3985,6 +4269,8 @@ uintptr_t wickra_variance_warmup_period(struct Variance *handle); bool wickra_variance_is_ready(struct Variance *handle); +const char *wickra_variance_name(struct Variance *handle); + void wickra_variance_reset(struct Variance *handle); void wickra_variance_free(struct Variance *handle); @@ -4003,6 +4289,8 @@ uintptr_t wickra_vertical_horizontal_filter_warmup_period(struct VerticalHorizon bool wickra_vertical_horizontal_filter_is_ready(struct VerticalHorizontalFilter *handle); +const char *wickra_vertical_horizontal_filter_name(struct VerticalHorizontalFilter *handle); + void wickra_vertical_horizontal_filter_reset(struct VerticalHorizontalFilter *handle); void wickra_vertical_horizontal_filter_free(struct VerticalHorizontalFilter *handle); @@ -4017,6 +4305,8 @@ uintptr_t wickra_vidya_warmup_period(struct Vidya *handle); bool wickra_vidya_is_ready(struct Vidya *handle); +const char *wickra_vidya_name(struct Vidya *handle); + void wickra_vidya_reset(struct Vidya *handle); void wickra_vidya_free(struct Vidya *handle); @@ -4035,6 +4325,8 @@ uintptr_t wickra_volatility_of_volatility_warmup_period(struct VolatilityOfVolat bool wickra_volatility_of_volatility_is_ready(struct VolatilityOfVolatility *handle); +const char *wickra_volatility_of_volatility_name(struct VolatilityOfVolatility *handle); + void wickra_volatility_of_volatility_reset(struct VolatilityOfVolatility *handle); void wickra_volatility_of_volatility_free(struct VolatilityOfVolatility *handle); @@ -4049,6 +4341,8 @@ uintptr_t wickra_wave_pm_warmup_period(struct WavePm *handle); bool wickra_wave_pm_is_ready(struct WavePm *handle); +const char *wickra_wave_pm_name(struct WavePm *handle); + void wickra_wave_pm_reset(struct WavePm *handle); void wickra_wave_pm_free(struct WavePm *handle); @@ -4063,6 +4357,8 @@ uintptr_t wickra_win_rate_warmup_period(struct WinRate *handle); bool wickra_win_rate_is_ready(struct WinRate *handle); +const char *wickra_win_rate_name(struct WinRate *handle); + void wickra_win_rate_reset(struct WinRate *handle); void wickra_win_rate_free(struct WinRate *handle); @@ -4077,6 +4373,8 @@ uintptr_t wickra_wma_warmup_period(struct Wma *handle); bool wickra_wma_is_ready(struct Wma *handle); +const char *wickra_wma_name(struct Wma *handle); + void wickra_wma_reset(struct Wma *handle); void wickra_wma_free(struct Wma *handle); @@ -4091,6 +4389,8 @@ uintptr_t wickra_z_score_warmup_period(struct ZScore *handle); bool wickra_z_score_is_ready(struct ZScore *handle); +const char *wickra_z_score_name(struct ZScore *handle); + void wickra_z_score_reset(struct ZScore *handle); void wickra_z_score_free(struct ZScore *handle); @@ -4105,6 +4405,8 @@ uintptr_t wickra_zlema_warmup_period(struct Zlema *handle); bool wickra_zlema_is_ready(struct Zlema *handle); +const char *wickra_zlema_name(struct Zlema *handle); + void wickra_zlema_reset(struct Zlema *handle); void wickra_zlema_free(struct Zlema *handle); @@ -4123,6 +4425,8 @@ uintptr_t wickra_alpha_warmup_period(struct Alpha *handle); bool wickra_alpha_is_ready(struct Alpha *handle); +const char *wickra_alpha_name(struct Alpha *handle); + void wickra_alpha_reset(struct Alpha *handle); void wickra_alpha_free(struct Alpha *handle); @@ -4141,6 +4445,8 @@ uintptr_t wickra_beta_warmup_period(struct Beta *handle); bool wickra_beta_is_ready(struct Beta *handle); +const char *wickra_beta_name(struct Beta *handle); + void wickra_beta_reset(struct Beta *handle); void wickra_beta_free(struct Beta *handle); @@ -4159,6 +4465,8 @@ uintptr_t wickra_beta_neutral_spread_warmup_period(struct BetaNeutralSpread *han bool wickra_beta_neutral_spread_is_ready(struct BetaNeutralSpread *handle); +const char *wickra_beta_neutral_spread_name(struct BetaNeutralSpread *handle); + void wickra_beta_neutral_spread_reset(struct BetaNeutralSpread *handle); void wickra_beta_neutral_spread_free(struct BetaNeutralSpread *handle); @@ -4177,6 +4485,8 @@ uintptr_t wickra_distance_ssd_warmup_period(struct DistanceSsd *handle); bool wickra_distance_ssd_is_ready(struct DistanceSsd *handle); +const char *wickra_distance_ssd_name(struct DistanceSsd *handle); + void wickra_distance_ssd_reset(struct DistanceSsd *handle); void wickra_distance_ssd_free(struct DistanceSsd *handle); @@ -4195,6 +4505,8 @@ uintptr_t wickra_granger_causality_warmup_period(struct GrangerCausality *handle bool wickra_granger_causality_is_ready(struct GrangerCausality *handle); +const char *wickra_granger_causality_name(struct GrangerCausality *handle); + void wickra_granger_causality_reset(struct GrangerCausality *handle); void wickra_granger_causality_free(struct GrangerCausality *handle); @@ -4215,6 +4527,8 @@ uintptr_t wickra_hasbrouck_information_share_warmup_period(struct HasbrouckInfor bool wickra_hasbrouck_information_share_is_ready(struct HasbrouckInformationShare *handle); +const char *wickra_hasbrouck_information_share_name(struct HasbrouckInformationShare *handle); + void wickra_hasbrouck_information_share_reset(struct HasbrouckInformationShare *handle); void wickra_hasbrouck_information_share_free(struct HasbrouckInformationShare *handle); @@ -4233,6 +4547,8 @@ uintptr_t wickra_information_ratio_warmup_period(struct InformationRatio *handle bool wickra_information_ratio_is_ready(struct InformationRatio *handle); +const char *wickra_information_ratio_name(struct InformationRatio *handle); + void wickra_information_ratio_reset(struct InformationRatio *handle); void wickra_information_ratio_free(struct InformationRatio *handle); @@ -4251,6 +4567,8 @@ uintptr_t wickra_kendall_tau_warmup_period(struct KendallTau *handle); bool wickra_kendall_tau_is_ready(struct KendallTau *handle); +const char *wickra_kendall_tau_name(struct KendallTau *handle); + void wickra_kendall_tau_reset(struct KendallTau *handle); void wickra_kendall_tau_free(struct KendallTau *handle); @@ -4269,6 +4587,8 @@ uintptr_t wickra_ou_half_life_warmup_period(struct OuHalfLife *handle); bool wickra_ou_half_life_is_ready(struct OuHalfLife *handle); +const char *wickra_ou_half_life_name(struct OuHalfLife *handle); + void wickra_ou_half_life_reset(struct OuHalfLife *handle); void wickra_ou_half_life_free(struct OuHalfLife *handle); @@ -4287,6 +4607,8 @@ uintptr_t wickra_pair_spread_z_score_warmup_period(struct PairSpreadZScore *hand bool wickra_pair_spread_z_score_is_ready(struct PairSpreadZScore *handle); +const char *wickra_pair_spread_z_score_name(struct PairSpreadZScore *handle); + void wickra_pair_spread_z_score_reset(struct PairSpreadZScore *handle); void wickra_pair_spread_z_score_free(struct PairSpreadZScore *handle); @@ -4305,6 +4627,8 @@ uintptr_t wickra_pairwise_beta_warmup_period(struct PairwiseBeta *handle); bool wickra_pairwise_beta_is_ready(struct PairwiseBeta *handle); +const char *wickra_pairwise_beta_name(struct PairwiseBeta *handle); + void wickra_pairwise_beta_reset(struct PairwiseBeta *handle); void wickra_pairwise_beta_free(struct PairwiseBeta *handle); @@ -4323,6 +4647,8 @@ uintptr_t wickra_pearson_correlation_warmup_period(struct PearsonCorrelation *ha bool wickra_pearson_correlation_is_ready(struct PearsonCorrelation *handle); +const char *wickra_pearson_correlation_name(struct PearsonCorrelation *handle); + void wickra_pearson_correlation_reset(struct PearsonCorrelation *handle); void wickra_pearson_correlation_free(struct PearsonCorrelation *handle); @@ -4341,6 +4667,8 @@ uintptr_t wickra_rolling_correlation_warmup_period(struct RollingCorrelation *ha bool wickra_rolling_correlation_is_ready(struct RollingCorrelation *handle); +const char *wickra_rolling_correlation_name(struct RollingCorrelation *handle); + void wickra_rolling_correlation_reset(struct RollingCorrelation *handle); void wickra_rolling_correlation_free(struct RollingCorrelation *handle); @@ -4359,6 +4687,8 @@ uintptr_t wickra_rolling_covariance_warmup_period(struct RollingCovariance *hand bool wickra_rolling_covariance_is_ready(struct RollingCovariance *handle); +const char *wickra_rolling_covariance_name(struct RollingCovariance *handle); + void wickra_rolling_covariance_reset(struct RollingCovariance *handle); void wickra_rolling_covariance_free(struct RollingCovariance *handle); @@ -4377,6 +4707,8 @@ uintptr_t wickra_spearman_correlation_warmup_period(struct SpearmanCorrelation * bool wickra_spearman_correlation_is_ready(struct SpearmanCorrelation *handle); +const char *wickra_spearman_correlation_name(struct SpearmanCorrelation *handle); + void wickra_spearman_correlation_reset(struct SpearmanCorrelation *handle); void wickra_spearman_correlation_free(struct SpearmanCorrelation *handle); @@ -4397,6 +4729,8 @@ uintptr_t wickra_spread_ar1_coefficient_warmup_period(struct SpreadAr1Coefficien bool wickra_spread_ar1_coefficient_is_ready(struct SpreadAr1Coefficient *handle); +const char *wickra_spread_ar1_coefficient_name(struct SpreadAr1Coefficient *handle); + void wickra_spread_ar1_coefficient_reset(struct SpreadAr1Coefficient *handle); void wickra_spread_ar1_coefficient_free(struct SpreadAr1Coefficient *handle); @@ -4415,6 +4749,8 @@ uintptr_t wickra_spread_hurst_warmup_period(struct SpreadHurst *handle); bool wickra_spread_hurst_is_ready(struct SpreadHurst *handle); +const char *wickra_spread_hurst_name(struct SpreadHurst *handle); + void wickra_spread_hurst_reset(struct SpreadHurst *handle); void wickra_spread_hurst_free(struct SpreadHurst *handle); @@ -4433,6 +4769,8 @@ uintptr_t wickra_treynor_ratio_warmup_period(struct TreynorRatio *handle); bool wickra_treynor_ratio_is_ready(struct TreynorRatio *handle); +const char *wickra_treynor_ratio_name(struct TreynorRatio *handle); + void wickra_treynor_ratio_reset(struct TreynorRatio *handle); void wickra_treynor_ratio_free(struct TreynorRatio *handle); @@ -4451,6 +4789,8 @@ uintptr_t wickra_variance_ratio_warmup_period(struct VarianceRatio *handle); bool wickra_variance_ratio_is_ready(struct VarianceRatio *handle); +const char *wickra_variance_ratio_name(struct VarianceRatio *handle); + void wickra_variance_ratio_reset(struct VarianceRatio *handle); void wickra_variance_ratio_free(struct VarianceRatio *handle); @@ -4479,6 +4819,8 @@ uintptr_t wickra_abandoned_baby_warmup_period(struct AbandonedBaby *handle); bool wickra_abandoned_baby_is_ready(struct AbandonedBaby *handle); +const char *wickra_abandoned_baby_name(struct AbandonedBaby *handle); + void wickra_abandoned_baby_reset(struct AbandonedBaby *handle); void wickra_abandoned_baby_free(struct AbandonedBaby *handle); @@ -4507,6 +4849,8 @@ uintptr_t wickra_abcd_warmup_period(struct Abcd *handle); bool wickra_abcd_is_ready(struct Abcd *handle); +const char *wickra_abcd_name(struct Abcd *handle); + void wickra_abcd_reset(struct Abcd *handle); void wickra_abcd_free(struct Abcd *handle); @@ -4537,6 +4881,8 @@ uintptr_t wickra_accelerator_oscillator_warmup_period(struct AcceleratorOscillat bool wickra_accelerator_oscillator_is_ready(struct AcceleratorOscillator *handle); +const char *wickra_accelerator_oscillator_name(struct AcceleratorOscillator *handle); + void wickra_accelerator_oscillator_reset(struct AcceleratorOscillator *handle); void wickra_accelerator_oscillator_free(struct AcceleratorOscillator *handle); @@ -4565,6 +4911,8 @@ uintptr_t wickra_ad_oscillator_warmup_period(struct AdOscillator *handle); bool wickra_ad_oscillator_is_ready(struct AdOscillator *handle); +const char *wickra_ad_oscillator_name(struct AdOscillator *handle); + void wickra_ad_oscillator_reset(struct AdOscillator *handle); void wickra_ad_oscillator_free(struct AdOscillator *handle); @@ -4593,6 +4941,8 @@ uintptr_t wickra_adaptive_cci_warmup_period(struct AdaptiveCci *handle); bool wickra_adaptive_cci_is_ready(struct AdaptiveCci *handle); +const char *wickra_adaptive_cci_name(struct AdaptiveCci *handle); + void wickra_adaptive_cci_reset(struct AdaptiveCci *handle); void wickra_adaptive_cci_free(struct AdaptiveCci *handle); @@ -4621,6 +4971,8 @@ uintptr_t wickra_adl_warmup_period(struct Adl *handle); bool wickra_adl_is_ready(struct Adl *handle); +const char *wickra_adl_name(struct Adl *handle); + void wickra_adl_reset(struct Adl *handle); void wickra_adl_free(struct Adl *handle); @@ -4649,6 +5001,8 @@ uintptr_t wickra_advance_block_warmup_period(struct AdvanceBlock *handle); bool wickra_advance_block_is_ready(struct AdvanceBlock *handle); +const char *wickra_advance_block_name(struct AdvanceBlock *handle); + void wickra_advance_block_reset(struct AdvanceBlock *handle); void wickra_advance_block_free(struct AdvanceBlock *handle); @@ -4677,6 +5031,8 @@ uintptr_t wickra_adxr_warmup_period(struct Adxr *handle); bool wickra_adxr_is_ready(struct Adxr *handle); +const char *wickra_adxr_name(struct Adxr *handle); + void wickra_adxr_reset(struct Adxr *handle); void wickra_adxr_free(struct Adxr *handle); @@ -4705,6 +5061,8 @@ uintptr_t wickra_anchored_vwap_warmup_period(struct AnchoredVwap *handle); bool wickra_anchored_vwap_is_ready(struct AnchoredVwap *handle); +const char *wickra_anchored_vwap_name(struct AnchoredVwap *handle); + void wickra_anchored_vwap_reset(struct AnchoredVwap *handle); void wickra_anchored_vwap_free(struct AnchoredVwap *handle); @@ -4733,6 +5091,8 @@ uintptr_t wickra_aroon_oscillator_warmup_period(struct AroonOscillator *handle); bool wickra_aroon_oscillator_is_ready(struct AroonOscillator *handle); +const char *wickra_aroon_oscillator_name(struct AroonOscillator *handle); + void wickra_aroon_oscillator_reset(struct AroonOscillator *handle); void wickra_aroon_oscillator_free(struct AroonOscillator *handle); @@ -4761,6 +5121,8 @@ uintptr_t wickra_atr_warmup_period(struct Atr *handle); bool wickra_atr_is_ready(struct Atr *handle); +const char *wickra_atr_name(struct Atr *handle); + void wickra_atr_reset(struct Atr *handle); void wickra_atr_free(struct Atr *handle); @@ -4789,6 +5151,8 @@ uintptr_t wickra_atr_trailing_stop_warmup_period(struct AtrTrailingStop *handle) bool wickra_atr_trailing_stop_is_ready(struct AtrTrailingStop *handle); +const char *wickra_atr_trailing_stop_name(struct AtrTrailingStop *handle); + void wickra_atr_trailing_stop_reset(struct AtrTrailingStop *handle); void wickra_atr_trailing_stop_free(struct AtrTrailingStop *handle); @@ -4818,6 +5182,8 @@ uintptr_t wickra_average_daily_range_warmup_period(struct AverageDailyRange *han bool wickra_average_daily_range_is_ready(struct AverageDailyRange *handle); +const char *wickra_average_daily_range_name(struct AverageDailyRange *handle); + void wickra_average_daily_range_reset(struct AverageDailyRange *handle); void wickra_average_daily_range_free(struct AverageDailyRange *handle); @@ -4846,6 +5212,8 @@ uintptr_t wickra_avg_price_warmup_period(struct AvgPrice *handle); bool wickra_avg_price_is_ready(struct AvgPrice *handle); +const char *wickra_avg_price_name(struct AvgPrice *handle); + void wickra_avg_price_reset(struct AvgPrice *handle); void wickra_avg_price_free(struct AvgPrice *handle); @@ -4874,13 +5242,15 @@ uintptr_t wickra_awesome_oscillator_warmup_period(struct AwesomeOscillator *hand bool wickra_awesome_oscillator_is_ready(struct AwesomeOscillator *handle); +const char *wickra_awesome_oscillator_name(struct AwesomeOscillator *handle); + void wickra_awesome_oscillator_reset(struct AwesomeOscillator *handle); void wickra_awesome_oscillator_free(struct AwesomeOscillator *handle); struct AwesomeOscillatorHistogram *wickra_awesome_oscillator_histogram_new(uintptr_t fast, uintptr_t slow, - uintptr_t sma_period); + uintptr_t lookback); double wickra_awesome_oscillator_histogram_update(struct AwesomeOscillatorHistogram *handle, double open, @@ -4904,6 +5274,8 @@ uintptr_t wickra_awesome_oscillator_histogram_warmup_period(struct AwesomeOscill bool wickra_awesome_oscillator_histogram_is_ready(struct AwesomeOscillatorHistogram *handle); +const char *wickra_awesome_oscillator_histogram_name(struct AwesomeOscillatorHistogram *handle); + void wickra_awesome_oscillator_histogram_reset(struct AwesomeOscillatorHistogram *handle); void wickra_awesome_oscillator_histogram_free(struct AwesomeOscillatorHistogram *handle); @@ -4932,6 +5304,8 @@ uintptr_t wickra_balance_of_power_warmup_period(struct BalanceOfPower *handle); bool wickra_balance_of_power_is_ready(struct BalanceOfPower *handle); +const char *wickra_balance_of_power_name(struct BalanceOfPower *handle); + void wickra_balance_of_power_reset(struct BalanceOfPower *handle); void wickra_balance_of_power_free(struct BalanceOfPower *handle); @@ -4960,6 +5334,8 @@ uintptr_t wickra_bat_warmup_period(struct Bat *handle); bool wickra_bat_is_ready(struct Bat *handle); +const char *wickra_bat_name(struct Bat *handle); + void wickra_bat_reset(struct Bat *handle); void wickra_bat_free(struct Bat *handle); @@ -4988,6 +5364,8 @@ uintptr_t wickra_belt_hold_warmup_period(struct BeltHold *handle); bool wickra_belt_hold_is_ready(struct BeltHold *handle); +const char *wickra_belt_hold_name(struct BeltHold *handle); + void wickra_belt_hold_reset(struct BeltHold *handle); void wickra_belt_hold_free(struct BeltHold *handle); @@ -5016,6 +5394,8 @@ uintptr_t wickra_better_volume_warmup_period(struct BetterVolume *handle); bool wickra_better_volume_is_ready(struct BetterVolume *handle); +const char *wickra_better_volume_name(struct BetterVolume *handle); + void wickra_better_volume_reset(struct BetterVolume *handle); void wickra_better_volume_free(struct BetterVolume *handle); @@ -5044,6 +5424,8 @@ uintptr_t wickra_body_size_pct_warmup_period(struct BodySizePct *handle); bool wickra_body_size_pct_is_ready(struct BodySizePct *handle); +const char *wickra_body_size_pct_name(struct BodySizePct *handle); + void wickra_body_size_pct_reset(struct BodySizePct *handle); void wickra_body_size_pct_free(struct BodySizePct *handle); @@ -5072,6 +5454,8 @@ uintptr_t wickra_breakaway_warmup_period(struct Breakaway *handle); bool wickra_breakaway_is_ready(struct Breakaway *handle); +const char *wickra_breakaway_name(struct Breakaway *handle); + void wickra_breakaway_reset(struct Breakaway *handle); void wickra_breakaway_free(struct Breakaway *handle); @@ -5100,6 +5484,8 @@ uintptr_t wickra_butterfly_warmup_period(struct Butterfly *handle); bool wickra_butterfly_is_ready(struct Butterfly *handle); +const char *wickra_butterfly_name(struct Butterfly *handle); + void wickra_butterfly_reset(struct Butterfly *handle); void wickra_butterfly_free(struct Butterfly *handle); @@ -5128,6 +5514,8 @@ uintptr_t wickra_cci_warmup_period(struct Cci *handle); bool wickra_cci_is_ready(struct Cci *handle); +const char *wickra_cci_name(struct Cci *handle); + void wickra_cci_reset(struct Cci *handle); void wickra_cci_free(struct Cci *handle); @@ -5156,6 +5544,8 @@ uintptr_t wickra_chaikin_oscillator_warmup_period(struct ChaikinOscillator *hand bool wickra_chaikin_oscillator_is_ready(struct ChaikinOscillator *handle); +const char *wickra_chaikin_oscillator_name(struct ChaikinOscillator *handle); + void wickra_chaikin_oscillator_reset(struct ChaikinOscillator *handle); void wickra_chaikin_oscillator_free(struct ChaikinOscillator *handle); @@ -5184,6 +5574,8 @@ uintptr_t wickra_chaikin_volatility_warmup_period(struct ChaikinVolatility *hand bool wickra_chaikin_volatility_is_ready(struct ChaikinVolatility *handle); +const char *wickra_chaikin_volatility_name(struct ChaikinVolatility *handle); + void wickra_chaikin_volatility_reset(struct ChaikinVolatility *handle); void wickra_chaikin_volatility_free(struct ChaikinVolatility *handle); @@ -5212,6 +5604,8 @@ uintptr_t wickra_choppiness_index_warmup_period(struct ChoppinessIndex *handle); bool wickra_choppiness_index_is_ready(struct ChoppinessIndex *handle); +const char *wickra_choppiness_index_name(struct ChoppinessIndex *handle); + void wickra_choppiness_index_reset(struct ChoppinessIndex *handle); void wickra_choppiness_index_free(struct ChoppinessIndex *handle); @@ -5240,6 +5634,8 @@ uintptr_t wickra_close_vs_open_warmup_period(struct CloseVsOpen *handle); bool wickra_close_vs_open_is_ready(struct CloseVsOpen *handle); +const char *wickra_close_vs_open_name(struct CloseVsOpen *handle); + void wickra_close_vs_open_reset(struct CloseVsOpen *handle); void wickra_close_vs_open_free(struct CloseVsOpen *handle); @@ -5268,6 +5664,8 @@ uintptr_t wickra_closing_marubozu_warmup_period(struct ClosingMarubozu *handle); bool wickra_closing_marubozu_is_ready(struct ClosingMarubozu *handle); +const char *wickra_closing_marubozu_name(struct ClosingMarubozu *handle); + void wickra_closing_marubozu_reset(struct ClosingMarubozu *handle); void wickra_closing_marubozu_free(struct ClosingMarubozu *handle); @@ -5296,6 +5694,8 @@ uintptr_t wickra_chaikin_money_flow_warmup_period(struct ChaikinMoneyFlow *handl bool wickra_chaikin_money_flow_is_ready(struct ChaikinMoneyFlow *handle); +const char *wickra_chaikin_money_flow_name(struct ChaikinMoneyFlow *handle); + void wickra_chaikin_money_flow_reset(struct ChaikinMoneyFlow *handle); void wickra_chaikin_money_flow_free(struct ChaikinMoneyFlow *handle); @@ -5324,6 +5724,8 @@ uintptr_t wickra_concealing_baby_swallow_warmup_period(struct ConcealingBabySwal bool wickra_concealing_baby_swallow_is_ready(struct ConcealingBabySwallow *handle); +const char *wickra_concealing_baby_swallow_name(struct ConcealingBabySwallow *handle); + void wickra_concealing_baby_swallow_reset(struct ConcealingBabySwallow *handle); void wickra_concealing_baby_swallow_free(struct ConcealingBabySwallow *handle); @@ -5352,6 +5754,8 @@ uintptr_t wickra_counterattack_warmup_period(struct Counterattack *handle); bool wickra_counterattack_is_ready(struct Counterattack *handle); +const char *wickra_counterattack_name(struct Counterattack *handle); + void wickra_counterattack_reset(struct Counterattack *handle); void wickra_counterattack_free(struct Counterattack *handle); @@ -5380,6 +5784,8 @@ uintptr_t wickra_crab_warmup_period(struct Crab *handle); bool wickra_crab_is_ready(struct Crab *handle); +const char *wickra_crab_name(struct Crab *handle); + void wickra_crab_reset(struct Crab *handle); void wickra_crab_free(struct Crab *handle); @@ -5408,6 +5814,8 @@ uintptr_t wickra_cup_and_handle_warmup_period(struct CupAndHandle *handle); bool wickra_cup_and_handle_is_ready(struct CupAndHandle *handle); +const char *wickra_cup_and_handle_name(struct CupAndHandle *handle); + void wickra_cup_and_handle_reset(struct CupAndHandle *handle); void wickra_cup_and_handle_free(struct CupAndHandle *handle); @@ -5436,6 +5844,8 @@ uintptr_t wickra_cypher_warmup_period(struct Cypher *handle); bool wickra_cypher_is_ready(struct Cypher *handle); +const char *wickra_cypher_name(struct Cypher *handle); + void wickra_cypher_reset(struct Cypher *handle); void wickra_cypher_free(struct Cypher *handle); @@ -5464,6 +5874,8 @@ uintptr_t wickra_demand_index_warmup_period(struct DemandIndex *handle); bool wickra_demand_index_is_ready(struct DemandIndex *handle); +const char *wickra_demand_index_name(struct DemandIndex *handle); + void wickra_demand_index_reset(struct DemandIndex *handle); void wickra_demand_index_free(struct DemandIndex *handle); @@ -5492,6 +5904,8 @@ uintptr_t wickra_doji_warmup_period(struct Doji *handle); bool wickra_doji_is_ready(struct Doji *handle); +const char *wickra_doji_name(struct Doji *handle); + void wickra_doji_reset(struct Doji *handle); void wickra_doji_free(struct Doji *handle); @@ -5520,6 +5934,8 @@ uintptr_t wickra_doji_star_warmup_period(struct DojiStar *handle); bool wickra_doji_star_is_ready(struct DojiStar *handle); +const char *wickra_doji_star_name(struct DojiStar *handle); + void wickra_doji_star_reset(struct DojiStar *handle); void wickra_doji_star_free(struct DojiStar *handle); @@ -5548,6 +5964,8 @@ uintptr_t wickra_double_top_bottom_warmup_period(struct DoubleTopBottom *handle) bool wickra_double_top_bottom_is_ready(struct DoubleTopBottom *handle); +const char *wickra_double_top_bottom_name(struct DoubleTopBottom *handle); + void wickra_double_top_bottom_reset(struct DoubleTopBottom *handle); void wickra_double_top_bottom_free(struct DoubleTopBottom *handle); @@ -5576,6 +5994,8 @@ uintptr_t wickra_downside_gap_three_methods_warmup_period(struct DownsideGapThre bool wickra_downside_gap_three_methods_is_ready(struct DownsideGapThreeMethods *handle); +const char *wickra_downside_gap_three_methods_name(struct DownsideGapThreeMethods *handle); + void wickra_downside_gap_three_methods_reset(struct DownsideGapThreeMethods *handle); void wickra_downside_gap_three_methods_free(struct DownsideGapThreeMethods *handle); @@ -5604,6 +6024,8 @@ uintptr_t wickra_dragonfly_doji_warmup_period(struct DragonflyDoji *handle); bool wickra_dragonfly_doji_is_ready(struct DragonflyDoji *handle); +const char *wickra_dragonfly_doji_name(struct DragonflyDoji *handle); + void wickra_dragonfly_doji_reset(struct DragonflyDoji *handle); void wickra_dragonfly_doji_free(struct DragonflyDoji *handle); @@ -5632,6 +6054,8 @@ uintptr_t wickra_dumpling_top_warmup_period(struct DumplingTop *handle); bool wickra_dumpling_top_is_ready(struct DumplingTop *handle); +const char *wickra_dumpling_top_name(struct DumplingTop *handle); + void wickra_dumpling_top_reset(struct DumplingTop *handle); void wickra_dumpling_top_free(struct DumplingTop *handle); @@ -5660,6 +6084,8 @@ uintptr_t wickra_dx_warmup_period(struct Dx *handle); bool wickra_dx_is_ready(struct Dx *handle); +const char *wickra_dx_name(struct Dx *handle); + void wickra_dx_reset(struct Dx *handle); void wickra_dx_free(struct Dx *handle); @@ -5688,6 +6114,8 @@ uintptr_t wickra_ease_of_movement_warmup_period(struct EaseOfMovement *handle); bool wickra_ease_of_movement_is_ready(struct EaseOfMovement *handle); +const char *wickra_ease_of_movement_name(struct EaseOfMovement *handle); + void wickra_ease_of_movement_reset(struct EaseOfMovement *handle); void wickra_ease_of_movement_free(struct EaseOfMovement *handle); @@ -5716,6 +6144,8 @@ uintptr_t wickra_engulfing_warmup_period(struct Engulfing *handle); bool wickra_engulfing_is_ready(struct Engulfing *handle); +const char *wickra_engulfing_name(struct Engulfing *handle); + void wickra_engulfing_reset(struct Engulfing *handle); void wickra_engulfing_free(struct Engulfing *handle); @@ -5744,6 +6174,8 @@ uintptr_t wickra_evening_doji_star_warmup_period(struct EveningDojiStar *handle) bool wickra_evening_doji_star_is_ready(struct EveningDojiStar *handle); +const char *wickra_evening_doji_star_name(struct EveningDojiStar *handle); + void wickra_evening_doji_star_reset(struct EveningDojiStar *handle); void wickra_evening_doji_star_free(struct EveningDojiStar *handle); @@ -5772,6 +6204,8 @@ uintptr_t wickra_evwma_warmup_period(struct Evwma *handle); bool wickra_evwma_is_ready(struct Evwma *handle); +const char *wickra_evwma_name(struct Evwma *handle); + void wickra_evwma_reset(struct Evwma *handle); void wickra_evwma_free(struct Evwma *handle); @@ -5800,6 +6234,8 @@ uintptr_t wickra_falling_three_methods_warmup_period(struct FallingThreeMethods bool wickra_falling_three_methods_is_ready(struct FallingThreeMethods *handle); +const char *wickra_falling_three_methods_name(struct FallingThreeMethods *handle); + void wickra_falling_three_methods_reset(struct FallingThreeMethods *handle); void wickra_falling_three_methods_free(struct FallingThreeMethods *handle); @@ -5828,6 +6264,8 @@ uintptr_t wickra_flag_pennant_warmup_period(struct FlagPennant *handle); bool wickra_flag_pennant_is_ready(struct FlagPennant *handle); +const char *wickra_flag_pennant_name(struct FlagPennant *handle); + void wickra_flag_pennant_reset(struct FlagPennant *handle); void wickra_flag_pennant_free(struct FlagPennant *handle); @@ -5856,6 +6294,8 @@ uintptr_t wickra_force_index_warmup_period(struct ForceIndex *handle); bool wickra_force_index_is_ready(struct ForceIndex *handle); +const char *wickra_force_index_name(struct ForceIndex *handle); + void wickra_force_index_reset(struct ForceIndex *handle); void wickra_force_index_free(struct ForceIndex *handle); @@ -5884,6 +6324,8 @@ uintptr_t wickra_fry_pan_bottom_warmup_period(struct FryPanBottom *handle); bool wickra_fry_pan_bottom_is_ready(struct FryPanBottom *handle); +const char *wickra_fry_pan_bottom_name(struct FryPanBottom *handle); + void wickra_fry_pan_bottom_reset(struct FryPanBottom *handle); void wickra_fry_pan_bottom_free(struct FryPanBottom *handle); @@ -5912,6 +6354,8 @@ uintptr_t wickra_gap_side_by_side_white_warmup_period(struct GapSideBySideWhite bool wickra_gap_side_by_side_white_is_ready(struct GapSideBySideWhite *handle); +const char *wickra_gap_side_by_side_white_name(struct GapSideBySideWhite *handle); + void wickra_gap_side_by_side_white_reset(struct GapSideBySideWhite *handle); void wickra_gap_side_by_side_white_free(struct GapSideBySideWhite *handle); @@ -5941,6 +6385,8 @@ uintptr_t wickra_garman_klass_volatility_warmup_period(struct GarmanKlassVolatil bool wickra_garman_klass_volatility_is_ready(struct GarmanKlassVolatility *handle); +const char *wickra_garman_klass_volatility_name(struct GarmanKlassVolatility *handle); + void wickra_garman_klass_volatility_reset(struct GarmanKlassVolatility *handle); void wickra_garman_klass_volatility_free(struct GarmanKlassVolatility *handle); @@ -5969,6 +6415,8 @@ uintptr_t wickra_gartley_warmup_period(struct Gartley *handle); bool wickra_gartley_is_ready(struct Gartley *handle); +const char *wickra_gartley_name(struct Gartley *handle); + void wickra_gartley_reset(struct Gartley *handle); void wickra_gartley_free(struct Gartley *handle); @@ -5997,6 +6445,8 @@ uintptr_t wickra_gravestone_doji_warmup_period(struct GravestoneDoji *handle); bool wickra_gravestone_doji_is_ready(struct GravestoneDoji *handle); +const char *wickra_gravestone_doji_name(struct GravestoneDoji *handle); + void wickra_gravestone_doji_reset(struct GravestoneDoji *handle); void wickra_gravestone_doji_free(struct GravestoneDoji *handle); @@ -6025,6 +6475,8 @@ uintptr_t wickra_hammer_warmup_period(struct Hammer *handle); bool wickra_hammer_is_ready(struct Hammer *handle); +const char *wickra_hammer_name(struct Hammer *handle); + void wickra_hammer_reset(struct Hammer *handle); void wickra_hammer_free(struct Hammer *handle); @@ -6053,6 +6505,8 @@ uintptr_t wickra_hanging_man_warmup_period(struct HangingMan *handle); bool wickra_hanging_man_is_ready(struct HangingMan *handle); +const char *wickra_hanging_man_name(struct HangingMan *handle); + void wickra_hanging_man_reset(struct HangingMan *handle); void wickra_hanging_man_free(struct HangingMan *handle); @@ -6081,6 +6535,8 @@ uintptr_t wickra_harami_warmup_period(struct Harami *handle); bool wickra_harami_is_ready(struct Harami *handle); +const char *wickra_harami_name(struct Harami *handle); + void wickra_harami_reset(struct Harami *handle); void wickra_harami_free(struct Harami *handle); @@ -6109,6 +6565,8 @@ uintptr_t wickra_harami_cross_warmup_period(struct HaramiCross *handle); bool wickra_harami_cross_is_ready(struct HaramiCross *handle); +const char *wickra_harami_cross_name(struct HaramiCross *handle); + void wickra_harami_cross_reset(struct HaramiCross *handle); void wickra_harami_cross_free(struct HaramiCross *handle); @@ -6137,6 +6595,8 @@ uintptr_t wickra_head_and_shoulders_warmup_period(struct HeadAndShoulders *handl bool wickra_head_and_shoulders_is_ready(struct HeadAndShoulders *handle); +const char *wickra_head_and_shoulders_name(struct HeadAndShoulders *handle); + void wickra_head_and_shoulders_reset(struct HeadAndShoulders *handle); void wickra_head_and_shoulders_free(struct HeadAndShoulders *handle); @@ -6165,6 +6625,8 @@ uintptr_t wickra_heikin_ashi_oscillator_warmup_period(struct HeikinAshiOscillato bool wickra_heikin_ashi_oscillator_is_ready(struct HeikinAshiOscillator *handle); +const char *wickra_heikin_ashi_oscillator_name(struct HeikinAshiOscillator *handle); + void wickra_heikin_ashi_oscillator_reset(struct HeikinAshiOscillator *handle); void wickra_heikin_ashi_oscillator_free(struct HeikinAshiOscillator *handle); @@ -6193,6 +6655,8 @@ uintptr_t wickra_high_low_range_warmup_period(struct HighLowRange *handle); bool wickra_high_low_range_is_ready(struct HighLowRange *handle); +const char *wickra_high_low_range_name(struct HighLowRange *handle); + void wickra_high_low_range_reset(struct HighLowRange *handle); void wickra_high_low_range_free(struct HighLowRange *handle); @@ -6221,6 +6685,8 @@ uintptr_t wickra_high_wave_warmup_period(struct HighWave *handle); bool wickra_high_wave_is_ready(struct HighWave *handle); +const char *wickra_high_wave_name(struct HighWave *handle); + void wickra_high_wave_reset(struct HighWave *handle); void wickra_high_wave_free(struct HighWave *handle); @@ -6249,6 +6715,8 @@ uintptr_t wickra_hikkake_warmup_period(struct Hikkake *handle); bool wickra_hikkake_is_ready(struct Hikkake *handle); +const char *wickra_hikkake_name(struct Hikkake *handle); + void wickra_hikkake_reset(struct Hikkake *handle); void wickra_hikkake_free(struct Hikkake *handle); @@ -6277,6 +6745,8 @@ uintptr_t wickra_hikkake_modified_warmup_period(struct HikkakeModified *handle); bool wickra_hikkake_modified_is_ready(struct HikkakeModified *handle); +const char *wickra_hikkake_modified_name(struct HikkakeModified *handle); + void wickra_hikkake_modified_reset(struct HikkakeModified *handle); void wickra_hikkake_modified_free(struct HikkakeModified *handle); @@ -6305,6 +6775,8 @@ uintptr_t wickra_hi_lo_activator_warmup_period(struct HiLoActivator *handle); bool wickra_hi_lo_activator_is_ready(struct HiLoActivator *handle); +const char *wickra_hi_lo_activator_name(struct HiLoActivator *handle); + void wickra_hi_lo_activator_reset(struct HiLoActivator *handle); void wickra_hi_lo_activator_free(struct HiLoActivator *handle); @@ -6333,6 +6805,8 @@ uintptr_t wickra_homing_pigeon_warmup_period(struct HomingPigeon *handle); bool wickra_homing_pigeon_is_ready(struct HomingPigeon *handle); +const char *wickra_homing_pigeon_name(struct HomingPigeon *handle); + void wickra_homing_pigeon_reset(struct HomingPigeon *handle); void wickra_homing_pigeon_free(struct HomingPigeon *handle); @@ -6361,6 +6835,8 @@ uintptr_t wickra_identical_three_crows_warmup_period(struct IdenticalThreeCrows bool wickra_identical_three_crows_is_ready(struct IdenticalThreeCrows *handle); +const char *wickra_identical_three_crows_name(struct IdenticalThreeCrows *handle); + void wickra_identical_three_crows_reset(struct IdenticalThreeCrows *handle); void wickra_identical_three_crows_free(struct IdenticalThreeCrows *handle); @@ -6389,6 +6865,8 @@ uintptr_t wickra_in_neck_warmup_period(struct InNeck *handle); bool wickra_in_neck_is_ready(struct InNeck *handle); +const char *wickra_in_neck_name(struct InNeck *handle); + void wickra_in_neck_reset(struct InNeck *handle); void wickra_in_neck_free(struct InNeck *handle); @@ -6417,6 +6895,8 @@ uintptr_t wickra_inertia_warmup_period(struct Inertia *handle); bool wickra_inertia_is_ready(struct Inertia *handle); +const char *wickra_inertia_name(struct Inertia *handle); + void wickra_inertia_reset(struct Inertia *handle); void wickra_inertia_free(struct Inertia *handle); @@ -6445,6 +6925,8 @@ uintptr_t wickra_intraday_intensity_warmup_period(struct IntradayIntensity *hand bool wickra_intraday_intensity_is_ready(struct IntradayIntensity *handle); +const char *wickra_intraday_intensity_name(struct IntradayIntensity *handle); + void wickra_intraday_intensity_reset(struct IntradayIntensity *handle); void wickra_intraday_intensity_free(struct IntradayIntensity *handle); @@ -6473,6 +6955,8 @@ uintptr_t wickra_intraday_momentum_index_warmup_period(struct IntradayMomentumIn bool wickra_intraday_momentum_index_is_ready(struct IntradayMomentumIndex *handle); +const char *wickra_intraday_momentum_index_name(struct IntradayMomentumIndex *handle); + void wickra_intraday_momentum_index_reset(struct IntradayMomentumIndex *handle); void wickra_intraday_momentum_index_free(struct IntradayMomentumIndex *handle); @@ -6501,6 +6985,8 @@ uintptr_t wickra_inverted_hammer_warmup_period(struct InvertedHammer *handle); bool wickra_inverted_hammer_is_ready(struct InvertedHammer *handle); +const char *wickra_inverted_hammer_name(struct InvertedHammer *handle); + void wickra_inverted_hammer_reset(struct InvertedHammer *handle); void wickra_inverted_hammer_free(struct InvertedHammer *handle); @@ -6529,6 +7015,8 @@ uintptr_t wickra_kicking_warmup_period(struct Kicking *handle); bool wickra_kicking_is_ready(struct Kicking *handle); +const char *wickra_kicking_name(struct Kicking *handle); + void wickra_kicking_reset(struct Kicking *handle); void wickra_kicking_free(struct Kicking *handle); @@ -6557,6 +7045,8 @@ uintptr_t wickra_kicking_by_length_warmup_period(struct KickingByLength *handle) bool wickra_kicking_by_length_is_ready(struct KickingByLength *handle); +const char *wickra_kicking_by_length_name(struct KickingByLength *handle); + void wickra_kicking_by_length_reset(struct KickingByLength *handle); void wickra_kicking_by_length_free(struct KickingByLength *handle); @@ -6585,6 +7075,8 @@ uintptr_t wickra_kvo_warmup_period(struct Kvo *handle); bool wickra_kvo_is_ready(struct Kvo *handle); +const char *wickra_kvo_name(struct Kvo *handle); + void wickra_kvo_reset(struct Kvo *handle); void wickra_kvo_free(struct Kvo *handle); @@ -6613,6 +7105,8 @@ uintptr_t wickra_ladder_bottom_warmup_period(struct LadderBottom *handle); bool wickra_ladder_bottom_is_ready(struct LadderBottom *handle); +const char *wickra_ladder_bottom_name(struct LadderBottom *handle); + void wickra_ladder_bottom_reset(struct LadderBottom *handle); void wickra_ladder_bottom_free(struct LadderBottom *handle); @@ -6641,6 +7135,8 @@ uintptr_t wickra_long_legged_doji_warmup_period(struct LongLeggedDoji *handle); bool wickra_long_legged_doji_is_ready(struct LongLeggedDoji *handle); +const char *wickra_long_legged_doji_name(struct LongLeggedDoji *handle); + void wickra_long_legged_doji_reset(struct LongLeggedDoji *handle); void wickra_long_legged_doji_free(struct LongLeggedDoji *handle); @@ -6669,6 +7165,8 @@ uintptr_t wickra_long_line_warmup_period(struct LongLine *handle); bool wickra_long_line_is_ready(struct LongLine *handle); +const char *wickra_long_line_name(struct LongLine *handle); + void wickra_long_line_reset(struct LongLine *handle); void wickra_long_line_free(struct LongLine *handle); @@ -6697,6 +7195,8 @@ uintptr_t wickra_market_facilitation_index_warmup_period(struct MarketFacilitati bool wickra_market_facilitation_index_is_ready(struct MarketFacilitationIndex *handle); +const char *wickra_market_facilitation_index_name(struct MarketFacilitationIndex *handle); + void wickra_market_facilitation_index_reset(struct MarketFacilitationIndex *handle); void wickra_market_facilitation_index_free(struct MarketFacilitationIndex *handle); @@ -6725,6 +7225,8 @@ uintptr_t wickra_marubozu_warmup_period(struct Marubozu *handle); bool wickra_marubozu_is_ready(struct Marubozu *handle); +const char *wickra_marubozu_name(struct Marubozu *handle); + void wickra_marubozu_reset(struct Marubozu *handle); void wickra_marubozu_free(struct Marubozu *handle); @@ -6753,6 +7255,8 @@ uintptr_t wickra_mass_index_warmup_period(struct MassIndex *handle); bool wickra_mass_index_is_ready(struct MassIndex *handle); +const char *wickra_mass_index_name(struct MassIndex *handle); + void wickra_mass_index_reset(struct MassIndex *handle); void wickra_mass_index_free(struct MassIndex *handle); @@ -6781,6 +7285,8 @@ uintptr_t wickra_mat_hold_warmup_period(struct MatHold *handle); bool wickra_mat_hold_is_ready(struct MatHold *handle); +const char *wickra_mat_hold_name(struct MatHold *handle); + void wickra_mat_hold_reset(struct MatHold *handle); void wickra_mat_hold_free(struct MatHold *handle); @@ -6809,6 +7315,8 @@ uintptr_t wickra_matching_low_warmup_period(struct MatchingLow *handle); bool wickra_matching_low_is_ready(struct MatchingLow *handle); +const char *wickra_matching_low_name(struct MatchingLow *handle); + void wickra_matching_low_reset(struct MatchingLow *handle); void wickra_matching_low_free(struct MatchingLow *handle); @@ -6837,6 +7345,8 @@ uintptr_t wickra_median_price_warmup_period(struct MedianPrice *handle); bool wickra_median_price_is_ready(struct MedianPrice *handle); +const char *wickra_median_price_name(struct MedianPrice *handle); + void wickra_median_price_reset(struct MedianPrice *handle); void wickra_median_price_free(struct MedianPrice *handle); @@ -6865,6 +7375,8 @@ uintptr_t wickra_mfi_warmup_period(struct Mfi *handle); bool wickra_mfi_is_ready(struct Mfi *handle); +const char *wickra_mfi_name(struct Mfi *handle); + void wickra_mfi_reset(struct Mfi *handle); void wickra_mfi_free(struct Mfi *handle); @@ -6893,6 +7405,8 @@ uintptr_t wickra_mid_price_warmup_period(struct MidPrice *handle); bool wickra_mid_price_is_ready(struct MidPrice *handle); +const char *wickra_mid_price_name(struct MidPrice *handle); + void wickra_mid_price_reset(struct MidPrice *handle); void wickra_mid_price_free(struct MidPrice *handle); @@ -6921,6 +7435,8 @@ uintptr_t wickra_minus_di_warmup_period(struct MinusDi *handle); bool wickra_minus_di_is_ready(struct MinusDi *handle); +const char *wickra_minus_di_name(struct MinusDi *handle); + void wickra_minus_di_reset(struct MinusDi *handle); void wickra_minus_di_free(struct MinusDi *handle); @@ -6949,6 +7465,8 @@ uintptr_t wickra_minus_dm_warmup_period(struct MinusDm *handle); bool wickra_minus_dm_is_ready(struct MinusDm *handle); +const char *wickra_minus_dm_name(struct MinusDm *handle); + void wickra_minus_dm_reset(struct MinusDm *handle); void wickra_minus_dm_free(struct MinusDm *handle); @@ -6977,6 +7495,8 @@ uintptr_t wickra_morning_doji_star_warmup_period(struct MorningDojiStar *handle) bool wickra_morning_doji_star_is_ready(struct MorningDojiStar *handle); +const char *wickra_morning_doji_star_name(struct MorningDojiStar *handle); + void wickra_morning_doji_star_reset(struct MorningDojiStar *handle); void wickra_morning_doji_star_free(struct MorningDojiStar *handle); @@ -7005,6 +7525,8 @@ uintptr_t wickra_morning_evening_star_warmup_period(struct MorningEveningStar *h bool wickra_morning_evening_star_is_ready(struct MorningEveningStar *handle); +const char *wickra_morning_evening_star_name(struct MorningEveningStar *handle); + void wickra_morning_evening_star_reset(struct MorningEveningStar *handle); void wickra_morning_evening_star_free(struct MorningEveningStar *handle); @@ -7033,6 +7555,8 @@ uintptr_t wickra_naked_poc_warmup_period(struct NakedPoc *handle); bool wickra_naked_poc_is_ready(struct NakedPoc *handle); +const char *wickra_naked_poc_name(struct NakedPoc *handle); + void wickra_naked_poc_reset(struct NakedPoc *handle); void wickra_naked_poc_free(struct NakedPoc *handle); @@ -7061,6 +7585,8 @@ uintptr_t wickra_natr_warmup_period(struct Natr *handle); bool wickra_natr_is_ready(struct Natr *handle); +const char *wickra_natr_name(struct Natr *handle); + void wickra_natr_reset(struct Natr *handle); void wickra_natr_free(struct Natr *handle); @@ -7089,6 +7615,8 @@ uintptr_t wickra_new_price_lines_warmup_period(struct NewPriceLines *handle); bool wickra_new_price_lines_is_ready(struct NewPriceLines *handle); +const char *wickra_new_price_lines_name(struct NewPriceLines *handle); + void wickra_new_price_lines_reset(struct NewPriceLines *handle); void wickra_new_price_lines_free(struct NewPriceLines *handle); @@ -7117,6 +7645,8 @@ uintptr_t wickra_nvi_warmup_period(struct Nvi *handle); bool wickra_nvi_is_ready(struct Nvi *handle); +const char *wickra_nvi_name(struct Nvi *handle); + void wickra_nvi_reset(struct Nvi *handle); void wickra_nvi_free(struct Nvi *handle); @@ -7145,6 +7675,8 @@ uintptr_t wickra_obv_warmup_period(struct Obv *handle); bool wickra_obv_is_ready(struct Obv *handle); +const char *wickra_obv_name(struct Obv *handle); + void wickra_obv_reset(struct Obv *handle); void wickra_obv_free(struct Obv *handle); @@ -7173,6 +7705,8 @@ uintptr_t wickra_on_neck_warmup_period(struct OnNeck *handle); bool wickra_on_neck_is_ready(struct OnNeck *handle); +const char *wickra_on_neck_name(struct OnNeck *handle); + void wickra_on_neck_reset(struct OnNeck *handle); void wickra_on_neck_free(struct OnNeck *handle); @@ -7201,6 +7735,8 @@ uintptr_t wickra_opening_marubozu_warmup_period(struct OpeningMarubozu *handle); bool wickra_opening_marubozu_is_ready(struct OpeningMarubozu *handle); +const char *wickra_opening_marubozu_name(struct OpeningMarubozu *handle); + void wickra_opening_marubozu_reset(struct OpeningMarubozu *handle); void wickra_opening_marubozu_free(struct OpeningMarubozu *handle); @@ -7229,6 +7765,8 @@ uintptr_t wickra_overnight_gap_warmup_period(struct OvernightGap *handle); bool wickra_overnight_gap_is_ready(struct OvernightGap *handle); +const char *wickra_overnight_gap_name(struct OvernightGap *handle); + void wickra_overnight_gap_reset(struct OvernightGap *handle); void wickra_overnight_gap_free(struct OvernightGap *handle); @@ -7258,6 +7796,8 @@ uintptr_t wickra_parkinson_volatility_warmup_period(struct ParkinsonVolatility * bool wickra_parkinson_volatility_is_ready(struct ParkinsonVolatility *handle); +const char *wickra_parkinson_volatility_name(struct ParkinsonVolatility *handle); + void wickra_parkinson_volatility_reset(struct ParkinsonVolatility *handle); void wickra_parkinson_volatility_free(struct ParkinsonVolatility *handle); @@ -7286,6 +7826,8 @@ uintptr_t wickra_pgo_warmup_period(struct Pgo *handle); bool wickra_pgo_is_ready(struct Pgo *handle); +const char *wickra_pgo_name(struct Pgo *handle); + void wickra_pgo_reset(struct Pgo *handle); void wickra_pgo_free(struct Pgo *handle); @@ -7314,6 +7856,8 @@ uintptr_t wickra_piercing_dark_cloud_warmup_period(struct PiercingDarkCloud *han bool wickra_piercing_dark_cloud_is_ready(struct PiercingDarkCloud *handle); +const char *wickra_piercing_dark_cloud_name(struct PiercingDarkCloud *handle); + void wickra_piercing_dark_cloud_reset(struct PiercingDarkCloud *handle); void wickra_piercing_dark_cloud_free(struct PiercingDarkCloud *handle); @@ -7342,6 +7886,8 @@ uintptr_t wickra_pivot_reversal_warmup_period(struct PivotReversal *handle); bool wickra_pivot_reversal_is_ready(struct PivotReversal *handle); +const char *wickra_pivot_reversal_name(struct PivotReversal *handle); + void wickra_pivot_reversal_reset(struct PivotReversal *handle); void wickra_pivot_reversal_free(struct PivotReversal *handle); @@ -7370,6 +7916,8 @@ uintptr_t wickra_plus_di_warmup_period(struct PlusDi *handle); bool wickra_plus_di_is_ready(struct PlusDi *handle); +const char *wickra_plus_di_name(struct PlusDi *handle); + void wickra_plus_di_reset(struct PlusDi *handle); void wickra_plus_di_free(struct PlusDi *handle); @@ -7398,6 +7946,8 @@ uintptr_t wickra_plus_dm_warmup_period(struct PlusDm *handle); bool wickra_plus_dm_is_ready(struct PlusDm *handle); +const char *wickra_plus_dm_name(struct PlusDm *handle); + void wickra_plus_dm_reset(struct PlusDm *handle); void wickra_plus_dm_free(struct PlusDm *handle); @@ -7426,6 +7976,8 @@ uintptr_t wickra_profile_shape_warmup_period(struct ProfileShape *handle); bool wickra_profile_shape_is_ready(struct ProfileShape *handle); +const char *wickra_profile_shape_name(struct ProfileShape *handle); + void wickra_profile_shape_reset(struct ProfileShape *handle); void wickra_profile_shape_free(struct ProfileShape *handle); @@ -7454,6 +8006,8 @@ uintptr_t wickra_projection_oscillator_warmup_period(struct ProjectionOscillator bool wickra_projection_oscillator_is_ready(struct ProjectionOscillator *handle); +const char *wickra_projection_oscillator_name(struct ProjectionOscillator *handle); + void wickra_projection_oscillator_reset(struct ProjectionOscillator *handle); void wickra_projection_oscillator_free(struct ProjectionOscillator *handle); @@ -7482,6 +8036,8 @@ uintptr_t wickra_psar_warmup_period(struct Psar *handle); bool wickra_psar_is_ready(struct Psar *handle); +const char *wickra_psar_name(struct Psar *handle); + void wickra_psar_reset(struct Psar *handle); void wickra_psar_free(struct Psar *handle); @@ -7510,6 +8066,8 @@ uintptr_t wickra_pvi_warmup_period(struct Pvi *handle); bool wickra_pvi_is_ready(struct Pvi *handle); +const char *wickra_pvi_name(struct Pvi *handle); + void wickra_pvi_reset(struct Pvi *handle); void wickra_pvi_free(struct Pvi *handle); @@ -7538,6 +8096,8 @@ uintptr_t wickra_qstick_warmup_period(struct Qstick *handle); bool wickra_qstick_is_ready(struct Qstick *handle); +const char *wickra_qstick_name(struct Qstick *handle); + void wickra_qstick_reset(struct Qstick *handle); void wickra_qstick_free(struct Qstick *handle); @@ -7566,6 +8126,8 @@ uintptr_t wickra_rectangle_range_warmup_period(struct RectangleRange *handle); bool wickra_rectangle_range_is_ready(struct RectangleRange *handle); +const char *wickra_rectangle_range_name(struct RectangleRange *handle); + void wickra_rectangle_range_reset(struct RectangleRange *handle); void wickra_rectangle_range_free(struct RectangleRange *handle); @@ -7594,6 +8156,8 @@ uintptr_t wickra_rickshaw_man_warmup_period(struct RickshawMan *handle); bool wickra_rickshaw_man_is_ready(struct RickshawMan *handle); +const char *wickra_rickshaw_man_name(struct RickshawMan *handle); + void wickra_rickshaw_man_reset(struct RickshawMan *handle); void wickra_rickshaw_man_free(struct RickshawMan *handle); @@ -7622,6 +8186,8 @@ uintptr_t wickra_rising_three_methods_warmup_period(struct RisingThreeMethods *h bool wickra_rising_three_methods_is_ready(struct RisingThreeMethods *handle); +const char *wickra_rising_three_methods_name(struct RisingThreeMethods *handle); + void wickra_rising_three_methods_reset(struct RisingThreeMethods *handle); void wickra_rising_three_methods_free(struct RisingThreeMethods *handle); @@ -7651,6 +8217,8 @@ uintptr_t wickra_rogers_satchell_volatility_warmup_period(struct RogersSatchellV bool wickra_rogers_satchell_volatility_is_ready(struct RogersSatchellVolatility *handle); +const char *wickra_rogers_satchell_volatility_name(struct RogersSatchellVolatility *handle); + void wickra_rogers_satchell_volatility_reset(struct RogersSatchellVolatility *handle); void wickra_rogers_satchell_volatility_free(struct RogersSatchellVolatility *handle); @@ -7679,6 +8247,8 @@ uintptr_t wickra_rvi_warmup_period(struct Rvi *handle); bool wickra_rvi_is_ready(struct Rvi *handle); +const char *wickra_rvi_name(struct Rvi *handle); + void wickra_rvi_reset(struct Rvi *handle); void wickra_rvi_free(struct Rvi *handle); @@ -7714,6 +8284,8 @@ uintptr_t wickra_sar_ext_warmup_period(struct SarExt *handle); bool wickra_sar_ext_is_ready(struct SarExt *handle); +const char *wickra_sar_ext_name(struct SarExt *handle); + void wickra_sar_ext_reset(struct SarExt *handle); void wickra_sar_ext_free(struct SarExt *handle); @@ -7742,6 +8314,8 @@ uintptr_t wickra_seasonal_z_score_warmup_period(struct SeasonalZScore *handle); bool wickra_seasonal_z_score_is_ready(struct SeasonalZScore *handle); +const char *wickra_seasonal_z_score_name(struct SeasonalZScore *handle); + void wickra_seasonal_z_score_reset(struct SeasonalZScore *handle); void wickra_seasonal_z_score_free(struct SeasonalZScore *handle); @@ -7770,6 +8344,8 @@ uintptr_t wickra_separating_lines_warmup_period(struct SeparatingLines *handle); bool wickra_separating_lines_is_ready(struct SeparatingLines *handle); +const char *wickra_separating_lines_name(struct SeparatingLines *handle); + void wickra_separating_lines_reset(struct SeparatingLines *handle); void wickra_separating_lines_free(struct SeparatingLines *handle); @@ -7798,6 +8374,8 @@ uintptr_t wickra_session_vwap_warmup_period(struct SessionVwap *handle); bool wickra_session_vwap_is_ready(struct SessionVwap *handle); +const char *wickra_session_vwap_name(struct SessionVwap *handle); + void wickra_session_vwap_reset(struct SessionVwap *handle); void wickra_session_vwap_free(struct SessionVwap *handle); @@ -7826,6 +8404,8 @@ uintptr_t wickra_shark_warmup_period(struct Shark *handle); bool wickra_shark_is_ready(struct Shark *handle); +const char *wickra_shark_name(struct Shark *handle); + void wickra_shark_reset(struct Shark *handle); void wickra_shark_free(struct Shark *handle); @@ -7854,6 +8434,8 @@ uintptr_t wickra_shooting_star_warmup_period(struct ShootingStar *handle); bool wickra_shooting_star_is_ready(struct ShootingStar *handle); +const char *wickra_shooting_star_name(struct ShootingStar *handle); + void wickra_shooting_star_reset(struct ShootingStar *handle); void wickra_shooting_star_free(struct ShootingStar *handle); @@ -7882,6 +8464,8 @@ uintptr_t wickra_short_line_warmup_period(struct ShortLine *handle); bool wickra_short_line_is_ready(struct ShortLine *handle); +const char *wickra_short_line_name(struct ShortLine *handle); + void wickra_short_line_reset(struct ShortLine *handle); void wickra_short_line_free(struct ShortLine *handle); @@ -7910,6 +8494,8 @@ uintptr_t wickra_single_prints_warmup_period(struct SinglePrints *handle); bool wickra_single_prints_is_ready(struct SinglePrints *handle); +const char *wickra_single_prints_name(struct SinglePrints *handle); + void wickra_single_prints_reset(struct SinglePrints *handle); void wickra_single_prints_free(struct SinglePrints *handle); @@ -7938,6 +8524,8 @@ uintptr_t wickra_smi_warmup_period(struct Smi *handle); bool wickra_smi_is_ready(struct Smi *handle); +const char *wickra_smi_name(struct Smi *handle); + void wickra_smi_reset(struct Smi *handle); void wickra_smi_free(struct Smi *handle); @@ -7966,6 +8554,8 @@ uintptr_t wickra_spinning_top_warmup_period(struct SpinningTop *handle); bool wickra_spinning_top_is_ready(struct SpinningTop *handle); +const char *wickra_spinning_top_name(struct SpinningTop *handle); + void wickra_spinning_top_reset(struct SpinningTop *handle); void wickra_spinning_top_free(struct SpinningTop *handle); @@ -7994,6 +8584,8 @@ uintptr_t wickra_stalled_pattern_warmup_period(struct StalledPattern *handle); bool wickra_stalled_pattern_is_ready(struct StalledPattern *handle); +const char *wickra_stalled_pattern_name(struct StalledPattern *handle); + void wickra_stalled_pattern_reset(struct StalledPattern *handle); void wickra_stalled_pattern_free(struct StalledPattern *handle); @@ -8022,6 +8614,8 @@ uintptr_t wickra_stick_sandwich_warmup_period(struct StickSandwich *handle); bool wickra_stick_sandwich_is_ready(struct StickSandwich *handle); +const char *wickra_stick_sandwich_name(struct StickSandwich *handle); + void wickra_stick_sandwich_reset(struct StickSandwich *handle); void wickra_stick_sandwich_free(struct StickSandwich *handle); @@ -8050,6 +8644,8 @@ uintptr_t wickra_stochastic_cci_warmup_period(struct StochasticCci *handle); bool wickra_stochastic_cci_is_ready(struct StochasticCci *handle); +const char *wickra_stochastic_cci_name(struct StochasticCci *handle); + void wickra_stochastic_cci_reset(struct StochasticCci *handle); void wickra_stochastic_cci_free(struct StochasticCci *handle); @@ -8078,6 +8674,8 @@ uintptr_t wickra_takuri_warmup_period(struct Takuri *handle); bool wickra_takuri_is_ready(struct Takuri *handle); +const char *wickra_takuri_name(struct Takuri *handle); + void wickra_takuri_reset(struct Takuri *handle); void wickra_takuri_free(struct Takuri *handle); @@ -8106,6 +8704,8 @@ uintptr_t wickra_tasuki_gap_warmup_period(struct TasukiGap *handle); bool wickra_tasuki_gap_is_ready(struct TasukiGap *handle); +const char *wickra_tasuki_gap_name(struct TasukiGap *handle); + void wickra_tasuki_gap_reset(struct TasukiGap *handle); void wickra_tasuki_gap_free(struct TasukiGap *handle); @@ -8134,6 +8734,8 @@ uintptr_t wickra_td_camouflage_warmup_period(struct TdCamouflage *handle); bool wickra_td_camouflage_is_ready(struct TdCamouflage *handle); +const char *wickra_td_camouflage_name(struct TdCamouflage *handle); + void wickra_td_camouflage_reset(struct TdCamouflage *handle); void wickra_td_camouflage_free(struct TdCamouflage *handle); @@ -8162,6 +8764,8 @@ uintptr_t wickra_td_clop_warmup_period(struct TdClop *handle); bool wickra_td_clop_is_ready(struct TdClop *handle); +const char *wickra_td_clop_name(struct TdClop *handle); + void wickra_td_clop_reset(struct TdClop *handle); void wickra_td_clop_free(struct TdClop *handle); @@ -8190,6 +8794,8 @@ uintptr_t wickra_td_clopwin_warmup_period(struct TdClopwin *handle); bool wickra_td_clopwin_is_ready(struct TdClopwin *handle); +const char *wickra_td_clopwin_name(struct TdClopwin *handle); + void wickra_td_clopwin_reset(struct TdClopwin *handle); void wickra_td_clopwin_free(struct TdClopwin *handle); @@ -8221,6 +8827,8 @@ uintptr_t wickra_td_combo_warmup_period(struct TdCombo *handle); bool wickra_td_combo_is_ready(struct TdCombo *handle); +const char *wickra_td_combo_name(struct TdCombo *handle); + void wickra_td_combo_reset(struct TdCombo *handle); void wickra_td_combo_free(struct TdCombo *handle); @@ -8252,6 +8860,8 @@ uintptr_t wickra_td_countdown_warmup_period(struct TdCountdown *handle); bool wickra_td_countdown_is_ready(struct TdCountdown *handle); +const char *wickra_td_countdown_name(struct TdCountdown *handle); + void wickra_td_countdown_reset(struct TdCountdown *handle); void wickra_td_countdown_free(struct TdCountdown *handle); @@ -8280,6 +8890,8 @@ uintptr_t wickra_td_de_marker_warmup_period(struct TdDeMarker *handle); bool wickra_td_de_marker_is_ready(struct TdDeMarker *handle); +const char *wickra_td_de_marker_name(struct TdDeMarker *handle); + void wickra_td_de_marker_reset(struct TdDeMarker *handle); void wickra_td_de_marker_free(struct TdDeMarker *handle); @@ -8308,6 +8920,8 @@ uintptr_t wickra_td_differential_warmup_period(struct TdDifferential *handle); bool wickra_td_differential_is_ready(struct TdDifferential *handle); +const char *wickra_td_differential_name(struct TdDifferential *handle); + void wickra_td_differential_reset(struct TdDifferential *handle); void wickra_td_differential_free(struct TdDifferential *handle); @@ -8336,6 +8950,8 @@ uintptr_t wickra_td_d_wave_warmup_period(struct TdDWave *handle); bool wickra_td_d_wave_is_ready(struct TdDWave *handle); +const char *wickra_td_d_wave_name(struct TdDWave *handle); + void wickra_td_d_wave_reset(struct TdDWave *handle); void wickra_td_d_wave_free(struct TdDWave *handle); @@ -8364,6 +8980,8 @@ uintptr_t wickra_td_open_warmup_period(struct TdOpen *handle); bool wickra_td_open_is_ready(struct TdOpen *handle); +const char *wickra_td_open_name(struct TdOpen *handle); + void wickra_td_open_reset(struct TdOpen *handle); void wickra_td_open_free(struct TdOpen *handle); @@ -8392,6 +9010,8 @@ uintptr_t wickra_td_pressure_warmup_period(struct TdPressure *handle); bool wickra_td_pressure_is_ready(struct TdPressure *handle); +const char *wickra_td_pressure_name(struct TdPressure *handle); + void wickra_td_pressure_reset(struct TdPressure *handle); void wickra_td_pressure_free(struct TdPressure *handle); @@ -8420,6 +9040,8 @@ uintptr_t wickra_td_propulsion_warmup_period(struct TdPropulsion *handle); bool wickra_td_propulsion_is_ready(struct TdPropulsion *handle); +const char *wickra_td_propulsion_name(struct TdPropulsion *handle); + void wickra_td_propulsion_reset(struct TdPropulsion *handle); void wickra_td_propulsion_free(struct TdPropulsion *handle); @@ -8448,6 +9070,8 @@ uintptr_t wickra_td_rei_warmup_period(struct TdRei *handle); bool wickra_td_rei_is_ready(struct TdRei *handle); +const char *wickra_td_rei_name(struct TdRei *handle); + void wickra_td_rei_reset(struct TdRei *handle); void wickra_td_rei_free(struct TdRei *handle); @@ -8476,6 +9100,8 @@ uintptr_t wickra_td_setup_warmup_period(struct TdSetup *handle); bool wickra_td_setup_is_ready(struct TdSetup *handle); +const char *wickra_td_setup_name(struct TdSetup *handle); + void wickra_td_setup_reset(struct TdSetup *handle); void wickra_td_setup_free(struct TdSetup *handle); @@ -8504,6 +9130,8 @@ uintptr_t wickra_td_trap_warmup_period(struct TdTrap *handle); bool wickra_td_trap_is_ready(struct TdTrap *handle); +const char *wickra_td_trap_name(struct TdTrap *handle); + void wickra_td_trap_reset(struct TdTrap *handle); void wickra_td_trap_free(struct TdTrap *handle); @@ -8532,6 +9160,8 @@ uintptr_t wickra_three_drives_warmup_period(struct ThreeDrives *handle); bool wickra_three_drives_is_ready(struct ThreeDrives *handle); +const char *wickra_three_drives_name(struct ThreeDrives *handle); + void wickra_three_drives_reset(struct ThreeDrives *handle); void wickra_three_drives_free(struct ThreeDrives *handle); @@ -8560,6 +9190,8 @@ uintptr_t wickra_three_inside_warmup_period(struct ThreeInside *handle); bool wickra_three_inside_is_ready(struct ThreeInside *handle); +const char *wickra_three_inside_name(struct ThreeInside *handle); + void wickra_three_inside_reset(struct ThreeInside *handle); void wickra_three_inside_free(struct ThreeInside *handle); @@ -8588,6 +9220,8 @@ uintptr_t wickra_three_line_break_warmup_period(struct ThreeLineBreak *handle); bool wickra_three_line_break_is_ready(struct ThreeLineBreak *handle); +const char *wickra_three_line_break_name(struct ThreeLineBreak *handle); + void wickra_three_line_break_reset(struct ThreeLineBreak *handle); void wickra_three_line_break_free(struct ThreeLineBreak *handle); @@ -8616,6 +9250,8 @@ uintptr_t wickra_three_line_strike_warmup_period(struct ThreeLineStrike *handle) bool wickra_three_line_strike_is_ready(struct ThreeLineStrike *handle); +const char *wickra_three_line_strike_name(struct ThreeLineStrike *handle); + void wickra_three_line_strike_reset(struct ThreeLineStrike *handle); void wickra_three_line_strike_free(struct ThreeLineStrike *handle); @@ -8644,6 +9280,8 @@ uintptr_t wickra_three_outside_warmup_period(struct ThreeOutside *handle); bool wickra_three_outside_is_ready(struct ThreeOutside *handle); +const char *wickra_three_outside_name(struct ThreeOutside *handle); + void wickra_three_outside_reset(struct ThreeOutside *handle); void wickra_three_outside_free(struct ThreeOutside *handle); @@ -8672,6 +9310,8 @@ uintptr_t wickra_three_soldiers_or_crows_warmup_period(struct ThreeSoldiersOrCro bool wickra_three_soldiers_or_crows_is_ready(struct ThreeSoldiersOrCrows *handle); +const char *wickra_three_soldiers_or_crows_name(struct ThreeSoldiersOrCrows *handle); + void wickra_three_soldiers_or_crows_reset(struct ThreeSoldiersOrCrows *handle); void wickra_three_soldiers_or_crows_free(struct ThreeSoldiersOrCrows *handle); @@ -8700,6 +9340,8 @@ uintptr_t wickra_three_stars_in_south_warmup_period(struct ThreeStarsInSouth *ha bool wickra_three_stars_in_south_is_ready(struct ThreeStarsInSouth *handle); +const char *wickra_three_stars_in_south_name(struct ThreeStarsInSouth *handle); + void wickra_three_stars_in_south_reset(struct ThreeStarsInSouth *handle); void wickra_three_stars_in_south_free(struct ThreeStarsInSouth *handle); @@ -8728,6 +9370,8 @@ uintptr_t wickra_thrusting_warmup_period(struct Thrusting *handle); bool wickra_thrusting_is_ready(struct Thrusting *handle); +const char *wickra_thrusting_name(struct Thrusting *handle); + void wickra_thrusting_reset(struct Thrusting *handle); void wickra_thrusting_free(struct Thrusting *handle); @@ -8756,6 +9400,8 @@ uintptr_t wickra_time_based_stop_warmup_period(struct TimeBasedStop *handle); bool wickra_time_based_stop_is_ready(struct TimeBasedStop *handle); +const char *wickra_time_based_stop_name(struct TimeBasedStop *handle); + void wickra_time_based_stop_reset(struct TimeBasedStop *handle); void wickra_time_based_stop_free(struct TimeBasedStop *handle); @@ -8784,6 +9430,8 @@ uintptr_t wickra_tower_top_bottom_warmup_period(struct TowerTopBottom *handle); bool wickra_tower_top_bottom_is_ready(struct TowerTopBottom *handle); +const char *wickra_tower_top_bottom_name(struct TowerTopBottom *handle); + void wickra_tower_top_bottom_reset(struct TowerTopBottom *handle); void wickra_tower_top_bottom_free(struct TowerTopBottom *handle); @@ -8812,6 +9460,8 @@ uintptr_t wickra_trade_volume_index_warmup_period(struct TradeVolumeIndex *handl bool wickra_trade_volume_index_is_ready(struct TradeVolumeIndex *handle); +const char *wickra_trade_volume_index_name(struct TradeVolumeIndex *handle); + void wickra_trade_volume_index_reset(struct TradeVolumeIndex *handle); void wickra_trade_volume_index_free(struct TradeVolumeIndex *handle); @@ -8840,6 +9490,8 @@ uintptr_t wickra_triangle_warmup_period(struct Triangle *handle); bool wickra_triangle_is_ready(struct Triangle *handle); +const char *wickra_triangle_name(struct Triangle *handle); + void wickra_triangle_reset(struct Triangle *handle); void wickra_triangle_free(struct Triangle *handle); @@ -8868,6 +9520,8 @@ uintptr_t wickra_triple_top_bottom_warmup_period(struct TripleTopBottom *handle) bool wickra_triple_top_bottom_is_ready(struct TripleTopBottom *handle); +const char *wickra_triple_top_bottom_name(struct TripleTopBottom *handle); + void wickra_triple_top_bottom_reset(struct TripleTopBottom *handle); void wickra_triple_top_bottom_free(struct TripleTopBottom *handle); @@ -8896,6 +9550,8 @@ uintptr_t wickra_tristar_warmup_period(struct Tristar *handle); bool wickra_tristar_is_ready(struct Tristar *handle); +const char *wickra_tristar_name(struct Tristar *handle); + void wickra_tristar_reset(struct Tristar *handle); void wickra_tristar_free(struct Tristar *handle); @@ -8924,6 +9580,8 @@ uintptr_t wickra_true_range_warmup_period(struct TrueRange *handle); bool wickra_true_range_is_ready(struct TrueRange *handle); +const char *wickra_true_range_name(struct TrueRange *handle); + void wickra_true_range_reset(struct TrueRange *handle); void wickra_true_range_free(struct TrueRange *handle); @@ -8952,6 +9610,8 @@ uintptr_t wickra_tsv_warmup_period(struct Tsv *handle); bool wickra_tsv_is_ready(struct Tsv *handle); +const char *wickra_tsv_name(struct Tsv *handle); + void wickra_tsv_reset(struct Tsv *handle); void wickra_tsv_free(struct Tsv *handle); @@ -8980,6 +9640,8 @@ uintptr_t wickra_ttm_trend_warmup_period(struct TtmTrend *handle); bool wickra_ttm_trend_is_ready(struct TtmTrend *handle); +const char *wickra_ttm_trend_name(struct TtmTrend *handle); + void wickra_ttm_trend_reset(struct TtmTrend *handle); void wickra_ttm_trend_free(struct TtmTrend *handle); @@ -9010,6 +9672,8 @@ uintptr_t wickra_turn_of_month_warmup_period(struct TurnOfMonth *handle); bool wickra_turn_of_month_is_ready(struct TurnOfMonth *handle); +const char *wickra_turn_of_month_name(struct TurnOfMonth *handle); + void wickra_turn_of_month_reset(struct TurnOfMonth *handle); void wickra_turn_of_month_free(struct TurnOfMonth *handle); @@ -9038,6 +9702,8 @@ uintptr_t wickra_tweezer_warmup_period(struct Tweezer *handle); bool wickra_tweezer_is_ready(struct Tweezer *handle); +const char *wickra_tweezer_name(struct Tweezer *handle); + void wickra_tweezer_reset(struct Tweezer *handle); void wickra_tweezer_free(struct Tweezer *handle); @@ -9066,6 +9732,8 @@ uintptr_t wickra_twiggs_money_flow_warmup_period(struct TwiggsMoneyFlow *handle) bool wickra_twiggs_money_flow_is_ready(struct TwiggsMoneyFlow *handle); +const char *wickra_twiggs_money_flow_name(struct TwiggsMoneyFlow *handle); + void wickra_twiggs_money_flow_reset(struct TwiggsMoneyFlow *handle); void wickra_twiggs_money_flow_free(struct TwiggsMoneyFlow *handle); @@ -9094,6 +9762,8 @@ uintptr_t wickra_two_crows_warmup_period(struct TwoCrows *handle); bool wickra_two_crows_is_ready(struct TwoCrows *handle); +const char *wickra_two_crows_name(struct TwoCrows *handle); + void wickra_two_crows_reset(struct TwoCrows *handle); void wickra_two_crows_free(struct TwoCrows *handle); @@ -9122,6 +9792,8 @@ uintptr_t wickra_typical_price_warmup_period(struct TypicalPrice *handle); bool wickra_typical_price_is_ready(struct TypicalPrice *handle); +const char *wickra_typical_price_name(struct TypicalPrice *handle); + void wickra_typical_price_reset(struct TypicalPrice *handle); void wickra_typical_price_free(struct TypicalPrice *handle); @@ -9152,6 +9824,8 @@ uintptr_t wickra_ultimate_oscillator_warmup_period(struct UltimateOscillator *ha bool wickra_ultimate_oscillator_is_ready(struct UltimateOscillator *handle); +const char *wickra_ultimate_oscillator_name(struct UltimateOscillator *handle); + void wickra_ultimate_oscillator_reset(struct UltimateOscillator *handle); void wickra_ultimate_oscillator_free(struct UltimateOscillator *handle); @@ -9180,6 +9854,8 @@ uintptr_t wickra_unique_three_river_warmup_period(struct UniqueThreeRiver *handl bool wickra_unique_three_river_is_ready(struct UniqueThreeRiver *handle); +const char *wickra_unique_three_river_name(struct UniqueThreeRiver *handle); + void wickra_unique_three_river_reset(struct UniqueThreeRiver *handle); void wickra_unique_three_river_free(struct UniqueThreeRiver *handle); @@ -9208,6 +9884,8 @@ uintptr_t wickra_upside_gap_three_methods_warmup_period(struct UpsideGapThreeMet bool wickra_upside_gap_three_methods_is_ready(struct UpsideGapThreeMethods *handle); +const char *wickra_upside_gap_three_methods_name(struct UpsideGapThreeMethods *handle); + void wickra_upside_gap_three_methods_reset(struct UpsideGapThreeMethods *handle); void wickra_upside_gap_three_methods_free(struct UpsideGapThreeMethods *handle); @@ -9236,6 +9914,8 @@ uintptr_t wickra_upside_gap_two_crows_warmup_period(struct UpsideGapTwoCrows *ha bool wickra_upside_gap_two_crows_is_ready(struct UpsideGapTwoCrows *handle); +const char *wickra_upside_gap_two_crows_name(struct UpsideGapTwoCrows *handle); + void wickra_upside_gap_two_crows_reset(struct UpsideGapTwoCrows *handle); void wickra_upside_gap_two_crows_free(struct UpsideGapTwoCrows *handle); @@ -9264,6 +9944,8 @@ uintptr_t wickra_volatility_ratio_warmup_period(struct VolatilityRatio *handle); bool wickra_volatility_ratio_is_ready(struct VolatilityRatio *handle); +const char *wickra_volatility_ratio_name(struct VolatilityRatio *handle); + void wickra_volatility_ratio_reset(struct VolatilityRatio *handle); void wickra_volatility_ratio_free(struct VolatilityRatio *handle); @@ -9292,6 +9974,8 @@ uintptr_t wickra_volty_stop_warmup_period(struct VoltyStop *handle); bool wickra_volty_stop_is_ready(struct VoltyStop *handle); +const char *wickra_volty_stop_name(struct VoltyStop *handle); + void wickra_volty_stop_reset(struct VoltyStop *handle); void wickra_volty_stop_free(struct VoltyStop *handle); @@ -9320,6 +10004,8 @@ uintptr_t wickra_volume_oscillator_warmup_period(struct VolumeOscillator *handle bool wickra_volume_oscillator_is_ready(struct VolumeOscillator *handle); +const char *wickra_volume_oscillator_name(struct VolumeOscillator *handle); + void wickra_volume_oscillator_reset(struct VolumeOscillator *handle); void wickra_volume_oscillator_free(struct VolumeOscillator *handle); @@ -9348,6 +10034,8 @@ uintptr_t wickra_volume_rsi_warmup_period(struct VolumeRsi *handle); bool wickra_volume_rsi_is_ready(struct VolumeRsi *handle); +const char *wickra_volume_rsi_name(struct VolumeRsi *handle); + void wickra_volume_rsi_reset(struct VolumeRsi *handle); void wickra_volume_rsi_free(struct VolumeRsi *handle); @@ -9376,6 +10064,8 @@ uintptr_t wickra_volume_price_trend_warmup_period(struct VolumePriceTrend *handl bool wickra_volume_price_trend_is_ready(struct VolumePriceTrend *handle); +const char *wickra_volume_price_trend_name(struct VolumePriceTrend *handle); + void wickra_volume_price_trend_reset(struct VolumePriceTrend *handle); void wickra_volume_price_trend_free(struct VolumePriceTrend *handle); @@ -9404,6 +10094,8 @@ uintptr_t wickra_vwap_warmup_period(struct Vwap *handle); bool wickra_vwap_is_ready(struct Vwap *handle); +const char *wickra_vwap_name(struct Vwap *handle); + void wickra_vwap_reset(struct Vwap *handle); void wickra_vwap_free(struct Vwap *handle); @@ -9432,6 +10124,8 @@ uintptr_t wickra_rolling_vwap_warmup_period(struct RollingVwap *handle); bool wickra_rolling_vwap_is_ready(struct RollingVwap *handle); +const char *wickra_rolling_vwap_name(struct RollingVwap *handle); + void wickra_rolling_vwap_reset(struct RollingVwap *handle); void wickra_rolling_vwap_free(struct RollingVwap *handle); @@ -9460,6 +10154,8 @@ uintptr_t wickra_vwma_warmup_period(struct Vwma *handle); bool wickra_vwma_is_ready(struct Vwma *handle); +const char *wickra_vwma_name(struct Vwma *handle); + void wickra_vwma_reset(struct Vwma *handle); void wickra_vwma_free(struct Vwma *handle); @@ -9488,6 +10184,8 @@ uintptr_t wickra_vzo_warmup_period(struct Vzo *handle); bool wickra_vzo_is_ready(struct Vzo *handle); +const char *wickra_vzo_name(struct Vzo *handle); + void wickra_vzo_reset(struct Vzo *handle); void wickra_vzo_free(struct Vzo *handle); @@ -9516,6 +10214,8 @@ uintptr_t wickra_wad_warmup_period(struct Wad *handle); bool wickra_wad_is_ready(struct Wad *handle); +const char *wickra_wad_name(struct Wad *handle); + void wickra_wad_reset(struct Wad *handle); void wickra_wad_free(struct Wad *handle); @@ -9544,6 +10244,8 @@ uintptr_t wickra_wedge_warmup_period(struct Wedge *handle); bool wickra_wedge_is_ready(struct Wedge *handle); +const char *wickra_wedge_name(struct Wedge *handle); + void wickra_wedge_reset(struct Wedge *handle); void wickra_wedge_free(struct Wedge *handle); @@ -9572,6 +10274,8 @@ uintptr_t wickra_weighted_close_warmup_period(struct WeightedClose *handle); bool wickra_weighted_close_is_ready(struct WeightedClose *handle); +const char *wickra_weighted_close_name(struct WeightedClose *handle); + void wickra_weighted_close_reset(struct WeightedClose *handle); void wickra_weighted_close_free(struct WeightedClose *handle); @@ -9600,6 +10304,8 @@ uintptr_t wickra_wick_ratio_warmup_period(struct WickRatio *handle); bool wickra_wick_ratio_is_ready(struct WickRatio *handle); +const char *wickra_wick_ratio_name(struct WickRatio *handle); + void wickra_wick_ratio_reset(struct WickRatio *handle); void wickra_wick_ratio_free(struct WickRatio *handle); @@ -9628,6 +10334,8 @@ uintptr_t wickra_williams_r_warmup_period(struct WilliamsR *handle); bool wickra_williams_r_is_ready(struct WilliamsR *handle); +const char *wickra_williams_r_name(struct WilliamsR *handle); + void wickra_williams_r_reset(struct WilliamsR *handle); void wickra_williams_r_free(struct WilliamsR *handle); @@ -9657,6 +10365,8 @@ uintptr_t wickra_yang_zhang_volatility_warmup_period(struct YangZhangVolatility bool wickra_yang_zhang_volatility_is_ready(struct YangZhangVolatility *handle); +const char *wickra_yang_zhang_volatility_name(struct YangZhangVolatility *handle); + void wickra_yang_zhang_volatility_reset(struct YangZhangVolatility *handle); void wickra_yang_zhang_volatility_free(struct YangZhangVolatility *handle); @@ -9685,6 +10395,8 @@ uintptr_t wickra_yoyo_exit_warmup_period(struct YoyoExit *handle); bool wickra_yoyo_exit_is_ready(struct YoyoExit *handle); +const char *wickra_yoyo_exit_name(struct YoyoExit *handle); + void wickra_yoyo_exit_reset(struct YoyoExit *handle); void wickra_yoyo_exit_free(struct YoyoExit *handle); @@ -9701,6 +10413,8 @@ uintptr_t wickra_amihud_illiquidity_warmup_period(struct AmihudIlliquidity *hand bool wickra_amihud_illiquidity_is_ready(struct AmihudIlliquidity *handle); +const char *wickra_amihud_illiquidity_name(struct AmihudIlliquidity *handle); + void wickra_amihud_illiquidity_reset(struct AmihudIlliquidity *handle); void wickra_amihud_illiquidity_free(struct AmihudIlliquidity *handle); @@ -9717,6 +10431,8 @@ uintptr_t wickra_cumulative_volume_delta_warmup_period(struct CumulativeVolumeDe bool wickra_cumulative_volume_delta_is_ready(struct CumulativeVolumeDelta *handle); +const char *wickra_cumulative_volume_delta_name(struct CumulativeVolumeDelta *handle); + void wickra_cumulative_volume_delta_reset(struct CumulativeVolumeDelta *handle); void wickra_cumulative_volume_delta_free(struct CumulativeVolumeDelta *handle); @@ -9733,6 +10449,8 @@ uintptr_t wickra_pin_warmup_period(struct Pin *handle); bool wickra_pin_is_ready(struct Pin *handle); +const char *wickra_pin_name(struct Pin *handle); + void wickra_pin_reset(struct Pin *handle); void wickra_pin_free(struct Pin *handle); @@ -9749,6 +10467,8 @@ uintptr_t wickra_roll_measure_warmup_period(struct RollMeasure *handle); bool wickra_roll_measure_is_ready(struct RollMeasure *handle); +const char *wickra_roll_measure_name(struct RollMeasure *handle); + void wickra_roll_measure_reset(struct RollMeasure *handle); void wickra_roll_measure_free(struct RollMeasure *handle); @@ -9765,6 +10485,8 @@ uintptr_t wickra_signed_volume_warmup_period(struct SignedVolume *handle); bool wickra_signed_volume_is_ready(struct SignedVolume *handle); +const char *wickra_signed_volume_name(struct SignedVolume *handle); + void wickra_signed_volume_reset(struct SignedVolume *handle); void wickra_signed_volume_free(struct SignedVolume *handle); @@ -9781,6 +10503,8 @@ uintptr_t wickra_trade_imbalance_warmup_period(struct TradeImbalance *handle); bool wickra_trade_imbalance_is_ready(struct TradeImbalance *handle); +const char *wickra_trade_imbalance_name(struct TradeImbalance *handle); + void wickra_trade_imbalance_reset(struct TradeImbalance *handle); void wickra_trade_imbalance_free(struct TradeImbalance *handle); @@ -9797,6 +10521,8 @@ uintptr_t wickra_trade_sign_autocorrelation_warmup_period(struct TradeSignAutoco bool wickra_trade_sign_autocorrelation_is_ready(struct TradeSignAutocorrelation *handle); +const char *wickra_trade_sign_autocorrelation_name(struct TradeSignAutocorrelation *handle); + void wickra_trade_sign_autocorrelation_reset(struct TradeSignAutocorrelation *handle); void wickra_trade_sign_autocorrelation_free(struct TradeSignAutocorrelation *handle); @@ -9813,6 +10539,8 @@ uintptr_t wickra_vpin_warmup_period(struct Vpin *handle); bool wickra_vpin_is_ready(struct Vpin *handle); +const char *wickra_vpin_name(struct Vpin *handle); + void wickra_vpin_reset(struct Vpin *handle); void wickra_vpin_free(struct Vpin *handle); @@ -9830,6 +10558,8 @@ uintptr_t wickra_effective_spread_warmup_period(struct EffectiveSpread *handle); bool wickra_effective_spread_is_ready(struct EffectiveSpread *handle); +const char *wickra_effective_spread_name(struct EffectiveSpread *handle); + void wickra_effective_spread_reset(struct EffectiveSpread *handle); void wickra_effective_spread_free(struct EffectiveSpread *handle); @@ -9847,6 +10577,8 @@ uintptr_t wickra_kyles_lambda_warmup_period(struct KylesLambda *handle); bool wickra_kyles_lambda_is_ready(struct KylesLambda *handle); +const char *wickra_kyles_lambda_name(struct KylesLambda *handle); + void wickra_kyles_lambda_reset(struct KylesLambda *handle); void wickra_kyles_lambda_free(struct KylesLambda *handle); @@ -9864,6 +10596,8 @@ uintptr_t wickra_realized_spread_warmup_period(struct RealizedSpread *handle); bool wickra_realized_spread_is_ready(struct RealizedSpread *handle); +const char *wickra_realized_spread_name(struct RealizedSpread *handle); + void wickra_realized_spread_reset(struct RealizedSpread *handle); void wickra_realized_spread_free(struct RealizedSpread *handle); @@ -9888,6 +10622,8 @@ uintptr_t wickra_calendar_spread_warmup_period(struct CalendarSpread *handle); bool wickra_calendar_spread_is_ready(struct CalendarSpread *handle); +const char *wickra_calendar_spread_name(struct CalendarSpread *handle); + void wickra_calendar_spread_reset(struct CalendarSpread *handle); void wickra_calendar_spread_free(struct CalendarSpread *handle); @@ -9912,6 +10648,8 @@ uintptr_t wickra_estimated_leverage_ratio_warmup_period(struct EstimatedLeverage bool wickra_estimated_leverage_ratio_is_ready(struct EstimatedLeverageRatio *handle); +const char *wickra_estimated_leverage_ratio_name(struct EstimatedLeverageRatio *handle); + void wickra_estimated_leverage_ratio_reset(struct EstimatedLeverageRatio *handle); void wickra_estimated_leverage_ratio_free(struct EstimatedLeverageRatio *handle); @@ -9936,6 +10674,8 @@ uintptr_t wickra_funding_basis_warmup_period(struct FundingBasis *handle); bool wickra_funding_basis_is_ready(struct FundingBasis *handle); +const char *wickra_funding_basis_name(struct FundingBasis *handle); + void wickra_funding_basis_reset(struct FundingBasis *handle); void wickra_funding_basis_free(struct FundingBasis *handle); @@ -9960,6 +10700,8 @@ uintptr_t wickra_funding_implied_apr_warmup_period(struct FundingImpliedApr *han bool wickra_funding_implied_apr_is_ready(struct FundingImpliedApr *handle); +const char *wickra_funding_implied_apr_name(struct FundingImpliedApr *handle); + void wickra_funding_implied_apr_reset(struct FundingImpliedApr *handle); void wickra_funding_implied_apr_free(struct FundingImpliedApr *handle); @@ -9984,6 +10726,8 @@ uintptr_t wickra_funding_rate_warmup_period(struct FundingRate *handle); bool wickra_funding_rate_is_ready(struct FundingRate *handle); +const char *wickra_funding_rate_name(struct FundingRate *handle); + void wickra_funding_rate_reset(struct FundingRate *handle); void wickra_funding_rate_free(struct FundingRate *handle); @@ -10008,6 +10752,8 @@ uintptr_t wickra_funding_rate_mean_warmup_period(struct FundingRateMean *handle) bool wickra_funding_rate_mean_is_ready(struct FundingRateMean *handle); +const char *wickra_funding_rate_mean_name(struct FundingRateMean *handle); + void wickra_funding_rate_mean_reset(struct FundingRateMean *handle); void wickra_funding_rate_mean_free(struct FundingRateMean *handle); @@ -10032,6 +10778,8 @@ uintptr_t wickra_funding_rate_z_score_warmup_period(struct FundingRateZScore *ha bool wickra_funding_rate_z_score_is_ready(struct FundingRateZScore *handle); +const char *wickra_funding_rate_z_score_name(struct FundingRateZScore *handle); + void wickra_funding_rate_z_score_reset(struct FundingRateZScore *handle); void wickra_funding_rate_z_score_free(struct FundingRateZScore *handle); @@ -10056,6 +10804,8 @@ uintptr_t wickra_long_short_ratio_warmup_period(struct LongShortRatio *handle); bool wickra_long_short_ratio_is_ready(struct LongShortRatio *handle); +const char *wickra_long_short_ratio_name(struct LongShortRatio *handle); + void wickra_long_short_ratio_reset(struct LongShortRatio *handle); void wickra_long_short_ratio_free(struct LongShortRatio *handle); @@ -10080,6 +10830,8 @@ uintptr_t wickra_open_interest_delta_warmup_period(struct OpenInterestDelta *han bool wickra_open_interest_delta_is_ready(struct OpenInterestDelta *handle); +const char *wickra_open_interest_delta_name(struct OpenInterestDelta *handle); + void wickra_open_interest_delta_reset(struct OpenInterestDelta *handle); void wickra_open_interest_delta_free(struct OpenInterestDelta *handle); @@ -10104,6 +10856,8 @@ uintptr_t wickra_oi_price_divergence_warmup_period(struct OIPriceDivergence *han bool wickra_oi_price_divergence_is_ready(struct OIPriceDivergence *handle); +const char *wickra_oi_price_divergence_name(struct OIPriceDivergence *handle); + void wickra_oi_price_divergence_reset(struct OIPriceDivergence *handle); void wickra_oi_price_divergence_free(struct OIPriceDivergence *handle); @@ -10128,6 +10882,8 @@ uintptr_t wickra_oi_to_volume_ratio_warmup_period(struct OiToVolumeRatio *handle bool wickra_oi_to_volume_ratio_is_ready(struct OiToVolumeRatio *handle); +const char *wickra_oi_to_volume_ratio_name(struct OiToVolumeRatio *handle); + void wickra_oi_to_volume_ratio_reset(struct OiToVolumeRatio *handle); void wickra_oi_to_volume_ratio_free(struct OiToVolumeRatio *handle); @@ -10152,6 +10908,8 @@ uintptr_t wickra_oi_weighted_warmup_period(struct OIWeighted *handle); bool wickra_oi_weighted_is_ready(struct OIWeighted *handle); +const char *wickra_oi_weighted_name(struct OIWeighted *handle); + void wickra_oi_weighted_reset(struct OIWeighted *handle); void wickra_oi_weighted_free(struct OIWeighted *handle); @@ -10176,6 +10934,8 @@ uintptr_t wickra_open_interest_momentum_warmup_period(struct OpenInterestMomentu bool wickra_open_interest_momentum_is_ready(struct OpenInterestMomentum *handle); +const char *wickra_open_interest_momentum_name(struct OpenInterestMomentum *handle); + void wickra_open_interest_momentum_reset(struct OpenInterestMomentum *handle); void wickra_open_interest_momentum_free(struct OpenInterestMomentum *handle); @@ -10200,6 +10960,8 @@ uintptr_t wickra_perpetual_premium_index_warmup_period(struct PerpetualPremiumIn bool wickra_perpetual_premium_index_is_ready(struct PerpetualPremiumIndex *handle); +const char *wickra_perpetual_premium_index_name(struct PerpetualPremiumIndex *handle); + void wickra_perpetual_premium_index_reset(struct PerpetualPremiumIndex *handle); void wickra_perpetual_premium_index_free(struct PerpetualPremiumIndex *handle); @@ -10224,6 +10986,8 @@ uintptr_t wickra_taker_buy_sell_ratio_warmup_period(struct TakerBuySellRatio *ha bool wickra_taker_buy_sell_ratio_is_ready(struct TakerBuySellRatio *handle); +const char *wickra_taker_buy_sell_ratio_name(struct TakerBuySellRatio *handle); + void wickra_taker_buy_sell_ratio_reset(struct TakerBuySellRatio *handle); void wickra_taker_buy_sell_ratio_free(struct TakerBuySellRatio *handle); @@ -10248,6 +11012,8 @@ uintptr_t wickra_term_structure_basis_warmup_period(struct TermStructureBasis *h bool wickra_term_structure_basis_is_ready(struct TermStructureBasis *handle); +const char *wickra_term_structure_basis_name(struct TermStructureBasis *handle); + void wickra_term_structure_basis_reset(struct TermStructureBasis *handle); void wickra_term_structure_basis_free(struct TermStructureBasis *handle); @@ -10266,6 +11032,8 @@ uintptr_t wickra_depth_slope_warmup_period(struct DepthSlope *handle); bool wickra_depth_slope_is_ready(struct DepthSlope *handle); +const char *wickra_depth_slope_name(struct DepthSlope *handle); + void wickra_depth_slope_reset(struct DepthSlope *handle); void wickra_depth_slope_free(struct DepthSlope *handle); @@ -10284,6 +11052,8 @@ uintptr_t wickra_microprice_warmup_period(struct Microprice *handle); bool wickra_microprice_is_ready(struct Microprice *handle); +const char *wickra_microprice_name(struct Microprice *handle); + void wickra_microprice_reset(struct Microprice *handle); void wickra_microprice_free(struct Microprice *handle); @@ -10302,6 +11072,8 @@ uintptr_t wickra_order_book_imbalance_full_warmup_period(struct OrderBookImbalan bool wickra_order_book_imbalance_full_is_ready(struct OrderBookImbalanceFull *handle); +const char *wickra_order_book_imbalance_full_name(struct OrderBookImbalanceFull *handle); + void wickra_order_book_imbalance_full_reset(struct OrderBookImbalanceFull *handle); void wickra_order_book_imbalance_full_free(struct OrderBookImbalanceFull *handle); @@ -10320,6 +11092,8 @@ uintptr_t wickra_order_book_imbalance_top1_warmup_period(struct OrderBookImbalan bool wickra_order_book_imbalance_top1_is_ready(struct OrderBookImbalanceTop1 *handle); +const char *wickra_order_book_imbalance_top1_name(struct OrderBookImbalanceTop1 *handle); + void wickra_order_book_imbalance_top1_reset(struct OrderBookImbalanceTop1 *handle); void wickra_order_book_imbalance_top1_free(struct OrderBookImbalanceTop1 *handle); @@ -10338,6 +11112,8 @@ uintptr_t wickra_order_book_imbalance_top_n_warmup_period(struct OrderBookImbala bool wickra_order_book_imbalance_top_n_is_ready(struct OrderBookImbalanceTopN *handle); +const char *wickra_order_book_imbalance_top_n_name(struct OrderBookImbalanceTopN *handle); + void wickra_order_book_imbalance_top_n_reset(struct OrderBookImbalanceTopN *handle); void wickra_order_book_imbalance_top_n_free(struct OrderBookImbalanceTopN *handle); @@ -10356,6 +11132,8 @@ uintptr_t wickra_order_flow_imbalance_warmup_period(struct OrderFlowImbalance *h bool wickra_order_flow_imbalance_is_ready(struct OrderFlowImbalance *handle); +const char *wickra_order_flow_imbalance_name(struct OrderFlowImbalance *handle); + void wickra_order_flow_imbalance_reset(struct OrderFlowImbalance *handle); void wickra_order_flow_imbalance_free(struct OrderFlowImbalance *handle); @@ -10374,6 +11152,8 @@ uintptr_t wickra_quoted_spread_warmup_period(struct QuotedSpread *handle); bool wickra_quoted_spread_is_ready(struct QuotedSpread *handle); +const char *wickra_quoted_spread_name(struct QuotedSpread *handle); + void wickra_quoted_spread_reset(struct QuotedSpread *handle); void wickra_quoted_spread_free(struct QuotedSpread *handle); @@ -10394,6 +11174,8 @@ uintptr_t wickra_absolute_breadth_index_warmup_period(struct AbsoluteBreadthInde bool wickra_absolute_breadth_index_is_ready(struct AbsoluteBreadthIndex *handle); +const char *wickra_absolute_breadth_index_name(struct AbsoluteBreadthIndex *handle); + void wickra_absolute_breadth_index_reset(struct AbsoluteBreadthIndex *handle); void wickra_absolute_breadth_index_free(struct AbsoluteBreadthIndex *handle); @@ -10414,6 +11196,8 @@ uintptr_t wickra_ad_volume_line_warmup_period(struct AdVolumeLine *handle); bool wickra_ad_volume_line_is_ready(struct AdVolumeLine *handle); +const char *wickra_ad_volume_line_name(struct AdVolumeLine *handle); + void wickra_ad_volume_line_reset(struct AdVolumeLine *handle); void wickra_ad_volume_line_free(struct AdVolumeLine *handle); @@ -10434,6 +11218,8 @@ uintptr_t wickra_advance_decline_warmup_period(struct AdvanceDecline *handle); bool wickra_advance_decline_is_ready(struct AdvanceDecline *handle); +const char *wickra_advance_decline_name(struct AdvanceDecline *handle); + void wickra_advance_decline_reset(struct AdvanceDecline *handle); void wickra_advance_decline_free(struct AdvanceDecline *handle); @@ -10454,6 +11240,8 @@ uintptr_t wickra_advance_decline_ratio_warmup_period(struct AdvanceDeclineRatio bool wickra_advance_decline_ratio_is_ready(struct AdvanceDeclineRatio *handle); +const char *wickra_advance_decline_ratio_name(struct AdvanceDeclineRatio *handle); + void wickra_advance_decline_ratio_reset(struct AdvanceDeclineRatio *handle); void wickra_advance_decline_ratio_free(struct AdvanceDeclineRatio *handle); @@ -10474,6 +11262,8 @@ uintptr_t wickra_breadth_thrust_warmup_period(struct BreadthThrust *handle); bool wickra_breadth_thrust_is_ready(struct BreadthThrust *handle); +const char *wickra_breadth_thrust_name(struct BreadthThrust *handle); + void wickra_breadth_thrust_reset(struct BreadthThrust *handle); void wickra_breadth_thrust_free(struct BreadthThrust *handle); @@ -10494,6 +11284,8 @@ uintptr_t wickra_bullish_percent_index_warmup_period(struct BullishPercentIndex bool wickra_bullish_percent_index_is_ready(struct BullishPercentIndex *handle); +const char *wickra_bullish_percent_index_name(struct BullishPercentIndex *handle); + void wickra_bullish_percent_index_reset(struct BullishPercentIndex *handle); void wickra_bullish_percent_index_free(struct BullishPercentIndex *handle); @@ -10514,6 +11306,8 @@ uintptr_t wickra_cumulative_volume_index_warmup_period(struct CumulativeVolumeIn bool wickra_cumulative_volume_index_is_ready(struct CumulativeVolumeIndex *handle); +const char *wickra_cumulative_volume_index_name(struct CumulativeVolumeIndex *handle); + void wickra_cumulative_volume_index_reset(struct CumulativeVolumeIndex *handle); void wickra_cumulative_volume_index_free(struct CumulativeVolumeIndex *handle); @@ -10534,6 +11328,8 @@ uintptr_t wickra_high_low_index_warmup_period(struct HighLowIndex *handle); bool wickra_high_low_index_is_ready(struct HighLowIndex *handle); +const char *wickra_high_low_index_name(struct HighLowIndex *handle); + void wickra_high_low_index_reset(struct HighLowIndex *handle); void wickra_high_low_index_free(struct HighLowIndex *handle); @@ -10554,6 +11350,8 @@ uintptr_t wickra_mc_clellan_oscillator_warmup_period(struct McClellanOscillator bool wickra_mc_clellan_oscillator_is_ready(struct McClellanOscillator *handle); +const char *wickra_mc_clellan_oscillator_name(struct McClellanOscillator *handle); + void wickra_mc_clellan_oscillator_reset(struct McClellanOscillator *handle); void wickra_mc_clellan_oscillator_free(struct McClellanOscillator *handle); @@ -10574,6 +11372,8 @@ uintptr_t wickra_mc_clellan_summation_index_warmup_period(struct McClellanSummat bool wickra_mc_clellan_summation_index_is_ready(struct McClellanSummationIndex *handle); +const char *wickra_mc_clellan_summation_index_name(struct McClellanSummationIndex *handle); + void wickra_mc_clellan_summation_index_reset(struct McClellanSummationIndex *handle); void wickra_mc_clellan_summation_index_free(struct McClellanSummationIndex *handle); @@ -10594,6 +11394,8 @@ uintptr_t wickra_new_highs_new_lows_warmup_period(struct NewHighsNewLows *handle bool wickra_new_highs_new_lows_is_ready(struct NewHighsNewLows *handle); +const char *wickra_new_highs_new_lows_name(struct NewHighsNewLows *handle); + void wickra_new_highs_new_lows_reset(struct NewHighsNewLows *handle); void wickra_new_highs_new_lows_free(struct NewHighsNewLows *handle); @@ -10614,6 +11416,8 @@ uintptr_t wickra_percent_above_ma_warmup_period(struct PercentAboveMa *handle); bool wickra_percent_above_ma_is_ready(struct PercentAboveMa *handle); +const char *wickra_percent_above_ma_name(struct PercentAboveMa *handle); + void wickra_percent_above_ma_reset(struct PercentAboveMa *handle); void wickra_percent_above_ma_free(struct PercentAboveMa *handle); @@ -10634,6 +11438,8 @@ uintptr_t wickra_tick_index_warmup_period(struct TickIndex *handle); bool wickra_tick_index_is_ready(struct TickIndex *handle); +const char *wickra_tick_index_name(struct TickIndex *handle); + void wickra_tick_index_reset(struct TickIndex *handle); void wickra_tick_index_free(struct TickIndex *handle); @@ -10654,6 +11460,8 @@ uintptr_t wickra_trin_warmup_period(struct Trin *handle); bool wickra_trin_is_ready(struct Trin *handle); +const char *wickra_trin_name(struct Trin *handle); + void wickra_trin_reset(struct Trin *handle); void wickra_trin_free(struct Trin *handle); @@ -10674,6 +11482,8 @@ uintptr_t wickra_up_down_volume_ratio_warmup_period(struct UpDownVolumeRatio *ha bool wickra_up_down_volume_ratio_is_ready(struct UpDownVolumeRatio *handle); +const char *wickra_up_down_volume_ratio_name(struct UpDownVolumeRatio *handle); + void wickra_up_down_volume_ratio_reset(struct UpDownVolumeRatio *handle); void wickra_up_down_volume_ratio_free(struct UpDownVolumeRatio *handle); @@ -10693,6 +11503,8 @@ uintptr_t wickra_acceleration_bands_warmup_period(struct AccelerationBands *hand bool wickra_acceleration_bands_is_ready(struct AccelerationBands *handle); +const char *wickra_acceleration_bands_name(struct AccelerationBands *handle); + void wickra_acceleration_bands_reset(struct AccelerationBands *handle); void wickra_acceleration_bands_free(struct AccelerationBands *handle); @@ -10712,6 +11524,8 @@ uintptr_t wickra_adx_warmup_period(struct Adx *handle); bool wickra_adx_is_ready(struct Adx *handle); +const char *wickra_adx_name(struct Adx *handle); + void wickra_adx_reset(struct Adx *handle); void wickra_adx_free(struct Adx *handle); @@ -10733,6 +11547,8 @@ uintptr_t wickra_alligator_warmup_period(struct Alligator *handle); bool wickra_alligator_is_ready(struct Alligator *handle); +const char *wickra_alligator_name(struct Alligator *handle); + void wickra_alligator_reset(struct Alligator *handle); void wickra_alligator_free(struct Alligator *handle); @@ -10752,6 +11568,8 @@ uintptr_t wickra_andrews_pitchfork_warmup_period(struct AndrewsPitchfork *handle bool wickra_andrews_pitchfork_is_ready(struct AndrewsPitchfork *handle); +const char *wickra_andrews_pitchfork_name(struct AndrewsPitchfork *handle); + void wickra_andrews_pitchfork_reset(struct AndrewsPitchfork *handle); void wickra_andrews_pitchfork_free(struct AndrewsPitchfork *handle); @@ -10771,6 +11589,8 @@ uintptr_t wickra_aroon_warmup_period(struct Aroon *handle); bool wickra_aroon_is_ready(struct Aroon *handle); +const char *wickra_aroon_name(struct Aroon *handle); + void wickra_aroon_reset(struct Aroon *handle); void wickra_aroon_free(struct Aroon *handle); @@ -10790,6 +11610,8 @@ uintptr_t wickra_atr_bands_warmup_period(struct AtrBands *handle); bool wickra_atr_bands_is_ready(struct AtrBands *handle); +const char *wickra_atr_bands_name(struct AtrBands *handle); + void wickra_atr_bands_reset(struct AtrBands *handle); void wickra_atr_bands_free(struct AtrBands *handle); @@ -10811,6 +11633,8 @@ uintptr_t wickra_atr_ratchet_warmup_period(struct AtrRatchet *handle); bool wickra_atr_ratchet_is_ready(struct AtrRatchet *handle); +const char *wickra_atr_ratchet_name(struct AtrRatchet *handle); + void wickra_atr_ratchet_reset(struct AtrRatchet *handle); void wickra_atr_ratchet_free(struct AtrRatchet *handle); @@ -10830,6 +11654,8 @@ uintptr_t wickra_auto_fib_warmup_period(struct AutoFib *handle); bool wickra_auto_fib_is_ready(struct AutoFib *handle); +const char *wickra_auto_fib_name(struct AutoFib *handle); + void wickra_auto_fib_reset(struct AutoFib *handle); void wickra_auto_fib_free(struct AutoFib *handle); @@ -10844,6 +11670,8 @@ uintptr_t wickra_bollinger_bands_warmup_period(struct BollingerBands *handle); bool wickra_bollinger_bands_is_ready(struct BollingerBands *handle); +const char *wickra_bollinger_bands_name(struct BollingerBands *handle); + void wickra_bollinger_bands_reset(struct BollingerBands *handle); void wickra_bollinger_bands_free(struct BollingerBands *handle); @@ -10858,6 +11686,8 @@ uintptr_t wickra_bomar_bands_warmup_period(struct BomarBands *handle); bool wickra_bomar_bands_is_ready(struct BomarBands *handle); +const char *wickra_bomar_bands_name(struct BomarBands *handle); + void wickra_bomar_bands_reset(struct BomarBands *handle); void wickra_bomar_bands_free(struct BomarBands *handle); @@ -10877,6 +11707,8 @@ uintptr_t wickra_camarilla_warmup_period(struct Camarilla *handle); bool wickra_camarilla_is_ready(struct Camarilla *handle); +const char *wickra_camarilla_name(struct Camarilla *handle); + void wickra_camarilla_reset(struct Camarilla *handle); void wickra_camarilla_free(struct Camarilla *handle); @@ -10896,6 +11728,8 @@ uintptr_t wickra_candle_volume_warmup_period(struct CandleVolume *handle); bool wickra_candle_volume_is_ready(struct CandleVolume *handle); +const char *wickra_candle_volume_name(struct CandleVolume *handle); + void wickra_candle_volume_reset(struct CandleVolume *handle); void wickra_candle_volume_free(struct CandleVolume *handle); @@ -10915,6 +11749,8 @@ uintptr_t wickra_central_pivot_range_warmup_period(struct CentralPivotRange *han bool wickra_central_pivot_range_is_ready(struct CentralPivotRange *handle); +const char *wickra_central_pivot_range_name(struct CentralPivotRange *handle); + void wickra_central_pivot_range_reset(struct CentralPivotRange *handle); void wickra_central_pivot_range_free(struct CentralPivotRange *handle); @@ -10936,6 +11772,8 @@ uintptr_t wickra_chande_kroll_stop_warmup_period(struct ChandeKrollStop *handle) bool wickra_chande_kroll_stop_is_ready(struct ChandeKrollStop *handle); +const char *wickra_chande_kroll_stop_name(struct ChandeKrollStop *handle); + void wickra_chande_kroll_stop_reset(struct ChandeKrollStop *handle); void wickra_chande_kroll_stop_free(struct ChandeKrollStop *handle); @@ -10955,6 +11793,8 @@ uintptr_t wickra_chandelier_exit_warmup_period(struct ChandelierExit *handle); bool wickra_chandelier_exit_is_ready(struct ChandelierExit *handle); +const char *wickra_chandelier_exit_name(struct ChandelierExit *handle); + void wickra_chandelier_exit_reset(struct ChandelierExit *handle); void wickra_chandelier_exit_free(struct ChandelierExit *handle); @@ -10974,6 +11814,8 @@ uintptr_t wickra_classic_pivots_warmup_period(struct ClassicPivots *handle); bool wickra_classic_pivots_is_ready(struct ClassicPivots *handle); +const char *wickra_classic_pivots_name(struct ClassicPivots *handle); + void wickra_classic_pivots_reset(struct ClassicPivots *handle); void wickra_classic_pivots_free(struct ClassicPivots *handle); @@ -10989,6 +11831,8 @@ uintptr_t wickra_cointegration_warmup_period(struct Cointegration *handle); bool wickra_cointegration_is_ready(struct Cointegration *handle); +const char *wickra_cointegration_name(struct Cointegration *handle); + void wickra_cointegration_reset(struct Cointegration *handle); void wickra_cointegration_free(struct Cointegration *handle); @@ -11010,6 +11854,8 @@ uintptr_t wickra_composite_profile_warmup_period(struct CompositeProfile *handle bool wickra_composite_profile_is_ready(struct CompositeProfile *handle); +const char *wickra_composite_profile_name(struct CompositeProfile *handle); + void wickra_composite_profile_reset(struct CompositeProfile *handle); void wickra_composite_profile_free(struct CompositeProfile *handle); @@ -11029,6 +11875,8 @@ uintptr_t wickra_demark_pivots_warmup_period(struct DemarkPivots *handle); bool wickra_demark_pivots_is_ready(struct DemarkPivots *handle); +const char *wickra_demark_pivots_name(struct DemarkPivots *handle); + void wickra_demark_pivots_reset(struct DemarkPivots *handle); void wickra_demark_pivots_free(struct DemarkPivots *handle); @@ -11048,6 +11896,8 @@ uintptr_t wickra_donchian_warmup_period(struct Donchian *handle); bool wickra_donchian_is_ready(struct Donchian *handle); +const char *wickra_donchian_name(struct Donchian *handle); + void wickra_donchian_reset(struct Donchian *handle); void wickra_donchian_free(struct Donchian *handle); @@ -11067,6 +11917,8 @@ uintptr_t wickra_donchian_stop_warmup_period(struct DonchianStop *handle); bool wickra_donchian_stop_is_ready(struct DonchianStop *handle); +const char *wickra_donchian_stop_name(struct DonchianStop *handle); + void wickra_donchian_stop_reset(struct DonchianStop *handle); void wickra_donchian_stop_free(struct DonchianStop *handle); @@ -11083,6 +11935,8 @@ uintptr_t wickra_double_bollinger_warmup_period(struct DoubleBollinger *handle); bool wickra_double_bollinger_is_ready(struct DoubleBollinger *handle); +const char *wickra_double_bollinger_name(struct DoubleBollinger *handle); + void wickra_double_bollinger_reset(struct DoubleBollinger *handle); void wickra_double_bollinger_free(struct DoubleBollinger *handle); @@ -11102,6 +11956,8 @@ uintptr_t wickra_elder_ray_warmup_period(struct ElderRay *handle); bool wickra_elder_ray_is_ready(struct ElderRay *handle); +const char *wickra_elder_ray_name(struct ElderRay *handle); + void wickra_elder_ray_reset(struct ElderRay *handle); void wickra_elder_ray_free(struct ElderRay *handle); @@ -11121,6 +11977,8 @@ uintptr_t wickra_elder_safe_zone_warmup_period(struct ElderSafeZone *handle); bool wickra_elder_safe_zone_is_ready(struct ElderSafeZone *handle); +const char *wickra_elder_safe_zone_name(struct ElderSafeZone *handle); + void wickra_elder_safe_zone_reset(struct ElderSafeZone *handle); void wickra_elder_safe_zone_free(struct ElderSafeZone *handle); @@ -11140,6 +11998,8 @@ uintptr_t wickra_equivolume_warmup_period(struct Equivolume *handle); bool wickra_equivolume_is_ready(struct Equivolume *handle); +const char *wickra_equivolume_name(struct Equivolume *handle); + void wickra_equivolume_reset(struct Equivolume *handle); void wickra_equivolume_free(struct Equivolume *handle); @@ -11159,6 +12019,8 @@ uintptr_t wickra_fib_arcs_warmup_period(struct FibArcs *handle); bool wickra_fib_arcs_is_ready(struct FibArcs *handle); +const char *wickra_fib_arcs_name(struct FibArcs *handle); + void wickra_fib_arcs_reset(struct FibArcs *handle); void wickra_fib_arcs_free(struct FibArcs *handle); @@ -11178,6 +12040,8 @@ uintptr_t wickra_fib_channel_warmup_period(struct FibChannel *handle); bool wickra_fib_channel_is_ready(struct FibChannel *handle); +const char *wickra_fib_channel_name(struct FibChannel *handle); + void wickra_fib_channel_reset(struct FibChannel *handle); void wickra_fib_channel_free(struct FibChannel *handle); @@ -11197,6 +12061,8 @@ uintptr_t wickra_fib_confluence_warmup_period(struct FibConfluence *handle); bool wickra_fib_confluence_is_ready(struct FibConfluence *handle); +const char *wickra_fib_confluence_name(struct FibConfluence *handle); + void wickra_fib_confluence_reset(struct FibConfluence *handle); void wickra_fib_confluence_free(struct FibConfluence *handle); @@ -11216,6 +12082,8 @@ uintptr_t wickra_fib_extension_warmup_period(struct FibExtension *handle); bool wickra_fib_extension_is_ready(struct FibExtension *handle); +const char *wickra_fib_extension_name(struct FibExtension *handle); + void wickra_fib_extension_reset(struct FibExtension *handle); void wickra_fib_extension_free(struct FibExtension *handle); @@ -11235,6 +12103,8 @@ uintptr_t wickra_fib_fan_warmup_period(struct FibFan *handle); bool wickra_fib_fan_is_ready(struct FibFan *handle); +const char *wickra_fib_fan_name(struct FibFan *handle); + void wickra_fib_fan_reset(struct FibFan *handle); void wickra_fib_fan_free(struct FibFan *handle); @@ -11254,6 +12124,8 @@ uintptr_t wickra_fib_projection_warmup_period(struct FibProjection *handle); bool wickra_fib_projection_is_ready(struct FibProjection *handle); +const char *wickra_fib_projection_name(struct FibProjection *handle); + void wickra_fib_projection_reset(struct FibProjection *handle); void wickra_fib_projection_free(struct FibProjection *handle); @@ -11273,6 +12145,8 @@ uintptr_t wickra_fib_retracement_warmup_period(struct FibRetracement *handle); bool wickra_fib_retracement_is_ready(struct FibRetracement *handle); +const char *wickra_fib_retracement_name(struct FibRetracement *handle); + void wickra_fib_retracement_reset(struct FibRetracement *handle); void wickra_fib_retracement_free(struct FibRetracement *handle); @@ -11292,6 +12166,8 @@ uintptr_t wickra_fib_time_zones_warmup_period(struct FibTimeZones *handle); bool wickra_fib_time_zones_is_ready(struct FibTimeZones *handle); +const char *wickra_fib_time_zones_name(struct FibTimeZones *handle); + void wickra_fib_time_zones_reset(struct FibTimeZones *handle); void wickra_fib_time_zones_free(struct FibTimeZones *handle); @@ -11311,6 +12187,8 @@ uintptr_t wickra_fibonacci_pivots_warmup_period(struct FibonacciPivots *handle); bool wickra_fibonacci_pivots_is_ready(struct FibonacciPivots *handle); +const char *wickra_fibonacci_pivots_name(struct FibonacciPivots *handle); + void wickra_fibonacci_pivots_reset(struct FibonacciPivots *handle); void wickra_fibonacci_pivots_free(struct FibonacciPivots *handle); @@ -11330,6 +12208,8 @@ uintptr_t wickra_fractal_chaos_bands_warmup_period(struct FractalChaosBands *han bool wickra_fractal_chaos_bands_is_ready(struct FractalChaosBands *handle); +const char *wickra_fractal_chaos_bands_name(struct FractalChaosBands *handle); + void wickra_fractal_chaos_bands_reset(struct FractalChaosBands *handle); void wickra_fractal_chaos_bands_free(struct FractalChaosBands *handle); @@ -11351,6 +12231,8 @@ uintptr_t wickra_gator_oscillator_warmup_period(struct GatorOscillator *handle); bool wickra_gator_oscillator_is_ready(struct GatorOscillator *handle); +const char *wickra_gator_oscillator_name(struct GatorOscillator *handle); + void wickra_gator_oscillator_reset(struct GatorOscillator *handle); void wickra_gator_oscillator_free(struct GatorOscillator *handle); @@ -11370,6 +12252,8 @@ uintptr_t wickra_golden_pocket_warmup_period(struct GoldenPocket *handle); bool wickra_golden_pocket_is_ready(struct GoldenPocket *handle); +const char *wickra_golden_pocket_name(struct GoldenPocket *handle); + void wickra_golden_pocket_reset(struct GoldenPocket *handle); void wickra_golden_pocket_free(struct GoldenPocket *handle); @@ -11389,6 +12273,8 @@ uintptr_t wickra_heikin_ashi_warmup_period(struct HeikinAshi *handle); bool wickra_heikin_ashi_is_ready(struct HeikinAshi *handle); +const char *wickra_heikin_ashi_name(struct HeikinAshi *handle); + void wickra_heikin_ashi_reset(struct HeikinAshi *handle); void wickra_heikin_ashi_free(struct HeikinAshi *handle); @@ -11408,6 +12294,8 @@ uintptr_t wickra_high_low_volume_nodes_warmup_period(struct HighLowVolumeNodes * bool wickra_high_low_volume_nodes_is_ready(struct HighLowVolumeNodes *handle); +const char *wickra_high_low_volume_nodes_name(struct HighLowVolumeNodes *handle); + void wickra_high_low_volume_nodes_reset(struct HighLowVolumeNodes *handle); void wickra_high_low_volume_nodes_free(struct HighLowVolumeNodes *handle); @@ -11422,6 +12310,8 @@ uintptr_t wickra_ht_phasor_warmup_period(struct HtPhasor *handle); bool wickra_ht_phasor_is_ready(struct HtPhasor *handle); +const char *wickra_ht_phasor_name(struct HtPhasor *handle); + void wickra_ht_phasor_reset(struct HtPhasor *handle); void wickra_ht_phasor_free(struct HtPhasor *handle); @@ -11441,6 +12331,8 @@ uintptr_t wickra_hurst_channel_warmup_period(struct HurstChannel *handle); bool wickra_hurst_channel_is_ready(struct HurstChannel *handle); +const char *wickra_hurst_channel_name(struct HurstChannel *handle); + void wickra_hurst_channel_reset(struct HurstChannel *handle); void wickra_hurst_channel_free(struct HurstChannel *handle); @@ -11463,6 +12355,8 @@ uintptr_t wickra_ichimoku_warmup_period(struct Ichimoku *handle); bool wickra_ichimoku_is_ready(struct Ichimoku *handle); +const char *wickra_ichimoku_name(struct Ichimoku *handle); + void wickra_ichimoku_reset(struct Ichimoku *handle); void wickra_ichimoku_free(struct Ichimoku *handle); @@ -11482,6 +12376,8 @@ uintptr_t wickra_initial_balance_warmup_period(struct InitialBalance *handle); bool wickra_initial_balance_is_ready(struct InitialBalance *handle); +const char *wickra_initial_balance_name(struct InitialBalance *handle); + void wickra_initial_balance_reset(struct InitialBalance *handle); void wickra_initial_balance_free(struct InitialBalance *handle); @@ -11497,6 +12393,8 @@ uintptr_t wickra_kalman_hedge_ratio_warmup_period(struct KalmanHedgeRatio *handl bool wickra_kalman_hedge_ratio_is_ready(struct KalmanHedgeRatio *handle); +const char *wickra_kalman_hedge_ratio_name(struct KalmanHedgeRatio *handle); + void wickra_kalman_hedge_ratio_reset(struct KalmanHedgeRatio *handle); void wickra_kalman_hedge_ratio_free(struct KalmanHedgeRatio *handle); @@ -11516,6 +12414,8 @@ uintptr_t wickra_kase_dev_stop_warmup_period(struct KaseDevStop *handle); bool wickra_kase_dev_stop_is_ready(struct KaseDevStop *handle); +const char *wickra_kase_dev_stop_name(struct KaseDevStop *handle); + void wickra_kase_dev_stop_reset(struct KaseDevStop *handle); void wickra_kase_dev_stop_free(struct KaseDevStop *handle); @@ -11536,6 +12436,8 @@ uintptr_t wickra_kase_permission_stochastic_warmup_period(struct KasePermissionS bool wickra_kase_permission_stochastic_is_ready(struct KasePermissionStochastic *handle); +const char *wickra_kase_permission_stochastic_name(struct KasePermissionStochastic *handle); + void wickra_kase_permission_stochastic_reset(struct KasePermissionStochastic *handle); void wickra_kase_permission_stochastic_free(struct KasePermissionStochastic *handle); @@ -11555,6 +12457,8 @@ uintptr_t wickra_keltner_warmup_period(struct Keltner *handle); bool wickra_keltner_is_ready(struct Keltner *handle); +const char *wickra_keltner_name(struct Keltner *handle); + void wickra_keltner_reset(struct Keltner *handle); void wickra_keltner_free(struct Keltner *handle); @@ -11575,6 +12479,8 @@ uintptr_t wickra_kst_warmup_period(struct Kst *handle); bool wickra_kst_is_ready(struct Kst *handle); +const char *wickra_kst_name(struct Kst *handle); + void wickra_kst_reset(struct Kst *handle); void wickra_kst_free(struct Kst *handle); @@ -11591,6 +12497,8 @@ uintptr_t wickra_lead_lag_cross_correlation_warmup_period(struct LeadLagCrossCor bool wickra_lead_lag_cross_correlation_is_ready(struct LeadLagCrossCorrelation *handle); +const char *wickra_lead_lag_cross_correlation_name(struct LeadLagCrossCorrelation *handle); + void wickra_lead_lag_cross_correlation_reset(struct LeadLagCrossCorrelation *handle); void wickra_lead_lag_cross_correlation_free(struct LeadLagCrossCorrelation *handle); @@ -11605,6 +12513,8 @@ uintptr_t wickra_lin_reg_channel_warmup_period(struct LinRegChannel *handle); bool wickra_lin_reg_channel_is_ready(struct LinRegChannel *handle); +const char *wickra_lin_reg_channel_name(struct LinRegChannel *handle); + void wickra_lin_reg_channel_reset(struct LinRegChannel *handle); void wickra_lin_reg_channel_free(struct LinRegChannel *handle); @@ -11630,6 +12540,8 @@ uintptr_t wickra_liquidation_features_warmup_period(struct LiquidationFeatures * bool wickra_liquidation_features_is_ready(struct LiquidationFeatures *handle); +const char *wickra_liquidation_features_name(struct LiquidationFeatures *handle); + void wickra_liquidation_features_reset(struct LiquidationFeatures *handle); void wickra_liquidation_features_free(struct LiquidationFeatures *handle); @@ -11644,6 +12556,8 @@ uintptr_t wickra_ma_envelope_warmup_period(struct MaEnvelope *handle); bool wickra_ma_envelope_is_ready(struct MaEnvelope *handle); +const char *wickra_ma_envelope_name(struct MaEnvelope *handle); + void wickra_ma_envelope_reset(struct MaEnvelope *handle); void wickra_ma_envelope_free(struct MaEnvelope *handle); @@ -11658,6 +12572,8 @@ uintptr_t wickra_macd_indicator_warmup_period(struct MacdIndicator *handle); bool wickra_macd_indicator_is_ready(struct MacdIndicator *handle); +const char *wickra_macd_indicator_name(struct MacdIndicator *handle); + void wickra_macd_indicator_reset(struct MacdIndicator *handle); void wickra_macd_indicator_free(struct MacdIndicator *handle); @@ -11670,6 +12586,8 @@ uintptr_t wickra_macd_fix_warmup_period(struct MacdFix *handle); bool wickra_macd_fix_is_ready(struct MacdFix *handle); +const char *wickra_macd_fix_name(struct MacdFix *handle); + void wickra_macd_fix_reset(struct MacdFix *handle); void wickra_macd_fix_free(struct MacdFix *handle); @@ -11682,6 +12600,8 @@ uintptr_t wickra_mama_warmup_period(struct Mama *handle); bool wickra_mama_is_ready(struct Mama *handle); +const char *wickra_mama_name(struct Mama *handle); + void wickra_mama_reset(struct Mama *handle); void wickra_mama_free(struct Mama *handle); @@ -11696,6 +12616,8 @@ uintptr_t wickra_median_channel_warmup_period(struct MedianChannel *handle); bool wickra_median_channel_is_ready(struct MedianChannel *handle); +const char *wickra_median_channel_name(struct MedianChannel *handle); + void wickra_median_channel_reset(struct MedianChannel *handle); void wickra_median_channel_free(struct MedianChannel *handle); @@ -11715,6 +12637,8 @@ uintptr_t wickra_modified_ma_stop_warmup_period(struct ModifiedMaStop *handle); bool wickra_modified_ma_stop_is_ready(struct ModifiedMaStop *handle); +const char *wickra_modified_ma_stop_name(struct ModifiedMaStop *handle); + void wickra_modified_ma_stop_reset(struct ModifiedMaStop *handle); void wickra_modified_ma_stop_free(struct ModifiedMaStop *handle); @@ -11734,6 +12658,8 @@ uintptr_t wickra_murrey_math_lines_warmup_period(struct MurreyMathLines *handle) bool wickra_murrey_math_lines_is_ready(struct MurreyMathLines *handle); +const char *wickra_murrey_math_lines_name(struct MurreyMathLines *handle); + void wickra_murrey_math_lines_reset(struct MurreyMathLines *handle); void wickra_murrey_math_lines_free(struct MurreyMathLines *handle); @@ -11753,6 +12679,8 @@ uintptr_t wickra_nrtr_warmup_period(struct Nrtr *handle); bool wickra_nrtr_is_ready(struct Nrtr *handle); +const char *wickra_nrtr_name(struct Nrtr *handle); + void wickra_nrtr_reset(struct Nrtr *handle); void wickra_nrtr_free(struct Nrtr *handle); @@ -11772,6 +12700,8 @@ uintptr_t wickra_opening_range_warmup_period(struct OpeningRange *handle); bool wickra_opening_range_is_ready(struct OpeningRange *handle); +const char *wickra_opening_range_name(struct OpeningRange *handle); + void wickra_opening_range_reset(struct OpeningRange *handle); void wickra_opening_range_free(struct OpeningRange *handle); @@ -11791,6 +12721,8 @@ uintptr_t wickra_overnight_intraday_return_warmup_period(struct OvernightIntrada bool wickra_overnight_intraday_return_is_ready(struct OvernightIntradayReturn *handle); +const char *wickra_overnight_intraday_return_name(struct OvernightIntradayReturn *handle); + void wickra_overnight_intraday_return_reset(struct OvernightIntradayReturn *handle); void wickra_overnight_intraday_return_free(struct OvernightIntradayReturn *handle); @@ -11810,6 +12742,8 @@ uintptr_t wickra_projection_bands_warmup_period(struct ProjectionBands *handle); bool wickra_projection_bands_is_ready(struct ProjectionBands *handle); +const char *wickra_projection_bands_name(struct ProjectionBands *handle); + void wickra_projection_bands_reset(struct ProjectionBands *handle); void wickra_projection_bands_free(struct ProjectionBands *handle); @@ -11822,6 +12756,8 @@ uintptr_t wickra_qqe_warmup_period(struct Qqe *handle); bool wickra_qqe_is_ready(struct Qqe *handle); +const char *wickra_qqe_name(struct Qqe *handle); + void wickra_qqe_reset(struct Qqe *handle); void wickra_qqe_free(struct Qqe *handle); @@ -11836,6 +12772,8 @@ uintptr_t wickra_quartile_bands_warmup_period(struct QuartileBands *handle); bool wickra_quartile_bands_is_ready(struct QuartileBands *handle); +const char *wickra_quartile_bands_name(struct QuartileBands *handle); + void wickra_quartile_bands_reset(struct QuartileBands *handle); void wickra_quartile_bands_free(struct QuartileBands *handle); @@ -11852,6 +12790,8 @@ uintptr_t wickra_relative_strength_ab_warmup_period(struct RelativeStrengthAB *h bool wickra_relative_strength_ab_is_ready(struct RelativeStrengthAB *handle); +const char *wickra_relative_strength_ab_name(struct RelativeStrengthAB *handle); + void wickra_relative_strength_ab_reset(struct RelativeStrengthAB *handle); void wickra_relative_strength_ab_free(struct RelativeStrengthAB *handle); @@ -11871,6 +12811,8 @@ uintptr_t wickra_rwi_warmup_period(struct Rwi *handle); bool wickra_rwi_is_ready(struct Rwi *handle); +const char *wickra_rwi_name(struct Rwi *handle); + void wickra_rwi_reset(struct Rwi *handle); void wickra_rwi_free(struct Rwi *handle); @@ -11890,6 +12832,8 @@ uintptr_t wickra_session_high_low_warmup_period(struct SessionHighLow *handle); bool wickra_session_high_low_is_ready(struct SessionHighLow *handle); +const char *wickra_session_high_low_name(struct SessionHighLow *handle); + void wickra_session_high_low_reset(struct SessionHighLow *handle); void wickra_session_high_low_free(struct SessionHighLow *handle); @@ -11909,6 +12853,8 @@ uintptr_t wickra_session_range_warmup_period(struct SessionRange *handle); bool wickra_session_range_is_ready(struct SessionRange *handle); +const char *wickra_session_range_name(struct SessionRange *handle); + void wickra_session_range_reset(struct SessionRange *handle); void wickra_session_range_free(struct SessionRange *handle); @@ -11928,6 +12874,8 @@ uintptr_t wickra_smoothed_heikin_ashi_warmup_period(struct SmoothedHeikinAshi *h bool wickra_smoothed_heikin_ashi_is_ready(struct SmoothedHeikinAshi *handle); +const char *wickra_smoothed_heikin_ashi_name(struct SmoothedHeikinAshi *handle); + void wickra_smoothed_heikin_ashi_reset(struct SmoothedHeikinAshi *handle); void wickra_smoothed_heikin_ashi_free(struct SmoothedHeikinAshi *handle); @@ -11943,6 +12891,8 @@ uintptr_t wickra_spread_bollinger_bands_warmup_period(struct SpreadBollingerBand bool wickra_spread_bollinger_bands_is_ready(struct SpreadBollingerBands *handle); +const char *wickra_spread_bollinger_bands_name(struct SpreadBollingerBands *handle); + void wickra_spread_bollinger_bands_reset(struct SpreadBollingerBands *handle); void wickra_spread_bollinger_bands_free(struct SpreadBollingerBands *handle); @@ -11957,6 +12907,8 @@ uintptr_t wickra_standard_error_bands_warmup_period(struct StandardErrorBands *h bool wickra_standard_error_bands_is_ready(struct StandardErrorBands *handle); +const char *wickra_standard_error_bands_name(struct StandardErrorBands *handle); + void wickra_standard_error_bands_reset(struct StandardErrorBands *handle); void wickra_standard_error_bands_free(struct StandardErrorBands *handle); @@ -11978,6 +12930,8 @@ uintptr_t wickra_starc_bands_warmup_period(struct StarcBands *handle); bool wickra_starc_bands_is_ready(struct StarcBands *handle); +const char *wickra_starc_bands_name(struct StarcBands *handle); + void wickra_starc_bands_reset(struct StarcBands *handle); void wickra_starc_bands_free(struct StarcBands *handle); @@ -11997,6 +12951,8 @@ uintptr_t wickra_stochastic_warmup_period(struct Stochastic *handle); bool wickra_stochastic_is_ready(struct Stochastic *handle); +const char *wickra_stochastic_name(struct Stochastic *handle); + void wickra_stochastic_reset(struct Stochastic *handle); void wickra_stochastic_free(struct Stochastic *handle); @@ -12016,6 +12972,8 @@ uintptr_t wickra_super_trend_warmup_period(struct SuperTrend *handle); bool wickra_super_trend_is_ready(struct SuperTrend *handle); +const char *wickra_super_trend_name(struct SuperTrend *handle); + void wickra_super_trend_reset(struct SuperTrend *handle); void wickra_super_trend_free(struct SuperTrend *handle); @@ -12035,6 +12993,8 @@ uintptr_t wickra_td_lines_warmup_period(struct TdLines *handle); bool wickra_td_lines_is_ready(struct TdLines *handle); +const char *wickra_td_lines_name(struct TdLines *handle); + void wickra_td_lines_reset(struct TdLines *handle); void wickra_td_lines_free(struct TdLines *handle); @@ -12054,6 +13014,8 @@ uintptr_t wickra_td_moving_average_warmup_period(struct TdMovingAverage *handle) bool wickra_td_moving_average_is_ready(struct TdMovingAverage *handle); +const char *wickra_td_moving_average_name(struct TdMovingAverage *handle); + void wickra_td_moving_average_reset(struct TdMovingAverage *handle); void wickra_td_moving_average_free(struct TdMovingAverage *handle); @@ -12073,6 +13035,8 @@ uintptr_t wickra_td_range_projection_warmup_period(struct TdRangeProjection *han bool wickra_td_range_projection_is_ready(struct TdRangeProjection *handle); +const char *wickra_td_range_projection_name(struct TdRangeProjection *handle); + void wickra_td_range_projection_reset(struct TdRangeProjection *handle); void wickra_td_range_projection_free(struct TdRangeProjection *handle); @@ -12092,6 +13056,8 @@ uintptr_t wickra_td_risk_level_warmup_period(struct TdRiskLevel *handle); bool wickra_td_risk_level_is_ready(struct TdRiskLevel *handle); +const char *wickra_td_risk_level_name(struct TdRiskLevel *handle); + void wickra_td_risk_level_reset(struct TdRiskLevel *handle); void wickra_td_risk_level_free(struct TdRiskLevel *handle); @@ -12114,6 +13080,8 @@ uintptr_t wickra_td_sequential_warmup_period(struct TdSequential *handle); bool wickra_td_sequential_is_ready(struct TdSequential *handle); +const char *wickra_td_sequential_name(struct TdSequential *handle); + void wickra_td_sequential_reset(struct TdSequential *handle); void wickra_td_sequential_free(struct TdSequential *handle); @@ -12133,6 +13101,8 @@ uintptr_t wickra_ttm_squeeze_warmup_period(struct TtmSqueeze *handle); bool wickra_ttm_squeeze_is_ready(struct TtmSqueeze *handle); +const char *wickra_ttm_squeeze_name(struct TtmSqueeze *handle); + void wickra_ttm_squeeze_reset(struct TtmSqueeze *handle); void wickra_ttm_squeeze_free(struct TtmSqueeze *handle); @@ -12154,6 +13124,8 @@ uintptr_t wickra_value_area_warmup_period(struct ValueArea *handle); bool wickra_value_area_is_ready(struct ValueArea *handle); +const char *wickra_value_area_name(struct ValueArea *handle); + void wickra_value_area_reset(struct ValueArea *handle); void wickra_value_area_free(struct ValueArea *handle); @@ -12173,6 +13145,8 @@ uintptr_t wickra_volatility_cone_warmup_period(struct VolatilityCone *handle); bool wickra_volatility_cone_is_ready(struct VolatilityCone *handle); +const char *wickra_volatility_cone_name(struct VolatilityCone *handle); + void wickra_volatility_cone_reset(struct VolatilityCone *handle); void wickra_volatility_cone_free(struct VolatilityCone *handle); @@ -12194,6 +13168,8 @@ uintptr_t wickra_volume_weighted_macd_warmup_period(struct VolumeWeightedMacd *h bool wickra_volume_weighted_macd_is_ready(struct VolumeWeightedMacd *handle); +const char *wickra_volume_weighted_macd_name(struct VolumeWeightedMacd *handle); + void wickra_volume_weighted_macd_reset(struct VolumeWeightedMacd *handle); void wickra_volume_weighted_macd_free(struct VolumeWeightedMacd *handle); @@ -12213,6 +13189,8 @@ uintptr_t wickra_volume_weighted_sr_warmup_period(struct VolumeWeightedSr *handl bool wickra_volume_weighted_sr_is_ready(struct VolumeWeightedSr *handle); +const char *wickra_volume_weighted_sr_name(struct VolumeWeightedSr *handle); + void wickra_volume_weighted_sr_reset(struct VolumeWeightedSr *handle); void wickra_volume_weighted_sr_free(struct VolumeWeightedSr *handle); @@ -12232,6 +13210,8 @@ uintptr_t wickra_vortex_warmup_period(struct Vortex *handle); bool wickra_vortex_is_ready(struct Vortex *handle); +const char *wickra_vortex_name(struct Vortex *handle); + void wickra_vortex_reset(struct Vortex *handle); void wickra_vortex_free(struct Vortex *handle); @@ -12251,6 +13231,8 @@ uintptr_t wickra_vwap_std_dev_bands_warmup_period(struct VwapStdDevBands *handle bool wickra_vwap_std_dev_bands_is_ready(struct VwapStdDevBands *handle); +const char *wickra_vwap_std_dev_bands_name(struct VwapStdDevBands *handle); + void wickra_vwap_std_dev_bands_reset(struct VwapStdDevBands *handle); void wickra_vwap_std_dev_bands_free(struct VwapStdDevBands *handle); @@ -12272,6 +13254,8 @@ uintptr_t wickra_wave_trend_warmup_period(struct WaveTrend *handle); bool wickra_wave_trend_is_ready(struct WaveTrend *handle); +const char *wickra_wave_trend_name(struct WaveTrend *handle); + void wickra_wave_trend_reset(struct WaveTrend *handle); void wickra_wave_trend_free(struct WaveTrend *handle); @@ -12291,6 +13275,8 @@ uintptr_t wickra_williams_fractals_warmup_period(struct WilliamsFractals *handle bool wickra_williams_fractals_is_ready(struct WilliamsFractals *handle); +const char *wickra_williams_fractals_name(struct WilliamsFractals *handle); + void wickra_williams_fractals_reset(struct WilliamsFractals *handle); void wickra_williams_fractals_free(struct WilliamsFractals *handle); @@ -12310,6 +13296,8 @@ uintptr_t wickra_woodie_pivots_warmup_period(struct WoodiePivots *handle); bool wickra_woodie_pivots_is_ready(struct WoodiePivots *handle); +const char *wickra_woodie_pivots_name(struct WoodiePivots *handle); + void wickra_woodie_pivots_reset(struct WoodiePivots *handle); void wickra_woodie_pivots_free(struct WoodiePivots *handle); @@ -12324,6 +13312,8 @@ uintptr_t wickra_zero_lag_macd_warmup_period(struct ZeroLagMacd *handle); bool wickra_zero_lag_macd_is_ready(struct ZeroLagMacd *handle); +const char *wickra_zero_lag_macd_name(struct ZeroLagMacd *handle); + void wickra_zero_lag_macd_reset(struct ZeroLagMacd *handle); void wickra_zero_lag_macd_free(struct ZeroLagMacd *handle); @@ -12343,6 +13333,8 @@ uintptr_t wickra_zig_zag_warmup_period(struct ZigZag *handle); bool wickra_zig_zag_is_ready(struct ZigZag *handle); +const char *wickra_zig_zag_name(struct ZigZag *handle); + void wickra_zig_zag_reset(struct ZigZag *handle); void wickra_zig_zag_free(struct ZigZag *handle); @@ -12363,6 +13355,8 @@ uintptr_t wickra_day_of_week_profile_warmup_period(struct DayOfWeekProfile *hand bool wickra_day_of_week_profile_is_ready(struct DayOfWeekProfile *handle); +const char *wickra_day_of_week_profile_name(struct DayOfWeekProfile *handle); + void wickra_day_of_week_profile_reset(struct DayOfWeekProfile *handle); void wickra_day_of_week_profile_free(struct DayOfWeekProfile *handle); @@ -12384,6 +13378,8 @@ uintptr_t wickra_intraday_volatility_profile_warmup_period(struct IntradayVolati bool wickra_intraday_volatility_profile_is_ready(struct IntradayVolatilityProfile *handle); +const char *wickra_intraday_volatility_profile_name(struct IntradayVolatilityProfile *handle); + void wickra_intraday_volatility_profile_reset(struct IntradayVolatilityProfile *handle); void wickra_intraday_volatility_profile_free(struct IntradayVolatilityProfile *handle); @@ -12405,6 +13401,8 @@ uintptr_t wickra_time_of_day_return_profile_warmup_period(struct TimeOfDayReturn bool wickra_time_of_day_return_profile_is_ready(struct TimeOfDayReturnProfile *handle); +const char *wickra_time_of_day_return_profile_name(struct TimeOfDayReturnProfile *handle); + void wickra_time_of_day_return_profile_reset(struct TimeOfDayReturnProfile *handle); void wickra_time_of_day_return_profile_free(struct TimeOfDayReturnProfile *handle); @@ -12426,6 +13424,8 @@ uintptr_t wickra_tpo_profile_warmup_period(struct TpoProfile *handle); bool wickra_tpo_profile_is_ready(struct TpoProfile *handle); +const char *wickra_tpo_profile_name(struct TpoProfile *handle); + void wickra_tpo_profile_reset(struct TpoProfile *handle); void wickra_tpo_profile_free(struct TpoProfile *handle); @@ -12447,6 +13447,8 @@ uintptr_t wickra_volume_by_time_profile_warmup_period(struct VolumeByTimeProfile bool wickra_volume_by_time_profile_is_ready(struct VolumeByTimeProfile *handle); +const char *wickra_volume_by_time_profile_name(struct VolumeByTimeProfile *handle); + void wickra_volume_by_time_profile_reset(struct VolumeByTimeProfile *handle); void wickra_volume_by_time_profile_free(struct VolumeByTimeProfile *handle); @@ -12468,6 +13470,8 @@ uintptr_t wickra_volume_profile_warmup_period(struct VolumeProfile *handle); bool wickra_volume_profile_is_ready(struct VolumeProfile *handle); +const char *wickra_volume_profile_name(struct VolumeProfile *handle); + void wickra_volume_profile_reset(struct VolumeProfile *handle); void wickra_volume_profile_free(struct VolumeProfile *handle); @@ -12484,6 +13488,8 @@ uintptr_t wickra_dollar_bars_update(struct DollarBars *handle, struct WickraDollarBar *out, uintptr_t cap); +const char *wickra_dollar_bars_name(struct DollarBars *handle); + void wickra_dollar_bars_reset(struct DollarBars *handle); void wickra_dollar_bars_free(struct DollarBars *handle); @@ -12500,6 +13506,8 @@ uintptr_t wickra_imbalance_bars_update(struct ImbalanceBars *handle, struct WickraImbalanceBar *out, uintptr_t cap); +const char *wickra_imbalance_bars_name(struct ImbalanceBars *handle); + void wickra_imbalance_bars_reset(struct ImbalanceBars *handle); void wickra_imbalance_bars_free(struct ImbalanceBars *handle); @@ -12516,6 +13524,8 @@ uintptr_t wickra_kagi_bars_update(struct KagiBars *handle, struct WickraKagiBar *out, uintptr_t cap); +const char *wickra_kagi_bars_name(struct KagiBars *handle); + void wickra_kagi_bars_reset(struct KagiBars *handle); void wickra_kagi_bars_free(struct KagiBars *handle); @@ -12532,6 +13542,8 @@ uintptr_t wickra_point_and_figure_bars_update(struct PointAndFigureBars *handle, struct WickraPnfColumn *out, uintptr_t cap); +const char *wickra_point_and_figure_bars_name(struct PointAndFigureBars *handle); + void wickra_point_and_figure_bars_reset(struct PointAndFigureBars *handle); void wickra_point_and_figure_bars_free(struct PointAndFigureBars *handle); @@ -12548,6 +13560,8 @@ uintptr_t wickra_range_bars_update(struct RangeBars *handle, struct WickraRangeBar *out, uintptr_t cap); +const char *wickra_range_bars_name(struct RangeBars *handle); + void wickra_range_bars_reset(struct RangeBars *handle); void wickra_range_bars_free(struct RangeBars *handle); @@ -12564,6 +13578,8 @@ uintptr_t wickra_renko_bars_update(struct RenkoBars *handle, struct WickraRenkoBrick *out, uintptr_t cap); +const char *wickra_renko_bars_name(struct RenkoBars *handle); + void wickra_renko_bars_reset(struct RenkoBars *handle); void wickra_renko_bars_free(struct RenkoBars *handle); @@ -12580,6 +13596,8 @@ uintptr_t wickra_run_bars_update(struct RunBars *handle, struct WickraRunBar *out, uintptr_t cap); +const char *wickra_run_bars_name(struct RunBars *handle); + void wickra_run_bars_reset(struct RunBars *handle); void wickra_run_bars_free(struct RunBars *handle); @@ -12596,6 +13614,8 @@ uintptr_t wickra_three_line_break_bars_update(struct ThreeLineBreakBars *handle, struct WickraLineBreakBar *out, uintptr_t cap); +const char *wickra_three_line_break_bars_name(struct ThreeLineBreakBars *handle); + void wickra_three_line_break_bars_reset(struct ThreeLineBreakBars *handle); void wickra_three_line_break_bars_free(struct ThreeLineBreakBars *handle); @@ -12612,6 +13632,8 @@ uintptr_t wickra_tick_bars_update(struct TickBars *handle, struct WickraTickBar *out, uintptr_t cap); +const char *wickra_tick_bars_name(struct TickBars *handle); + void wickra_tick_bars_reset(struct TickBars *handle); void wickra_tick_bars_free(struct TickBars *handle); @@ -12628,6 +13650,8 @@ uintptr_t wickra_volume_bars_update(struct VolumeBars *handle, struct WickraVolumeBar *out, uintptr_t cap); +const char *wickra_volume_bars_name(struct VolumeBars *handle); + void wickra_volume_bars_reset(struct VolumeBars *handle); void wickra_volume_bars_free(struct VolumeBars *handle); @@ -12645,6 +13669,8 @@ uintptr_t wickra_macd_ext_warmup_period(struct MacdExt *handle); bool wickra_macd_ext_is_ready(struct MacdExt *handle); +const char *wickra_macd_ext_name(struct MacdExt *handle); + void wickra_macd_ext_reset(struct MacdExt *handle); void wickra_macd_ext_free(struct MacdExt *handle); @@ -12663,6 +13689,8 @@ uintptr_t wickra_footprint_warmup_period(struct Footprint *handle); bool wickra_footprint_is_ready(struct Footprint *handle); +const char *wickra_footprint_name(struct Footprint *handle); + void wickra_footprint_reset(struct Footprint *handle); void wickra_footprint_free(struct Footprint *handle); diff --git a/bindings/c/src/lib.rs b/bindings/c/src/lib.rs index 12370ed7..e6d729f3 100644 --- a/bindings/c/src/lib.rs +++ b/bindings/c/src/lib.rs @@ -12,6 +12,9 @@ //! - `wickra__is_ready(h)` — whether enough input has been consumed to emit //! a value (`false` on a `NULL` handle). Both are absent for the alt-chart bar //! builders, which have no warmup. +//! - `wickra__name(h)` — canonical indicator name as a NUL-terminated C +//! string with `'static` lifetime (`NULL` on a `NULL` handle). Present for every +//! indicator and bar builder. //! - `wickra__reset(h)` — clear all state. //! - `wickra__free(h)` — destroy the handle. Every `_new` must be paired //! with exactly one `_free`; there is no RAII across the C boundary. @@ -19,8 +22,11 @@ //! GENERATED from the Wickra core. Do not edit by hand — regenerate from the //! core and commit this file together with `include/wickra.h`. +use core::ffi::c_char; use core::ptr; use core::slice; +use std::ffi::CString; +use std::sync::OnceLock; use wickra_core::{ AbandonedBaby, Abcd, AbsoluteBreadthIndex, AccelerationBands, AcceleratorOscillator, @@ -181,6 +187,25 @@ pub unsafe extern "C" fn wickra_adaptive_cycle_is_ready(handle: *mut AdaptiveCyc } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_adaptive_cycle_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_adaptive_cycle_name(handle: *mut AdaptiveCycle) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -283,6 +308,27 @@ pub unsafe extern "C" fn wickra_adaptive_laguerre_filter_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_adaptive_laguerre_filter_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_adaptive_laguerre_filter_name( + handle: *mut AdaptiveLaguerreFilter, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -378,6 +424,25 @@ pub unsafe extern "C" fn wickra_adaptive_rsi_is_ready(handle: *mut AdaptiveRsi) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_adaptive_rsi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_adaptive_rsi_name(handle: *mut AdaptiveRsi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -471,6 +536,25 @@ pub unsafe extern "C" fn wickra_alma_is_ready(handle: *mut Alma) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_alma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_alma_name(handle: *mut Alma) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -561,6 +645,25 @@ pub unsafe extern "C" fn wickra_anchored_rsi_is_ready(handle: *mut AnchoredRsi) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_anchored_rsi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_anchored_rsi_name(handle: *mut AnchoredRsi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -654,6 +757,25 @@ pub unsafe extern "C" fn wickra_apo_is_ready(handle: *mut Apo) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_apo_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_apo_name(handle: *mut Apo) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -752,6 +874,27 @@ pub unsafe extern "C" fn wickra_autocorrelation_is_ready(handle: *mut Autocorrel } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_autocorrelation_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_autocorrelation_name( + handle: *mut Autocorrelation, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -855,6 +998,27 @@ pub unsafe extern "C" fn wickra_autocorrelation_periodogram_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_autocorrelation_periodogram_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_autocorrelation_periodogram_name( + handle: *mut AutocorrelationPeriodogram, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -957,6 +1121,27 @@ pub unsafe extern "C" fn wickra_average_drawdown_is_ready(handle: *mut AverageDr } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_average_drawdown_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_average_drawdown_name( + handle: *mut AverageDrawdown, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -1055,6 +1240,25 @@ pub unsafe extern "C" fn wickra_bandpass_filter_is_ready(handle: *mut BandpassFi } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_bandpass_filter_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_bandpass_filter_name(handle: *mut BandpassFilter) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -1153,6 +1357,27 @@ pub unsafe extern "C" fn wickra_bipower_variation_is_ready(handle: *mut BipowerV } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_bipower_variation_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_bipower_variation_name( + handle: *mut BipowerVariation, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -1256,6 +1481,27 @@ pub unsafe extern "C" fn wickra_bollinger_bandwidth_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_bollinger_bandwidth_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_bollinger_bandwidth_name( + handle: *mut BollingerBandwidth, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -1349,6 +1595,25 @@ pub unsafe extern "C" fn wickra_burke_ratio_is_ready(handle: *mut BurkeRatio) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_burke_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_burke_ratio_name(handle: *mut BurkeRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -1442,6 +1707,25 @@ pub unsafe extern "C" fn wickra_calmar_ratio_is_ready(handle: *mut CalmarRatio) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_calmar_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_calmar_ratio_name(handle: *mut CalmarRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -1540,6 +1824,27 @@ pub unsafe extern "C" fn wickra_center_of_gravity_is_ready(handle: *mut CenterOf } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_center_of_gravity_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_center_of_gravity_name( + handle: *mut CenterOfGravity, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -1633,6 +1938,25 @@ pub unsafe extern "C" fn wickra_cfo_is_ready(handle: *mut Cfo) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_cfo_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_cfo_name(handle: *mut Cfo) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -1726,6 +2050,25 @@ pub unsafe extern "C" fn wickra_cmo_is_ready(handle: *mut Cmo) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_cmo_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_cmo_name(handle: *mut Cmo) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -1828,6 +2171,27 @@ pub unsafe extern "C" fn wickra_coefficient_of_variation_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_coefficient_of_variation_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_coefficient_of_variation_name( + handle: *mut CoefficientOfVariation, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -1928,6 +2292,27 @@ pub unsafe extern "C" fn wickra_common_sense_ratio_is_ready(handle: *mut CommonS } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_common_sense_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_common_sense_ratio_name( + handle: *mut CommonSenseRatio, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -2031,6 +2416,27 @@ pub unsafe extern "C" fn wickra_conditional_value_at_risk_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_conditional_value_at_risk_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_conditional_value_at_risk_name( + handle: *mut ConditionalValueAtRisk, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -2132,6 +2538,25 @@ pub unsafe extern "C" fn wickra_connors_rsi_is_ready(handle: *mut ConnorsRsi) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_connors_rsi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_connors_rsi_name(handle: *mut ConnorsRsi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -2229,6 +2654,25 @@ pub unsafe extern "C" fn wickra_coppock_is_ready(handle: *mut Coppock) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_coppock_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_coppock_name(handle: *mut Coppock) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -2331,6 +2775,27 @@ pub unsafe extern "C" fn wickra_correlation_trend_indicator_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_correlation_trend_indicator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_correlation_trend_indicator_name( + handle: *mut CorrelationTrendIndicator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -2433,6 +2898,27 @@ pub unsafe extern "C" fn wickra_cybernetic_cycle_is_ready(handle: *mut Cyberneti } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_cybernetic_cycle_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_cybernetic_cycle_name( + handle: *mut CyberneticCycle, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -2526,6 +3012,25 @@ pub unsafe extern "C" fn wickra_decycler_is_ready(handle: *mut Decycler) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_decycler_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_decycler_name(handle: *mut Decycler) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -2629,6 +3134,27 @@ pub unsafe extern "C" fn wickra_decycler_oscillator_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_decycler_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_decycler_oscillator_name( + handle: *mut DecyclerOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -2722,6 +3248,25 @@ pub unsafe extern "C" fn wickra_dema_is_ready(handle: *mut Dema) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_dema_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_dema_name(handle: *mut Dema) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -2827,6 +3372,27 @@ pub unsafe extern "C" fn wickra_derivative_oscillator_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_derivative_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_derivative_oscillator_name( + handle: *mut DerivativeOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -2925,6 +3491,27 @@ pub unsafe extern "C" fn wickra_detrended_std_dev_is_ready(handle: *mut Detrende } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_detrended_std_dev_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_detrended_std_dev_name( + handle: *mut DetrendedStdDev, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -3023,6 +3610,25 @@ pub unsafe extern "C" fn wickra_disparity_index_is_ready(handle: *mut DisparityI } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_disparity_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_disparity_index_name(handle: *mut DisparityIndex) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -3116,6 +3722,25 @@ pub unsafe extern "C" fn wickra_dpo_is_ready(handle: *mut Dpo) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_dpo_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_dpo_name(handle: *mut Dpo) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -3211,6 +3836,27 @@ pub unsafe extern "C" fn wickra_drawdown_duration_is_ready(handle: *mut Drawdown } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_drawdown_duration_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_drawdown_duration_name( + handle: *mut DrawdownDuration, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -3311,6 +3957,27 @@ pub unsafe extern "C" fn wickra_dynamic_momentum_index_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_dynamic_momentum_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_dynamic_momentum_index_name( + handle: *mut DynamicMomentumIndex, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -3409,6 +4076,27 @@ pub unsafe extern "C" fn wickra_ehlers_stochastic_is_ready(handle: *mut EhlersSt } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ehlers_stochastic_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ehlers_stochastic_name( + handle: *mut EhlersStochastic, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -3502,6 +4190,25 @@ pub unsafe extern "C" fn wickra_ehma_is_ready(handle: *mut Ehma) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ehma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ehma_name(handle: *mut Ehma) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -3600,6 +4307,25 @@ pub unsafe extern "C" fn wickra_elder_impulse_is_ready(handle: *mut ElderImpulse } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_elder_impulse_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_elder_impulse_name(handle: *mut ElderImpulse) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -3693,6 +4419,25 @@ pub unsafe extern "C" fn wickra_ema_is_ready(handle: *mut Ema) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ema_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ema_name(handle: *mut Ema) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -3796,6 +4541,27 @@ pub unsafe extern "C" fn wickra_empirical_mode_decomposition_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_empirical_mode_decomposition_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_empirical_mode_decomposition_name( + handle: *mut EmpiricalModeDecomposition, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -3903,6 +4669,27 @@ pub unsafe extern "C" fn wickra_even_better_sinewave_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_even_better_sinewave_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_even_better_sinewave_name( + handle: *mut EvenBetterSinewave, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -4001,6 +4788,25 @@ pub unsafe extern "C" fn wickra_ewma_volatility_is_ready(handle: *mut EwmaVolati } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ewma_volatility_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ewma_volatility_name(handle: *mut EwmaVolatility) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -4094,6 +4900,25 @@ pub unsafe extern "C" fn wickra_expectancy_is_ready(handle: *mut Expectancy) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_expectancy_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_expectancy_name(handle: *mut Expectancy) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -4187,6 +5012,25 @@ pub unsafe extern "C" fn wickra_fama_is_ready(handle: *mut Fama) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fama_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fama_name(handle: *mut Fama) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -4280,6 +5124,25 @@ pub unsafe extern "C" fn wickra_fisher_rsi_is_ready(handle: *mut FisherRsi) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fisher_rsi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fisher_rsi_name(handle: *mut FisherRsi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -4378,6 +5241,27 @@ pub unsafe extern "C" fn wickra_fisher_transform_is_ready(handle: *mut FisherTra } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fisher_transform_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fisher_transform_name( + handle: *mut FisherTransform, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -4471,6 +5355,25 @@ pub unsafe extern "C" fn wickra_frama_is_ready(handle: *mut Frama) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_frama_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_frama_name(handle: *mut Frama) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -4567,6 +5470,25 @@ pub unsafe extern "C" fn wickra_gain_loss_ratio_is_ready(handle: *mut GainLossRa } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_gain_loss_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_gain_loss_ratio_name(handle: *mut GainLossRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -4665,6 +5587,27 @@ pub unsafe extern "C" fn wickra_gain_to_pain_ratio_is_ready(handle: *mut GainToP } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_gain_to_pain_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_gain_to_pain_ratio_name( + handle: *mut GainToPainRatio, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -4758,6 +5701,25 @@ pub unsafe extern "C" fn wickra_garch11_is_ready(handle: *mut Garch11) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_garch11_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_garch11_name(handle: *mut Garch11) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -4856,6 +5818,27 @@ pub unsafe extern "C" fn wickra_generalized_dema_is_ready(handle: *mut Generaliz } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_generalized_dema_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_generalized_dema_name( + handle: *mut GeneralizedDema, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -4949,6 +5932,25 @@ pub unsafe extern "C" fn wickra_geometric_ma_is_ready(handle: *mut GeometricMa) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_geometric_ma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_geometric_ma_name(handle: *mut GeometricMa) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -5047,6 +6049,25 @@ pub unsafe extern "C" fn wickra_highpass_filter_is_ready(handle: *mut HighpassFi } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_highpass_filter_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_highpass_filter_name(handle: *mut HighpassFilter) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -5144,6 +6165,27 @@ pub unsafe extern "C" fn wickra_hilbert_dominant_cycle_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_hilbert_dominant_cycle_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_hilbert_dominant_cycle_name( + handle: *mut HilbertDominantCycle, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -5247,6 +6289,27 @@ pub unsafe extern "C" fn wickra_historical_volatility_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_historical_volatility_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_historical_volatility_name( + handle: *mut HistoricalVolatility, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -5340,6 +6403,25 @@ pub unsafe extern "C" fn wickra_hma_is_ready(handle: *mut Hma) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_hma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_hma_name(handle: *mut Hma) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -5433,6 +6515,25 @@ pub unsafe extern "C" fn wickra_holt_winters_is_ready(handle: *mut HoltWinters) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_holt_winters_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_holt_winters_name(handle: *mut HoltWinters) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -5523,6 +6624,25 @@ pub unsafe extern "C" fn wickra_ht_dc_phase_is_ready(handle: *mut HtDcPhase) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ht_dc_phase_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ht_dc_phase_name(handle: *mut HtDcPhase) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -5613,6 +6733,25 @@ pub unsafe extern "C" fn wickra_ht_trend_mode_is_ready(handle: *mut HtTrendMode) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ht_trend_mode_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ht_trend_mode_name(handle: *mut HtTrendMode) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -5709,6 +6848,25 @@ pub unsafe extern "C" fn wickra_hurst_exponent_is_ready(handle: *mut HurstExpone } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_hurst_exponent_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_hurst_exponent_name(handle: *mut HurstExponent) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -5809,6 +6967,27 @@ pub unsafe extern "C" fn wickra_instantaneous_trendline_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_instantaneous_trendline_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_instantaneous_trendline_name( + handle: *mut InstantaneousTrendline, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -5909,6 +7088,27 @@ pub unsafe extern "C" fn wickra_inverse_fisher_transform_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_inverse_fisher_transform_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_inverse_fisher_transform_name( + handle: *mut InverseFisherTransform, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -6004,6 +7204,25 @@ pub unsafe extern "C" fn wickra_jarque_bera_is_ready(handle: *mut JarqueBera) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_jarque_bera_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_jarque_bera_name(handle: *mut JarqueBera) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -6097,6 +7316,25 @@ pub unsafe extern "C" fn wickra_jma_is_ready(handle: *mut Jma) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_jma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_jma_name(handle: *mut Jma) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -6193,6 +7431,25 @@ pub unsafe extern "C" fn wickra_jump_indicator_is_ready(handle: *mut JumpIndicat } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_jump_indicator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_jump_indicator_name(handle: *mut JumpIndicator) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -6286,6 +7543,25 @@ pub unsafe extern "C" fn wickra_k_ratio_is_ready(handle: *mut KRatio) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_k_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_k_ratio_name(handle: *mut KRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -6379,6 +7655,25 @@ pub unsafe extern "C" fn wickra_kama_is_ready(handle: *mut Kama) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kama_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kama_name(handle: *mut Kama) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -6477,6 +7772,25 @@ pub unsafe extern "C" fn wickra_kelly_criterion_is_ready(handle: *mut KellyCrite } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kelly_criterion_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kelly_criterion_name(handle: *mut KellyCriterion) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -6570,6 +7884,25 @@ pub unsafe extern "C" fn wickra_kurtosis_is_ready(handle: *mut Kurtosis) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kurtosis_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kurtosis_name(handle: *mut Kurtosis) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -6663,6 +7996,25 @@ pub unsafe extern "C" fn wickra_laguerre_rsi_is_ready(handle: *mut LaguerreRsi) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_laguerre_rsi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_laguerre_rsi_name(handle: *mut LaguerreRsi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -6761,6 +8113,27 @@ pub unsafe extern "C" fn wickra_linear_regression_is_ready(handle: *mut LinearRe } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_linear_regression_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_linear_regression_name( + handle: *mut LinearRegression, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -6854,6 +8227,25 @@ pub unsafe extern "C" fn wickra_lin_reg_angle_is_ready(handle: *mut LinRegAngle) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_lin_reg_angle_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_lin_reg_angle_name(handle: *mut LinRegAngle) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -6952,6 +8344,27 @@ pub unsafe extern "C" fn wickra_lin_reg_intercept_is_ready(handle: *mut LinRegIn } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_lin_reg_intercept_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_lin_reg_intercept_name( + handle: *mut LinRegIntercept, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -7045,6 +8458,25 @@ pub unsafe extern "C" fn wickra_lin_reg_slope_is_ready(handle: *mut LinRegSlope) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_lin_reg_slope_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_lin_reg_slope_name(handle: *mut LinRegSlope) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -7138,6 +8570,25 @@ pub unsafe extern "C" fn wickra_log_return_is_ready(handle: *mut LogReturn) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_log_return_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_log_return_name(handle: *mut LogReturn) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -7235,6 +8686,25 @@ pub unsafe extern "C" fn wickra_m2_measure_is_ready(handle: *mut M2Measure) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_m2_measure_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_m2_measure_name(handle: *mut M2Measure) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -7335,6 +8805,25 @@ pub unsafe extern "C" fn wickra_macd_histogram_is_ready(handle: *mut MacdHistogr } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_macd_histogram_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_macd_histogram_name(handle: *mut MacdHistogram) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -7428,6 +8917,25 @@ pub unsafe extern "C" fn wickra_martin_ratio_is_ready(handle: *mut MartinRatio) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_martin_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_martin_ratio_name(handle: *mut MartinRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -7521,6 +9029,25 @@ pub unsafe extern "C" fn wickra_max_drawdown_is_ready(handle: *mut MaxDrawdown) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_max_drawdown_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_max_drawdown_name(handle: *mut MaxDrawdown) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -7619,6 +9146,27 @@ pub unsafe extern "C" fn wickra_mc_ginley_dynamic_is_ready(handle: *mut McGinley } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_mc_ginley_dynamic_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_mc_ginley_dynamic_name( + handle: *mut McGinleyDynamic, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -7721,6 +9269,27 @@ pub unsafe extern "C" fn wickra_median_absolute_deviation_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_median_absolute_deviation_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_median_absolute_deviation_name( + handle: *mut MedianAbsoluteDeviation, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -7818,6 +9387,25 @@ pub unsafe extern "C" fn wickra_median_ma_is_ready(handle: *mut MedianMa) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_median_ma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_median_ma_name(handle: *mut MedianMa) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -7911,6 +9499,25 @@ pub unsafe extern "C" fn wickra_mid_point_is_ready(handle: *mut MidPoint) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_mid_point_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_mid_point_name(handle: *mut MidPoint) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -8004,6 +9611,25 @@ pub unsafe extern "C" fn wickra_mom_is_ready(handle: *mut Mom) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_mom_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_mom_name(handle: *mut Mom) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -8097,6 +9723,25 @@ pub unsafe extern "C" fn wickra_omega_ratio_is_ready(handle: *mut OmegaRatio) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_omega_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_omega_ratio_name(handle: *mut OmegaRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -8190,6 +9835,25 @@ pub unsafe extern "C" fn wickra_pain_index_is_ready(handle: *mut PainIndex) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_pain_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_pain_index_name(handle: *mut PainIndex) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -8283,6 +9947,25 @@ pub unsafe extern "C" fn wickra_percent_b_is_ready(handle: *mut PercentB) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_percent_b_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_percent_b_name(handle: *mut PercentB) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -8383,6 +10066,27 @@ pub unsafe extern "C" fn wickra_percentage_trailing_stop_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_percentage_trailing_stop_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_percentage_trailing_stop_name( + handle: *mut PercentageTrailingStop, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -8478,6 +10182,25 @@ pub unsafe extern "C" fn wickra_pmo_is_ready(handle: *mut Pmo) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_pmo_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_pmo_name(handle: *mut Pmo) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -8581,6 +10304,27 @@ pub unsafe extern "C" fn wickra_polarized_fractal_efficiency_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_polarized_fractal_efficiency_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_polarized_fractal_efficiency_name( + handle: *mut PolarizedFractalEfficiency, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -8678,6 +10422,25 @@ pub unsafe extern "C" fn wickra_ppo_is_ready(handle: *mut Ppo) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ppo_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ppo_name(handle: *mut Ppo) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -8775,6 +10538,25 @@ pub unsafe extern "C" fn wickra_ppo_histogram_is_ready(handle: *mut PpoHistogram } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ppo_histogram_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ppo_histogram_name(handle: *mut PpoHistogram) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -8868,6 +10650,25 @@ pub unsafe extern "C" fn wickra_profit_factor_is_ready(handle: *mut ProfitFactor } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_profit_factor_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_profit_factor_name(handle: *mut ProfitFactor) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -8961,6 +10762,25 @@ pub unsafe extern "C" fn wickra_r_squared_is_ready(handle: *mut RSquared) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_r_squared_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_r_squared_name(handle: *mut RSquared) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -9061,6 +10881,27 @@ pub unsafe extern "C" fn wickra_realized_volatility_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_realized_volatility_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_realized_volatility_name( + handle: *mut RealizedVolatility, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -9156,6 +10997,25 @@ pub unsafe extern "C" fn wickra_recovery_factor_is_ready(handle: *mut RecoveryFa } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_recovery_factor_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_recovery_factor_name(handle: *mut RecoveryFactor) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -9249,6 +11109,25 @@ pub unsafe extern "C" fn wickra_reflex_is_ready(handle: *mut Reflex) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_reflex_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_reflex_name(handle: *mut Reflex) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -9342,6 +11221,25 @@ pub unsafe extern "C" fn wickra_regime_label_is_ready(handle: *mut RegimeLabel) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_regime_label_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_regime_label_name(handle: *mut RegimeLabel) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -9442,6 +11340,27 @@ pub unsafe extern "C" fn wickra_renko_trailing_stop_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_renko_trailing_stop_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_renko_trailing_stop_name( + handle: *mut RenkoTrailingStop, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -9535,6 +11454,25 @@ pub unsafe extern "C" fn wickra_rmi_is_ready(handle: *mut Rmi) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rmi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rmi_name(handle: *mut Rmi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -9628,6 +11566,25 @@ pub unsafe extern "C" fn wickra_roc_is_ready(handle: *mut Roc) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_roc_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_roc_name(handle: *mut Roc) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -9721,6 +11678,25 @@ pub unsafe extern "C" fn wickra_rocp_is_ready(handle: *mut Rocp) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rocp_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rocp_name(handle: *mut Rocp) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -9814,6 +11790,25 @@ pub unsafe extern "C" fn wickra_rocr_is_ready(handle: *mut Rocr) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rocr_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rocr_name(handle: *mut Rocr) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -9907,6 +11902,25 @@ pub unsafe extern "C" fn wickra_rocr100_is_ready(handle: *mut Rocr100) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rocr100_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rocr100_name(handle: *mut Rocr100) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -10000,6 +12014,25 @@ pub unsafe extern "C" fn wickra_rolling_iqr_is_ready(handle: *mut RollingIqr) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rolling_iqr_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rolling_iqr_name(handle: *mut RollingIqr) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -10100,6 +12133,27 @@ pub unsafe extern "C" fn wickra_rolling_min_max_scaler_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rolling_min_max_scaler_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rolling_min_max_scaler_name( + handle: *mut RollingMinMaxScaler, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -10200,6 +12254,27 @@ pub unsafe extern "C" fn wickra_rolling_percentile_rank_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rolling_percentile_rank_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rolling_percentile_rank_name( + handle: *mut RollingPercentileRank, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -10301,6 +12376,27 @@ pub unsafe extern "C" fn wickra_rolling_quantile_is_ready(handle: *mut RollingQu } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rolling_quantile_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rolling_quantile_name( + handle: *mut RollingQuantile, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -10400,6 +12496,25 @@ pub unsafe extern "C" fn wickra_roofing_filter_is_ready(handle: *mut RoofingFilt } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_roofing_filter_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_roofing_filter_name(handle: *mut RoofingFilter) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -10493,6 +12608,25 @@ pub unsafe extern "C" fn wickra_rsi_is_ready(handle: *mut Rsi) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rsi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rsi_name(handle: *mut Rsi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -10586,6 +12720,25 @@ pub unsafe extern "C" fn wickra_rsx_is_ready(handle: *mut Rsx) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rsx_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rsx_name(handle: *mut Rsx) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -10682,6 +12835,25 @@ pub unsafe extern "C" fn wickra_rvi_volatility_is_ready(handle: *mut RviVolatili } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rvi_volatility_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rvi_volatility_name(handle: *mut RviVolatility) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -10782,6 +12954,25 @@ pub unsafe extern "C" fn wickra_sample_entropy_is_ready(handle: *mut SampleEntro } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_sample_entropy_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_sample_entropy_name(handle: *mut SampleEntropy) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -10880,6 +13071,25 @@ pub unsafe extern "C" fn wickra_shannon_entropy_is_ready(handle: *mut ShannonEnt } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_shannon_entropy_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_shannon_entropy_name(handle: *mut ShannonEntropy) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -10973,6 +13183,25 @@ pub unsafe extern "C" fn wickra_sharpe_ratio_is_ready(handle: *mut SharpeRatio) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_sharpe_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_sharpe_ratio_name(handle: *mut SharpeRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -11063,6 +13292,25 @@ pub unsafe extern "C" fn wickra_sine_wave_is_ready(handle: *mut SineWave) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_sine_wave_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_sine_wave_name(handle: *mut SineWave) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -11161,6 +13409,27 @@ pub unsafe extern "C" fn wickra_sine_weighted_ma_is_ready(handle: *mut SineWeigh } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_sine_weighted_ma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_sine_weighted_ma_name( + handle: *mut SineWeightedMa, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -11254,6 +13523,25 @@ pub unsafe extern "C" fn wickra_skewness_is_ready(handle: *mut Skewness) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_skewness_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_skewness_name(handle: *mut Skewness) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -11347,6 +13635,25 @@ pub unsafe extern "C" fn wickra_sma_is_ready(handle: *mut Sma) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_sma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_sma_name(handle: *mut Sma) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -11440,6 +13747,25 @@ pub unsafe extern "C" fn wickra_smma_is_ready(handle: *mut Smma) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_smma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_smma_name(handle: *mut Smma) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -11533,6 +13859,25 @@ pub unsafe extern "C" fn wickra_sortino_ratio_is_ready(handle: *mut SortinoRatio } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_sortino_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_sortino_ratio_name(handle: *mut SortinoRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -11629,6 +13974,25 @@ pub unsafe extern "C" fn wickra_standard_error_is_ready(handle: *mut StandardErr } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_standard_error_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_standard_error_name(handle: *mut StandardError) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -11727,6 +14091,25 @@ pub unsafe extern "C" fn wickra_stc_is_ready(handle: *mut Stc) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_stc_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_stc_name(handle: *mut Stc) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -11820,6 +14203,25 @@ pub unsafe extern "C" fn wickra_std_dev_is_ready(handle: *mut StdDev) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_std_dev_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_std_dev_name(handle: *mut StdDev) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -11918,6 +14320,27 @@ pub unsafe extern "C" fn wickra_step_trailing_stop_is_ready(handle: *mut StepTra } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_step_trailing_stop_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_step_trailing_stop_name( + handle: *mut StepTrailingStop, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -12014,6 +14437,25 @@ pub unsafe extern "C" fn wickra_sterling_ratio_is_ready(handle: *mut SterlingRat } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_sterling_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_sterling_ratio_name(handle: *mut SterlingRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -12107,6 +14549,25 @@ pub unsafe extern "C" fn wickra_stoch_rsi_is_ready(handle: *mut StochRsi) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_stoch_rsi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_stoch_rsi_name(handle: *mut StochRsi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -12203,6 +14664,25 @@ pub unsafe extern "C" fn wickra_super_smoother_is_ready(handle: *mut SuperSmooth } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_super_smoother_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_super_smoother_name(handle: *mut SuperSmoother) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -12296,6 +14776,25 @@ pub unsafe extern "C" fn wickra_t3_is_ready(handle: *mut T3) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_t3_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_t3_name(handle: *mut T3) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -12389,6 +14888,25 @@ pub unsafe extern "C" fn wickra_tail_ratio_is_ready(handle: *mut TailRatio) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tail_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tail_ratio_name(handle: *mut TailRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -12482,6 +15000,25 @@ pub unsafe extern "C" fn wickra_tema_is_ready(handle: *mut Tema) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tema_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tema_name(handle: *mut Tema) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -12575,6 +15112,25 @@ pub unsafe extern "C" fn wickra_tii_is_ready(handle: *mut Tii) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tii_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tii_name(handle: *mut Tii) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -12668,6 +15224,25 @@ pub unsafe extern "C" fn wickra_trend_label_is_ready(handle: *mut TrendLabel) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_trend_label_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_trend_label_name(handle: *mut TrendLabel) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -12768,6 +15343,27 @@ pub unsafe extern "C" fn wickra_trend_strength_index_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_trend_strength_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_trend_strength_index_name( + handle: *mut TrendStrengthIndex, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -12861,6 +15457,25 @@ pub unsafe extern "C" fn wickra_trendflex_is_ready(handle: *mut Trendflex) -> bo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_trendflex_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_trendflex_name(handle: *mut Trendflex) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -12954,6 +15569,25 @@ pub unsafe extern "C" fn wickra_trima_is_ready(handle: *mut Trima) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_trima_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_trima_name(handle: *mut Trima) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -13047,6 +15681,25 @@ pub unsafe extern "C" fn wickra_trix_is_ready(handle: *mut Trix) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_trix_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_trix_name(handle: *mut Trix) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -13140,6 +15793,25 @@ pub unsafe extern "C" fn wickra_tsf_is_ready(handle: *mut Tsf) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tsf_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tsf_name(handle: *mut Tsf) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -13236,6 +15908,25 @@ pub unsafe extern "C" fn wickra_tsf_oscillator_is_ready(handle: *mut TsfOscillat } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tsf_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tsf_oscillator_name(handle: *mut TsfOscillator) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -13329,6 +16020,25 @@ pub unsafe extern "C" fn wickra_tsi_is_ready(handle: *mut Tsi) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tsi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tsi_name(handle: *mut Tsi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -13422,6 +16132,25 @@ pub unsafe extern "C" fn wickra_ulcer_index_is_ready(handle: *mut UlcerIndex) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ulcer_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ulcer_index_name(handle: *mut UlcerIndex) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -13522,6 +16251,27 @@ pub unsafe extern "C" fn wickra_universal_oscillator_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_universal_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_universal_oscillator_name( + handle: *mut UniversalOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -13625,6 +16375,27 @@ pub unsafe extern "C" fn wickra_upside_potential_ratio_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_upside_potential_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_upside_potential_ratio_name( + handle: *mut UpsidePotentialRatio, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -13718,6 +16489,25 @@ pub unsafe extern "C" fn wickra_value_at_risk_is_ready(handle: *mut ValueAtRisk) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_value_at_risk_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_value_at_risk_name(handle: *mut ValueAtRisk) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -13811,6 +16601,25 @@ pub unsafe extern "C" fn wickra_variance_is_ready(handle: *mut Variance) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_variance_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_variance_name(handle: *mut Variance) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -13913,6 +16722,27 @@ pub unsafe extern "C" fn wickra_vertical_horizontal_filter_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_vertical_horizontal_filter_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_vertical_horizontal_filter_name( + handle: *mut VerticalHorizontalFilter, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -14010,6 +16840,25 @@ pub unsafe extern "C" fn wickra_vidya_is_ready(handle: *mut Vidya) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_vidya_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_vidya_name(handle: *mut Vidya) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -14113,6 +16962,27 @@ pub unsafe extern "C" fn wickra_volatility_of_volatility_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_volatility_of_volatility_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_volatility_of_volatility_name( + handle: *mut VolatilityOfVolatility, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -14208,6 +17078,25 @@ pub unsafe extern "C" fn wickra_wave_pm_is_ready(handle: *mut WavePm) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_wave_pm_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_wave_pm_name(handle: *mut WavePm) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -14301,6 +17190,25 @@ pub unsafe extern "C" fn wickra_win_rate_is_ready(handle: *mut WinRate) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_win_rate_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_win_rate_name(handle: *mut WinRate) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -14394,6 +17302,25 @@ pub unsafe extern "C" fn wickra_wma_is_ready(handle: *mut Wma) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_wma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_wma_name(handle: *mut Wma) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -14487,6 +17414,25 @@ pub unsafe extern "C" fn wickra_z_score_is_ready(handle: *mut ZScore) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_z_score_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_z_score_name(handle: *mut ZScore) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -14580,6 +17526,25 @@ pub unsafe extern "C" fn wickra_zlema_is_ready(handle: *mut Zlema) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_zlema_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_zlema_name(handle: *mut Zlema) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -14677,6 +17642,25 @@ pub unsafe extern "C" fn wickra_alpha_is_ready(handle: *mut Alpha) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_alpha_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_alpha_name(handle: *mut Alpha) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -14772,6 +17756,25 @@ pub unsafe extern "C" fn wickra_beta_is_ready(handle: *mut Beta) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_beta_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_beta_name(handle: *mut Beta) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -14875,6 +17878,27 @@ pub unsafe extern "C" fn wickra_beta_neutral_spread_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_beta_neutral_spread_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_beta_neutral_spread_name( + handle: *mut BetaNeutralSpread, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -14974,6 +17998,25 @@ pub unsafe extern "C" fn wickra_distance_ssd_is_ready(handle: *mut DistanceSsd) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_distance_ssd_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_distance_ssd_name(handle: *mut DistanceSsd) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -15075,6 +18118,27 @@ pub unsafe extern "C" fn wickra_granger_causality_is_ready(handle: *mut GrangerC } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_granger_causality_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_granger_causality_name( + handle: *mut GrangerCausality, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -15180,6 +18244,27 @@ pub unsafe extern "C" fn wickra_hasbrouck_information_share_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_hasbrouck_information_share_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_hasbrouck_information_share_name( + handle: *mut HasbrouckInformationShare, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -15285,6 +18370,27 @@ pub unsafe extern "C" fn wickra_information_ratio_is_ready(handle: *mut Informat } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_information_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_information_ratio_name( + handle: *mut InformationRatio, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -15380,6 +18486,25 @@ pub unsafe extern "C" fn wickra_kendall_tau_is_ready(handle: *mut KendallTau) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kendall_tau_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kendall_tau_name(handle: *mut KendallTau) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -15479,6 +18604,25 @@ pub unsafe extern "C" fn wickra_ou_half_life_is_ready(handle: *mut OuHalfLife) - } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ou_half_life_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ou_half_life_name(handle: *mut OuHalfLife) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -15585,6 +18729,27 @@ pub unsafe extern "C" fn wickra_pair_spread_z_score_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_pair_spread_z_score_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_pair_spread_z_score_name( + handle: *mut PairSpreadZScore, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -15684,6 +18849,25 @@ pub unsafe extern "C" fn wickra_pairwise_beta_is_ready(handle: *mut PairwiseBeta } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_pairwise_beta_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_pairwise_beta_name(handle: *mut PairwiseBeta) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -15787,6 +18971,27 @@ pub unsafe extern "C" fn wickra_pearson_correlation_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_pearson_correlation_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_pearson_correlation_name( + handle: *mut PearsonCorrelation, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -15890,6 +19095,27 @@ pub unsafe extern "C" fn wickra_rolling_correlation_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rolling_correlation_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rolling_correlation_name( + handle: *mut RollingCorrelation, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -15993,6 +19219,27 @@ pub unsafe extern "C" fn wickra_rolling_covariance_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rolling_covariance_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rolling_covariance_name( + handle: *mut RollingCovariance, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -16096,6 +19343,27 @@ pub unsafe extern "C" fn wickra_spearman_correlation_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_spearman_correlation_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_spearman_correlation_name( + handle: *mut SpearmanCorrelation, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -16199,6 +19467,27 @@ pub unsafe extern "C" fn wickra_spread_ar1_coefficient_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_spread_ar1_coefficient_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_spread_ar1_coefficient_name( + handle: *mut SpreadAr1Coefficient, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -16298,6 +19587,25 @@ pub unsafe extern "C" fn wickra_spread_hurst_is_ready(handle: *mut SpreadHurst) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_spread_hurst_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_spread_hurst_name(handle: *mut SpreadHurst) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -16397,6 +19705,25 @@ pub unsafe extern "C" fn wickra_treynor_ratio_is_ready(handle: *mut TreynorRatio } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_treynor_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_treynor_ratio_name(handle: *mut TreynorRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -16496,6 +19823,25 @@ pub unsafe extern "C" fn wickra_variance_ratio_is_ready(handle: *mut VarianceRat } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_variance_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_variance_ratio_name(handle: *mut VarianceRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -16630,6 +19976,25 @@ pub unsafe extern "C" fn wickra_abandoned_baby_is_ready(handle: *mut AbandonedBa } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_abandoned_baby_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_abandoned_baby_name(handle: *mut AbandonedBaby) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -16762,6 +20127,25 @@ pub unsafe extern "C" fn wickra_abcd_is_ready(handle: *mut Abcd) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_abcd_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_abcd_name(handle: *mut Abcd) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -16905,6 +20289,27 @@ pub unsafe extern "C" fn wickra_accelerator_oscillator_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_accelerator_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_accelerator_oscillator_name( + handle: *mut AcceleratorOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -17037,6 +20442,25 @@ pub unsafe extern "C" fn wickra_ad_oscillator_is_ready(handle: *mut AdOscillator } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ad_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ad_oscillator_name(handle: *mut AdOscillator) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -17172,6 +20596,25 @@ pub unsafe extern "C" fn wickra_adaptive_cci_is_ready(handle: *mut AdaptiveCci) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_adaptive_cci_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_adaptive_cci_name(handle: *mut AdaptiveCci) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -17304,6 +20747,25 @@ pub unsafe extern "C" fn wickra_adl_is_ready(handle: *mut Adl) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_adl_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_adl_name(handle: *mut Adl) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -17436,6 +20898,25 @@ pub unsafe extern "C" fn wickra_advance_block_is_ready(handle: *mut AdvanceBlock } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_advance_block_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_advance_block_name(handle: *mut AdvanceBlock) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -17571,6 +21052,25 @@ pub unsafe extern "C" fn wickra_adxr_is_ready(handle: *mut Adxr) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_adxr_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_adxr_name(handle: *mut Adxr) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -17703,6 +21203,25 @@ pub unsafe extern "C" fn wickra_anchored_vwap_is_ready(handle: *mut AnchoredVwap } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_anchored_vwap_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_anchored_vwap_name(handle: *mut AnchoredVwap) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -17840,6 +21359,27 @@ pub unsafe extern "C" fn wickra_aroon_oscillator_is_ready(handle: *mut AroonOsci } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_aroon_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_aroon_oscillator_name( + handle: *mut AroonOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -17975,6 +21515,25 @@ pub unsafe extern "C" fn wickra_atr_is_ready(handle: *mut Atr) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_atr_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_atr_name(handle: *mut Atr) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -18115,6 +21674,27 @@ pub unsafe extern "C" fn wickra_atr_trailing_stop_is_ready(handle: *mut AtrTrail } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_atr_trailing_stop_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_atr_trailing_stop_name( + handle: *mut AtrTrailingStop, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -18257,6 +21837,27 @@ pub unsafe extern "C" fn wickra_average_daily_range_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_average_daily_range_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_average_daily_range_name( + handle: *mut AverageDailyRange, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -18389,6 +21990,25 @@ pub unsafe extern "C" fn wickra_avg_price_is_ready(handle: *mut AvgPrice) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_avg_price_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_avg_price_name(handle: *mut AvgPrice) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -18531,6 +22151,27 @@ pub unsafe extern "C" fn wickra_awesome_oscillator_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_awesome_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_awesome_oscillator_name( + handle: *mut AwesomeOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -18560,9 +22201,9 @@ pub unsafe extern "C" fn wickra_awesome_oscillator_free(handle: *mut AwesomeOsci pub extern "C" fn wickra_awesome_oscillator_histogram_new( fast: usize, slow: usize, - sma_period: usize, + lookback: usize, ) -> *mut AwesomeOscillatorHistogram { - match AwesomeOscillatorHistogram::new(fast, slow, sma_period) { + match AwesomeOscillatorHistogram::new(fast, slow, lookback) { Ok(ind) => Box::into_raw(Box::new(ind)), Err(_) => ptr::null_mut(), } @@ -18674,6 +22315,27 @@ pub unsafe extern "C" fn wickra_awesome_oscillator_histogram_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_awesome_oscillator_histogram_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_awesome_oscillator_histogram_name( + handle: *mut AwesomeOscillatorHistogram, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -18812,6 +22474,27 @@ pub unsafe extern "C" fn wickra_balance_of_power_is_ready(handle: *mut BalanceOf } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_balance_of_power_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_balance_of_power_name( + handle: *mut BalanceOfPower, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -18944,6 +22627,25 @@ pub unsafe extern "C" fn wickra_bat_is_ready(handle: *mut Bat) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_bat_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_bat_name(handle: *mut Bat) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -19076,6 +22778,25 @@ pub unsafe extern "C" fn wickra_belt_hold_is_ready(handle: *mut BeltHold) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_belt_hold_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_belt_hold_name(handle: *mut BeltHold) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -19211,6 +22932,25 @@ pub unsafe extern "C" fn wickra_better_volume_is_ready(handle: *mut BetterVolume } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_better_volume_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_better_volume_name(handle: *mut BetterVolume) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -19343,6 +23083,25 @@ pub unsafe extern "C" fn wickra_body_size_pct_is_ready(handle: *mut BodySizePct) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_body_size_pct_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_body_size_pct_name(handle: *mut BodySizePct) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -19475,6 +23234,25 @@ pub unsafe extern "C" fn wickra_breakaway_is_ready(handle: *mut Breakaway) -> bo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_breakaway_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_breakaway_name(handle: *mut Breakaway) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -19607,6 +23385,25 @@ pub unsafe extern "C" fn wickra_butterfly_is_ready(handle: *mut Butterfly) -> bo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_butterfly_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_butterfly_name(handle: *mut Butterfly) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -19742,6 +23539,25 @@ pub unsafe extern "C" fn wickra_cci_is_ready(handle: *mut Cci) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_cci_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_cci_name(handle: *mut Cci) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -19884,6 +23700,27 @@ pub unsafe extern "C" fn wickra_chaikin_oscillator_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_chaikin_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_chaikin_oscillator_name( + handle: *mut ChaikinOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -20026,6 +23863,27 @@ pub unsafe extern "C" fn wickra_chaikin_volatility_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_chaikin_volatility_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_chaikin_volatility_name( + handle: *mut ChaikinVolatility, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -20163,6 +24021,27 @@ pub unsafe extern "C" fn wickra_choppiness_index_is_ready(handle: *mut Choppines } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_choppiness_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_choppiness_index_name( + handle: *mut ChoppinessIndex, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -20295,6 +24174,25 @@ pub unsafe extern "C" fn wickra_close_vs_open_is_ready(handle: *mut CloseVsOpen) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_close_vs_open_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_close_vs_open_name(handle: *mut CloseVsOpen) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -20429,6 +24327,27 @@ pub unsafe extern "C" fn wickra_closing_marubozu_is_ready(handle: *mut ClosingMa } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_closing_marubozu_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_closing_marubozu_name( + handle: *mut ClosingMarubozu, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -20566,6 +24485,27 @@ pub unsafe extern "C" fn wickra_chaikin_money_flow_is_ready(handle: *mut Chaikin } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_chaikin_money_flow_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_chaikin_money_flow_name( + handle: *mut ChaikinMoneyFlow, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -20702,6 +24642,27 @@ pub unsafe extern "C" fn wickra_concealing_baby_swallow_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_concealing_baby_swallow_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_concealing_baby_swallow_name( + handle: *mut ConcealingBabySwallow, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -20834,6 +24795,25 @@ pub unsafe extern "C" fn wickra_counterattack_is_ready(handle: *mut Counterattac } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_counterattack_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_counterattack_name(handle: *mut Counterattack) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -20966,6 +24946,25 @@ pub unsafe extern "C" fn wickra_crab_is_ready(handle: *mut Crab) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_crab_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_crab_name(handle: *mut Crab) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -21098,6 +25097,25 @@ pub unsafe extern "C" fn wickra_cup_and_handle_is_ready(handle: *mut CupAndHandl } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_cup_and_handle_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_cup_and_handle_name(handle: *mut CupAndHandle) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -21230,6 +25248,25 @@ pub unsafe extern "C" fn wickra_cypher_is_ready(handle: *mut Cypher) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_cypher_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_cypher_name(handle: *mut Cypher) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -21365,6 +25402,25 @@ pub unsafe extern "C" fn wickra_demand_index_is_ready(handle: *mut DemandIndex) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_demand_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_demand_index_name(handle: *mut DemandIndex) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -21497,6 +25553,25 @@ pub unsafe extern "C" fn wickra_doji_is_ready(handle: *mut Doji) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_doji_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_doji_name(handle: *mut Doji) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -21629,6 +25704,25 @@ pub unsafe extern "C" fn wickra_doji_star_is_ready(handle: *mut DojiStar) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_doji_star_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_doji_star_name(handle: *mut DojiStar) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -21763,6 +25857,27 @@ pub unsafe extern "C" fn wickra_double_top_bottom_is_ready(handle: *mut DoubleTo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_double_top_bottom_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_double_top_bottom_name( + handle: *mut DoubleTopBottom, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -21899,6 +26014,27 @@ pub unsafe extern "C" fn wickra_downside_gap_three_methods_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_downside_gap_three_methods_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_downside_gap_three_methods_name( + handle: *mut DownsideGapThreeMethods, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -22035,6 +26171,25 @@ pub unsafe extern "C" fn wickra_dragonfly_doji_is_ready(handle: *mut DragonflyDo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_dragonfly_doji_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_dragonfly_doji_name(handle: *mut DragonflyDoji) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -22170,6 +26325,25 @@ pub unsafe extern "C" fn wickra_dumpling_top_is_ready(handle: *mut DumplingTop) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_dumpling_top_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_dumpling_top_name(handle: *mut DumplingTop) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -22305,6 +26479,25 @@ pub unsafe extern "C" fn wickra_dx_is_ready(handle: *mut Dx) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_dx_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_dx_name(handle: *mut Dx) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -22442,6 +26635,27 @@ pub unsafe extern "C" fn wickra_ease_of_movement_is_ready(handle: *mut EaseOfMov } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ease_of_movement_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ease_of_movement_name( + handle: *mut EaseOfMovement, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -22574,6 +26788,25 @@ pub unsafe extern "C" fn wickra_engulfing_is_ready(handle: *mut Engulfing) -> bo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_engulfing_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_engulfing_name(handle: *mut Engulfing) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -22708,6 +26941,27 @@ pub unsafe extern "C" fn wickra_evening_doji_star_is_ready(handle: *mut EveningD } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_evening_doji_star_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_evening_doji_star_name( + handle: *mut EveningDojiStar, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -22843,6 +27097,25 @@ pub unsafe extern "C" fn wickra_evwma_is_ready(handle: *mut Evwma) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_evwma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_evwma_name(handle: *mut Evwma) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -22979,6 +27252,27 @@ pub unsafe extern "C" fn wickra_falling_three_methods_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_falling_three_methods_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_falling_three_methods_name( + handle: *mut FallingThreeMethods, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -23111,6 +27405,25 @@ pub unsafe extern "C" fn wickra_flag_pennant_is_ready(handle: *mut FlagPennant) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_flag_pennant_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_flag_pennant_name(handle: *mut FlagPennant) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -23246,6 +27559,25 @@ pub unsafe extern "C" fn wickra_force_index_is_ready(handle: *mut ForceIndex) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_force_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_force_index_name(handle: *mut ForceIndex) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -23381,6 +27713,25 @@ pub unsafe extern "C" fn wickra_fry_pan_bottom_is_ready(handle: *mut FryPanBotto } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fry_pan_bottom_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fry_pan_bottom_name(handle: *mut FryPanBottom) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -23517,6 +27868,27 @@ pub unsafe extern "C" fn wickra_gap_side_by_side_white_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_gap_side_by_side_white_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_gap_side_by_side_white_name( + handle: *mut GapSideBySideWhite, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -23659,6 +28031,27 @@ pub unsafe extern "C" fn wickra_garman_klass_volatility_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_garman_klass_volatility_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_garman_klass_volatility_name( + handle: *mut GarmanKlassVolatility, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -23791,6 +28184,25 @@ pub unsafe extern "C" fn wickra_gartley_is_ready(handle: *mut Gartley) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_gartley_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_gartley_name(handle: *mut Gartley) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -23925,6 +28337,25 @@ pub unsafe extern "C" fn wickra_gravestone_doji_is_ready(handle: *mut Gravestone } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_gravestone_doji_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_gravestone_doji_name(handle: *mut GravestoneDoji) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -24057,6 +28488,25 @@ pub unsafe extern "C" fn wickra_hammer_is_ready(handle: *mut Hammer) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_hammer_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_hammer_name(handle: *mut Hammer) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -24189,6 +28639,25 @@ pub unsafe extern "C" fn wickra_hanging_man_is_ready(handle: *mut HangingMan) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_hanging_man_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_hanging_man_name(handle: *mut HangingMan) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -24321,6 +28790,25 @@ pub unsafe extern "C" fn wickra_harami_is_ready(handle: *mut Harami) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_harami_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_harami_name(handle: *mut Harami) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -24453,6 +28941,25 @@ pub unsafe extern "C" fn wickra_harami_cross_is_ready(handle: *mut HaramiCross) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_harami_cross_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_harami_cross_name(handle: *mut HaramiCross) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -24587,6 +29094,27 @@ pub unsafe extern "C" fn wickra_head_and_shoulders_is_ready(handle: *mut HeadAnd } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_head_and_shoulders_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_head_and_shoulders_name( + handle: *mut HeadAndShoulders, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -24726,6 +29254,27 @@ pub unsafe extern "C" fn wickra_heikin_ashi_oscillator_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_heikin_ashi_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_heikin_ashi_oscillator_name( + handle: *mut HeikinAshiOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -24858,6 +29407,25 @@ pub unsafe extern "C" fn wickra_high_low_range_is_ready(handle: *mut HighLowRang } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_high_low_range_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_high_low_range_name(handle: *mut HighLowRange) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -24990,6 +29558,25 @@ pub unsafe extern "C" fn wickra_high_wave_is_ready(handle: *mut HighWave) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_high_wave_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_high_wave_name(handle: *mut HighWave) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -25122,6 +29709,25 @@ pub unsafe extern "C" fn wickra_hikkake_is_ready(handle: *mut Hikkake) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_hikkake_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_hikkake_name(handle: *mut Hikkake) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -25256,6 +29862,27 @@ pub unsafe extern "C" fn wickra_hikkake_modified_is_ready(handle: *mut HikkakeMo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_hikkake_modified_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_hikkake_modified_name( + handle: *mut HikkakeModified, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -25391,6 +30018,25 @@ pub unsafe extern "C" fn wickra_hi_lo_activator_is_ready(handle: *mut HiLoActiva } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_hi_lo_activator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_hi_lo_activator_name(handle: *mut HiLoActivator) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -25523,6 +30169,25 @@ pub unsafe extern "C" fn wickra_homing_pigeon_is_ready(handle: *mut HomingPigeon } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_homing_pigeon_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_homing_pigeon_name(handle: *mut HomingPigeon) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -25659,6 +30324,27 @@ pub unsafe extern "C" fn wickra_identical_three_crows_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_identical_three_crows_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_identical_three_crows_name( + handle: *mut IdenticalThreeCrows, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -25791,6 +30477,25 @@ pub unsafe extern "C" fn wickra_in_neck_is_ready(handle: *mut InNeck) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_in_neck_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_in_neck_name(handle: *mut InNeck) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -25926,6 +30631,25 @@ pub unsafe extern "C" fn wickra_inertia_is_ready(handle: *mut Inertia) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_inertia_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_inertia_name(handle: *mut Inertia) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -26062,6 +30786,27 @@ pub unsafe extern "C" fn wickra_intraday_intensity_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_intraday_intensity_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_intraday_intensity_name( + handle: *mut IntradayIntensity, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -26201,6 +30946,27 @@ pub unsafe extern "C" fn wickra_intraday_momentum_index_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_intraday_momentum_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_intraday_momentum_index_name( + handle: *mut IntradayMomentumIndex, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -26335,6 +31101,25 @@ pub unsafe extern "C" fn wickra_inverted_hammer_is_ready(handle: *mut InvertedHa } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_inverted_hammer_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_inverted_hammer_name(handle: *mut InvertedHammer) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -26467,6 +31252,25 @@ pub unsafe extern "C" fn wickra_kicking_is_ready(handle: *mut Kicking) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kicking_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kicking_name(handle: *mut Kicking) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -26601,6 +31405,27 @@ pub unsafe extern "C" fn wickra_kicking_by_length_is_ready(handle: *mut KickingB } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kicking_by_length_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kicking_by_length_name( + handle: *mut KickingByLength, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -26736,6 +31561,25 @@ pub unsafe extern "C" fn wickra_kvo_is_ready(handle: *mut Kvo) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kvo_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kvo_name(handle: *mut Kvo) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -26868,6 +31712,25 @@ pub unsafe extern "C" fn wickra_ladder_bottom_is_ready(handle: *mut LadderBottom } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ladder_bottom_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ladder_bottom_name(handle: *mut LadderBottom) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -27002,6 +31865,27 @@ pub unsafe extern "C" fn wickra_long_legged_doji_is_ready(handle: *mut LongLegge } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_long_legged_doji_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_long_legged_doji_name( + handle: *mut LongLeggedDoji, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -27134,6 +32018,25 @@ pub unsafe extern "C" fn wickra_long_line_is_ready(handle: *mut LongLine) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_long_line_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_long_line_name(handle: *mut LongLine) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -27270,6 +32173,27 @@ pub unsafe extern "C" fn wickra_market_facilitation_index_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_market_facilitation_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_market_facilitation_index_name( + handle: *mut MarketFacilitationIndex, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -27406,6 +32330,25 @@ pub unsafe extern "C" fn wickra_marubozu_is_ready(handle: *mut Marubozu) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_marubozu_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_marubozu_name(handle: *mut Marubozu) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -27541,6 +32484,25 @@ pub unsafe extern "C" fn wickra_mass_index_is_ready(handle: *mut MassIndex) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_mass_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_mass_index_name(handle: *mut MassIndex) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -27673,6 +32635,25 @@ pub unsafe extern "C" fn wickra_mat_hold_is_ready(handle: *mut MatHold) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_mat_hold_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_mat_hold_name(handle: *mut MatHold) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -27805,6 +32786,25 @@ pub unsafe extern "C" fn wickra_matching_low_is_ready(handle: *mut MatchingLow) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_matching_low_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_matching_low_name(handle: *mut MatchingLow) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -27937,6 +32937,25 @@ pub unsafe extern "C" fn wickra_median_price_is_ready(handle: *mut MedianPrice) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_median_price_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_median_price_name(handle: *mut MedianPrice) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -28072,6 +33091,25 @@ pub unsafe extern "C" fn wickra_mfi_is_ready(handle: *mut Mfi) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_mfi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_mfi_name(handle: *mut Mfi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -28207,6 +33245,25 @@ pub unsafe extern "C" fn wickra_mid_price_is_ready(handle: *mut MidPrice) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_mid_price_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_mid_price_name(handle: *mut MidPrice) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -28342,6 +33399,25 @@ pub unsafe extern "C" fn wickra_minus_di_is_ready(handle: *mut MinusDi) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_minus_di_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_minus_di_name(handle: *mut MinusDi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -28477,6 +33553,25 @@ pub unsafe extern "C" fn wickra_minus_dm_is_ready(handle: *mut MinusDm) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_minus_dm_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_minus_dm_name(handle: *mut MinusDm) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -28611,6 +33706,27 @@ pub unsafe extern "C" fn wickra_morning_doji_star_is_ready(handle: *mut MorningD } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_morning_doji_star_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_morning_doji_star_name( + handle: *mut MorningDojiStar, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -28747,6 +33863,27 @@ pub unsafe extern "C" fn wickra_morning_evening_star_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_morning_evening_star_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_morning_evening_star_name( + handle: *mut MorningEveningStar, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -28882,6 +34019,25 @@ pub unsafe extern "C" fn wickra_naked_poc_is_ready(handle: *mut NakedPoc) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_naked_poc_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_naked_poc_name(handle: *mut NakedPoc) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -29017,6 +34173,25 @@ pub unsafe extern "C" fn wickra_natr_is_ready(handle: *mut Natr) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_natr_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_natr_name(handle: *mut Natr) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -29152,6 +34327,25 @@ pub unsafe extern "C" fn wickra_new_price_lines_is_ready(handle: *mut NewPriceLi } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_new_price_lines_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_new_price_lines_name(handle: *mut NewPriceLines) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -29284,6 +34478,25 @@ pub unsafe extern "C" fn wickra_nvi_is_ready(handle: *mut Nvi) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_nvi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_nvi_name(handle: *mut Nvi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -29416,6 +34629,25 @@ pub unsafe extern "C" fn wickra_obv_is_ready(handle: *mut Obv) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_obv_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_obv_name(handle: *mut Obv) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -29548,6 +34780,25 @@ pub unsafe extern "C" fn wickra_on_neck_is_ready(handle: *mut OnNeck) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_on_neck_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_on_neck_name(handle: *mut OnNeck) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -29682,6 +34933,27 @@ pub unsafe extern "C" fn wickra_opening_marubozu_is_ready(handle: *mut OpeningMa } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_opening_marubozu_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_opening_marubozu_name( + handle: *mut OpeningMarubozu, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -29814,6 +35086,25 @@ pub unsafe extern "C" fn wickra_overnight_gap_is_ready(handle: *mut OvernightGap } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_overnight_gap_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_overnight_gap_name(handle: *mut OvernightGap) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -29956,6 +35247,27 @@ pub unsafe extern "C" fn wickra_parkinson_volatility_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_parkinson_volatility_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_parkinson_volatility_name( + handle: *mut ParkinsonVolatility, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -30091,6 +35403,25 @@ pub unsafe extern "C" fn wickra_pgo_is_ready(handle: *mut Pgo) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_pgo_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_pgo_name(handle: *mut Pgo) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -30227,6 +35558,27 @@ pub unsafe extern "C" fn wickra_piercing_dark_cloud_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_piercing_dark_cloud_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_piercing_dark_cloud_name( + handle: *mut PiercingDarkCloud, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -30362,6 +35714,25 @@ pub unsafe extern "C" fn wickra_pivot_reversal_is_ready(handle: *mut PivotRevers } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_pivot_reversal_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_pivot_reversal_name(handle: *mut PivotReversal) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -30497,6 +35868,25 @@ pub unsafe extern "C" fn wickra_plus_di_is_ready(handle: *mut PlusDi) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_plus_di_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_plus_di_name(handle: *mut PlusDi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -30632,6 +36022,25 @@ pub unsafe extern "C" fn wickra_plus_dm_is_ready(handle: *mut PlusDm) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_plus_dm_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_plus_dm_name(handle: *mut PlusDm) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -30767,6 +36176,25 @@ pub unsafe extern "C" fn wickra_profile_shape_is_ready(handle: *mut ProfileShape } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_profile_shape_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_profile_shape_name(handle: *mut ProfileShape) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -30906,6 +36334,27 @@ pub unsafe extern "C" fn wickra_projection_oscillator_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_projection_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_projection_oscillator_name( + handle: *mut ProjectionOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -31041,6 +36490,25 @@ pub unsafe extern "C" fn wickra_psar_is_ready(handle: *mut Psar) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_psar_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_psar_name(handle: *mut Psar) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -31173,6 +36641,25 @@ pub unsafe extern "C" fn wickra_pvi_is_ready(handle: *mut Pvi) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_pvi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_pvi_name(handle: *mut Pvi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -31308,6 +36795,25 @@ pub unsafe extern "C" fn wickra_qstick_is_ready(handle: *mut Qstick) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_qstick_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_qstick_name(handle: *mut Qstick) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -31442,6 +36948,25 @@ pub unsafe extern "C" fn wickra_rectangle_range_is_ready(handle: *mut RectangleR } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rectangle_range_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rectangle_range_name(handle: *mut RectangleRange) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -31574,6 +37099,25 @@ pub unsafe extern "C" fn wickra_rickshaw_man_is_ready(handle: *mut RickshawMan) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rickshaw_man_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rickshaw_man_name(handle: *mut RickshawMan) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -31710,6 +37254,27 @@ pub unsafe extern "C" fn wickra_rising_three_methods_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rising_three_methods_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rising_three_methods_name( + handle: *mut RisingThreeMethods, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -31852,6 +37417,27 @@ pub unsafe extern "C" fn wickra_rogers_satchell_volatility_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rogers_satchell_volatility_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rogers_satchell_volatility_name( + handle: *mut RogersSatchellVolatility, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -31991,6 +37577,25 @@ pub unsafe extern "C" fn wickra_rvi_is_ready(handle: *mut Rvi) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rvi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rvi_name(handle: *mut Rvi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -32144,6 +37749,25 @@ pub unsafe extern "C" fn wickra_sar_ext_is_ready(handle: *mut SarExt) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_sar_ext_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_sar_ext_name(handle: *mut SarExt) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -32278,6 +37902,27 @@ pub unsafe extern "C" fn wickra_seasonal_z_score_is_ready(handle: *mut SeasonalZ } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_seasonal_z_score_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_seasonal_z_score_name( + handle: *mut SeasonalZScore, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -32412,6 +38057,27 @@ pub unsafe extern "C" fn wickra_separating_lines_is_ready(handle: *mut Separatin } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_separating_lines_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_separating_lines_name( + handle: *mut SeparatingLines, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -32544,6 +38210,25 @@ pub unsafe extern "C" fn wickra_session_vwap_is_ready(handle: *mut SessionVwap) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_session_vwap_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_session_vwap_name(handle: *mut SessionVwap) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -32676,6 +38361,25 @@ pub unsafe extern "C" fn wickra_shark_is_ready(handle: *mut Shark) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_shark_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_shark_name(handle: *mut Shark) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -32808,6 +38512,25 @@ pub unsafe extern "C" fn wickra_shooting_star_is_ready(handle: *mut ShootingStar } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_shooting_star_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_shooting_star_name(handle: *mut ShootingStar) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -32940,6 +38663,25 @@ pub unsafe extern "C" fn wickra_short_line_is_ready(handle: *mut ShortLine) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_short_line_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_short_line_name(handle: *mut ShortLine) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -33075,6 +38817,25 @@ pub unsafe extern "C" fn wickra_single_prints_is_ready(handle: *mut SinglePrints } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_single_prints_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_single_prints_name(handle: *mut SinglePrints) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -33210,6 +38971,25 @@ pub unsafe extern "C" fn wickra_smi_is_ready(handle: *mut Smi) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_smi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_smi_name(handle: *mut Smi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -33342,6 +39122,25 @@ pub unsafe extern "C" fn wickra_spinning_top_is_ready(handle: *mut SpinningTop) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_spinning_top_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_spinning_top_name(handle: *mut SpinningTop) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -33476,6 +39275,25 @@ pub unsafe extern "C" fn wickra_stalled_pattern_is_ready(handle: *mut StalledPat } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_stalled_pattern_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_stalled_pattern_name(handle: *mut StalledPattern) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -33608,6 +39426,25 @@ pub unsafe extern "C" fn wickra_stick_sandwich_is_ready(handle: *mut StickSandwi } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_stick_sandwich_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_stick_sandwich_name(handle: *mut StickSandwich) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -33743,6 +39580,25 @@ pub unsafe extern "C" fn wickra_stochastic_cci_is_ready(handle: *mut StochasticC } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_stochastic_cci_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_stochastic_cci_name(handle: *mut StochasticCci) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -33875,6 +39731,25 @@ pub unsafe extern "C" fn wickra_takuri_is_ready(handle: *mut Takuri) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_takuri_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_takuri_name(handle: *mut Takuri) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -34007,6 +39882,25 @@ pub unsafe extern "C" fn wickra_tasuki_gap_is_ready(handle: *mut TasukiGap) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tasuki_gap_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tasuki_gap_name(handle: *mut TasukiGap) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -34139,6 +40033,25 @@ pub unsafe extern "C" fn wickra_td_camouflage_is_ready(handle: *mut TdCamouflage } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_camouflage_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_camouflage_name(handle: *mut TdCamouflage) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -34271,6 +40184,25 @@ pub unsafe extern "C" fn wickra_td_clop_is_ready(handle: *mut TdClop) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_clop_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_clop_name(handle: *mut TdClop) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -34403,6 +40335,25 @@ pub unsafe extern "C" fn wickra_td_clopwin_is_ready(handle: *mut TdClopwin) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_clopwin_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_clopwin_name(handle: *mut TdClopwin) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -34548,6 +40499,25 @@ pub unsafe extern "C" fn wickra_td_combo_is_ready(handle: *mut TdCombo) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_combo_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_combo_name(handle: *mut TdCombo) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -34693,6 +40663,25 @@ pub unsafe extern "C" fn wickra_td_countdown_is_ready(handle: *mut TdCountdown) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_countdown_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_countdown_name(handle: *mut TdCountdown) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -34828,6 +40817,25 @@ pub unsafe extern "C" fn wickra_td_de_marker_is_ready(handle: *mut TdDeMarker) - } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_de_marker_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_de_marker_name(handle: *mut TdDeMarker) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -34962,6 +40970,25 @@ pub unsafe extern "C" fn wickra_td_differential_is_ready(handle: *mut TdDifferen } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_differential_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_differential_name(handle: *mut TdDifferential) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -35097,6 +41124,25 @@ pub unsafe extern "C" fn wickra_td_d_wave_is_ready(handle: *mut TdDWave) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_d_wave_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_d_wave_name(handle: *mut TdDWave) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -35229,6 +41275,25 @@ pub unsafe extern "C" fn wickra_td_open_is_ready(handle: *mut TdOpen) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_open_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_open_name(handle: *mut TdOpen) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -35364,6 +41429,25 @@ pub unsafe extern "C" fn wickra_td_pressure_is_ready(handle: *mut TdPressure) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_pressure_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_pressure_name(handle: *mut TdPressure) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -35496,6 +41580,25 @@ pub unsafe extern "C" fn wickra_td_propulsion_is_ready(handle: *mut TdPropulsion } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_propulsion_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_propulsion_name(handle: *mut TdPropulsion) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -35631,6 +41734,25 @@ pub unsafe extern "C" fn wickra_td_rei_is_ready(handle: *mut TdRei) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_rei_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_rei_name(handle: *mut TdRei) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -35766,6 +41888,25 @@ pub unsafe extern "C" fn wickra_td_setup_is_ready(handle: *mut TdSetup) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_setup_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_setup_name(handle: *mut TdSetup) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -35898,6 +42039,25 @@ pub unsafe extern "C" fn wickra_td_trap_is_ready(handle: *mut TdTrap) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_trap_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_trap_name(handle: *mut TdTrap) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -36030,6 +42190,25 @@ pub unsafe extern "C" fn wickra_three_drives_is_ready(handle: *mut ThreeDrives) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_three_drives_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_three_drives_name(handle: *mut ThreeDrives) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -36162,6 +42341,25 @@ pub unsafe extern "C" fn wickra_three_inside_is_ready(handle: *mut ThreeInside) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_three_inside_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_three_inside_name(handle: *mut ThreeInside) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -36299,6 +42497,27 @@ pub unsafe extern "C" fn wickra_three_line_break_is_ready(handle: *mut ThreeLine } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_three_line_break_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_three_line_break_name( + handle: *mut ThreeLineBreak, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -36433,6 +42652,27 @@ pub unsafe extern "C" fn wickra_three_line_strike_is_ready(handle: *mut ThreeLin } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_three_line_strike_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_three_line_strike_name( + handle: *mut ThreeLineStrike, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -36565,6 +42805,25 @@ pub unsafe extern "C" fn wickra_three_outside_is_ready(handle: *mut ThreeOutside } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_three_outside_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_three_outside_name(handle: *mut ThreeOutside) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -36701,6 +42960,27 @@ pub unsafe extern "C" fn wickra_three_soldiers_or_crows_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_three_soldiers_or_crows_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_three_soldiers_or_crows_name( + handle: *mut ThreeSoldiersOrCrows, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -36837,6 +43117,27 @@ pub unsafe extern "C" fn wickra_three_stars_in_south_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_three_stars_in_south_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_three_stars_in_south_name( + handle: *mut ThreeStarsInSouth, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -36969,6 +43270,25 @@ pub unsafe extern "C" fn wickra_thrusting_is_ready(handle: *mut Thrusting) -> bo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_thrusting_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_thrusting_name(handle: *mut Thrusting) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -37104,6 +43424,25 @@ pub unsafe extern "C" fn wickra_time_based_stop_is_ready(handle: *mut TimeBasedS } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_time_based_stop_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_time_based_stop_name(handle: *mut TimeBasedStop) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -37238,6 +43577,27 @@ pub unsafe extern "C" fn wickra_tower_top_bottom_is_ready(handle: *mut TowerTopB } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tower_top_bottom_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tower_top_bottom_name( + handle: *mut TowerTopBottom, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -37375,6 +43735,27 @@ pub unsafe extern "C" fn wickra_trade_volume_index_is_ready(handle: *mut TradeVo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_trade_volume_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_trade_volume_index_name( + handle: *mut TradeVolumeIndex, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -37507,6 +43888,25 @@ pub unsafe extern "C" fn wickra_triangle_is_ready(handle: *mut Triangle) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_triangle_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_triangle_name(handle: *mut Triangle) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -37641,6 +44041,27 @@ pub unsafe extern "C" fn wickra_triple_top_bottom_is_ready(handle: *mut TripleTo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_triple_top_bottom_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_triple_top_bottom_name( + handle: *mut TripleTopBottom, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -37773,6 +44194,25 @@ pub unsafe extern "C" fn wickra_tristar_is_ready(handle: *mut Tristar) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tristar_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tristar_name(handle: *mut Tristar) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -37905,6 +44345,25 @@ pub unsafe extern "C" fn wickra_true_range_is_ready(handle: *mut TrueRange) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_true_range_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_true_range_name(handle: *mut TrueRange) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -38040,6 +44499,25 @@ pub unsafe extern "C" fn wickra_tsv_is_ready(handle: *mut Tsv) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tsv_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tsv_name(handle: *mut Tsv) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -38175,6 +44653,25 @@ pub unsafe extern "C" fn wickra_ttm_trend_is_ready(handle: *mut TtmTrend) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ttm_trend_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ttm_trend_name(handle: *mut TtmTrend) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -38314,6 +44811,25 @@ pub unsafe extern "C" fn wickra_turn_of_month_is_ready(handle: *mut TurnOfMonth) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_turn_of_month_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_turn_of_month_name(handle: *mut TurnOfMonth) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -38446,6 +44962,25 @@ pub unsafe extern "C" fn wickra_tweezer_is_ready(handle: *mut Tweezer) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tweezer_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tweezer_name(handle: *mut Tweezer) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -38583,6 +45118,27 @@ pub unsafe extern "C" fn wickra_twiggs_money_flow_is_ready(handle: *mut TwiggsMo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_twiggs_money_flow_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_twiggs_money_flow_name( + handle: *mut TwiggsMoneyFlow, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -38715,6 +45271,25 @@ pub unsafe extern "C" fn wickra_two_crows_is_ready(handle: *mut TwoCrows) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_two_crows_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_two_crows_name(handle: *mut TwoCrows) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -38847,6 +45422,25 @@ pub unsafe extern "C" fn wickra_typical_price_is_ready(handle: *mut TypicalPrice } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_typical_price_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_typical_price_name(handle: *mut TypicalPrice) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -38990,6 +45584,27 @@ pub unsafe extern "C" fn wickra_ultimate_oscillator_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ultimate_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ultimate_oscillator_name( + handle: *mut UltimateOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -39124,6 +45739,27 @@ pub unsafe extern "C" fn wickra_unique_three_river_is_ready(handle: *mut UniqueT } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_unique_three_river_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_unique_three_river_name( + handle: *mut UniqueThreeRiver, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -39260,6 +45896,27 @@ pub unsafe extern "C" fn wickra_upside_gap_three_methods_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_upside_gap_three_methods_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_upside_gap_three_methods_name( + handle: *mut UpsideGapThreeMethods, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -39396,6 +46053,27 @@ pub unsafe extern "C" fn wickra_upside_gap_two_crows_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_upside_gap_two_crows_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_upside_gap_two_crows_name( + handle: *mut UpsideGapTwoCrows, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -39533,6 +46211,27 @@ pub unsafe extern "C" fn wickra_volatility_ratio_is_ready(handle: *mut Volatilit } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_volatility_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_volatility_ratio_name( + handle: *mut VolatilityRatio, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -39668,6 +46367,25 @@ pub unsafe extern "C" fn wickra_volty_stop_is_ready(handle: *mut VoltyStop) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_volty_stop_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_volty_stop_name(handle: *mut VoltyStop) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -39805,6 +46523,27 @@ pub unsafe extern "C" fn wickra_volume_oscillator_is_ready(handle: *mut VolumeOs } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_volume_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_volume_oscillator_name( + handle: *mut VolumeOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -39940,6 +46679,25 @@ pub unsafe extern "C" fn wickra_volume_rsi_is_ready(handle: *mut VolumeRsi) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_volume_rsi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_volume_rsi_name(handle: *mut VolumeRsi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -40074,6 +46832,27 @@ pub unsafe extern "C" fn wickra_volume_price_trend_is_ready(handle: *mut VolumeP } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_volume_price_trend_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_volume_price_trend_name( + handle: *mut VolumePriceTrend, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -40206,6 +46985,25 @@ pub unsafe extern "C" fn wickra_vwap_is_ready(handle: *mut Vwap) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_vwap_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_vwap_name(handle: *mut Vwap) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -40341,6 +47139,25 @@ pub unsafe extern "C" fn wickra_rolling_vwap_is_ready(handle: *mut RollingVwap) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rolling_vwap_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rolling_vwap_name(handle: *mut RollingVwap) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -40476,6 +47293,25 @@ pub unsafe extern "C" fn wickra_vwma_is_ready(handle: *mut Vwma) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_vwma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_vwma_name(handle: *mut Vwma) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -40611,6 +47447,25 @@ pub unsafe extern "C" fn wickra_vzo_is_ready(handle: *mut Vzo) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_vzo_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_vzo_name(handle: *mut Vzo) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -40743,6 +47598,25 @@ pub unsafe extern "C" fn wickra_wad_is_ready(handle: *mut Wad) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_wad_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_wad_name(handle: *mut Wad) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -40875,6 +47749,25 @@ pub unsafe extern "C" fn wickra_wedge_is_ready(handle: *mut Wedge) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_wedge_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_wedge_name(handle: *mut Wedge) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -41007,6 +47900,25 @@ pub unsafe extern "C" fn wickra_weighted_close_is_ready(handle: *mut WeightedClo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_weighted_close_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_weighted_close_name(handle: *mut WeightedClose) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -41139,6 +48051,25 @@ pub unsafe extern "C" fn wickra_wick_ratio_is_ready(handle: *mut WickRatio) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_wick_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_wick_ratio_name(handle: *mut WickRatio) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -41274,6 +48205,25 @@ pub unsafe extern "C" fn wickra_williams_r_is_ready(handle: *mut WilliamsR) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_williams_r_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_williams_r_name(handle: *mut WilliamsR) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -41416,6 +48366,27 @@ pub unsafe extern "C" fn wickra_yang_zhang_volatility_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_yang_zhang_volatility_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_yang_zhang_volatility_name( + handle: *mut YangZhangVolatility, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -41551,6 +48522,25 @@ pub unsafe extern "C" fn wickra_yoyo_exit_is_ready(handle: *mut YoyoExit) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_yoyo_exit_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_yoyo_exit_name(handle: *mut YoyoExit) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -41639,6 +48629,27 @@ pub unsafe extern "C" fn wickra_amihud_illiquidity_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_amihud_illiquidity_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_amihud_illiquidity_name( + handle: *mut AmihudIlliquidity, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -41722,6 +48733,27 @@ pub unsafe extern "C" fn wickra_cumulative_volume_delta_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_cumulative_volume_delta_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_cumulative_volume_delta_name( + handle: *mut CumulativeVolumeDelta, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -41804,6 +48836,25 @@ pub unsafe extern "C" fn wickra_pin_is_ready(handle: *mut Pin) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_pin_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_pin_name(handle: *mut Pin) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -41886,6 +48937,25 @@ pub unsafe extern "C" fn wickra_roll_measure_is_ready(handle: *mut RollMeasure) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_roll_measure_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_roll_measure_name(handle: *mut RollMeasure) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -41965,6 +49035,25 @@ pub unsafe extern "C" fn wickra_signed_volume_is_ready(handle: *mut SignedVolume } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_signed_volume_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_signed_volume_name(handle: *mut SignedVolume) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -42049,6 +49138,25 @@ pub unsafe extern "C" fn wickra_trade_imbalance_is_ready(handle: *mut TradeImbal } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_trade_imbalance_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_trade_imbalance_name(handle: *mut TradeImbalance) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -42137,6 +49245,27 @@ pub unsafe extern "C" fn wickra_trade_sign_autocorrelation_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_trade_sign_autocorrelation_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_trade_sign_autocorrelation_name( + handle: *mut TradeSignAutocorrelation, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -42223,6 +49352,25 @@ pub unsafe extern "C" fn wickra_vpin_is_ready(handle: *mut Vpin) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_vpin_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_vpin_name(handle: *mut Vpin) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -42310,6 +49458,27 @@ pub unsafe extern "C" fn wickra_effective_spread_is_ready(handle: *mut Effective } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_effective_spread_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_effective_spread_name( + handle: *mut EffectiveSpread, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -42396,6 +49565,25 @@ pub unsafe extern "C" fn wickra_kyles_lambda_is_ready(handle: *mut KylesLambda) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kyles_lambda_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kyles_lambda_name(handle: *mut KylesLambda) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -42484,6 +49672,25 @@ pub unsafe extern "C" fn wickra_realized_spread_is_ready(handle: *mut RealizedSp } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_realized_spread_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_realized_spread_name(handle: *mut RealizedSpread) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -42587,6 +49794,25 @@ pub unsafe extern "C" fn wickra_calendar_spread_is_ready(handle: *mut CalendarSp } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_calendar_spread_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_calendar_spread_name(handle: *mut CalendarSpread) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -42690,6 +49916,27 @@ pub unsafe extern "C" fn wickra_estimated_leverage_ratio_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_estimated_leverage_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_estimated_leverage_ratio_name( + handle: *mut EstimatedLeverageRatio, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -42791,6 +50038,25 @@ pub unsafe extern "C" fn wickra_funding_basis_is_ready(handle: *mut FundingBasis } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_funding_basis_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_funding_basis_name(handle: *mut FundingBasis) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -42899,6 +50165,27 @@ pub unsafe extern "C" fn wickra_funding_implied_apr_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_funding_implied_apr_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_funding_implied_apr_name( + handle: *mut FundingImpliedApr, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -42998,6 +50285,25 @@ pub unsafe extern "C" fn wickra_funding_rate_is_ready(handle: *mut FundingRate) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_funding_rate_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_funding_rate_name(handle: *mut FundingRate) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -43102,6 +50408,27 @@ pub unsafe extern "C" fn wickra_funding_rate_mean_is_ready(handle: *mut FundingR } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_funding_rate_mean_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_funding_rate_mean_name( + handle: *mut FundingRateMean, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -43208,6 +50535,27 @@ pub unsafe extern "C" fn wickra_funding_rate_z_score_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_funding_rate_z_score_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_funding_rate_z_score_name( + handle: *mut FundingRateZScore, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -43309,6 +50657,27 @@ pub unsafe extern "C" fn wickra_long_short_ratio_is_ready(handle: *mut LongShort } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_long_short_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_long_short_ratio_name( + handle: *mut LongShortRatio, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -43412,6 +50781,27 @@ pub unsafe extern "C" fn wickra_open_interest_delta_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_open_interest_delta_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_open_interest_delta_name( + handle: *mut OpenInterestDelta, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -43518,6 +50908,27 @@ pub unsafe extern "C" fn wickra_oi_price_divergence_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_oi_price_divergence_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_oi_price_divergence_name( + handle: *mut OIPriceDivergence, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -43619,6 +51030,27 @@ pub unsafe extern "C" fn wickra_oi_to_volume_ratio_is_ready(handle: *mut OiToVol } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_oi_to_volume_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_oi_to_volume_ratio_name( + handle: *mut OiToVolumeRatio, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -43718,6 +51150,25 @@ pub unsafe extern "C" fn wickra_oi_weighted_is_ready(handle: *mut OIWeighted) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_oi_weighted_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_oi_weighted_name(handle: *mut OIWeighted) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -43824,6 +51275,27 @@ pub unsafe extern "C" fn wickra_open_interest_momentum_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_open_interest_momentum_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_open_interest_momentum_name( + handle: *mut OpenInterestMomentum, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -43927,6 +51399,27 @@ pub unsafe extern "C" fn wickra_perpetual_premium_index_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_perpetual_premium_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_perpetual_premium_index_name( + handle: *mut PerpetualPremiumIndex, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -44030,6 +51523,27 @@ pub unsafe extern "C" fn wickra_taker_buy_sell_ratio_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_taker_buy_sell_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_taker_buy_sell_ratio_name( + handle: *mut TakerBuySellRatio, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -44133,6 +51647,27 @@ pub unsafe extern "C" fn wickra_term_structure_basis_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_term_structure_basis_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_term_structure_basis_name( + handle: *mut TermStructureBasis, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -44237,6 +51772,25 @@ pub unsafe extern "C" fn wickra_depth_slope_is_ready(handle: *mut DepthSlope) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_depth_slope_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_depth_slope_name(handle: *mut DepthSlope) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -44339,6 +51893,25 @@ pub unsafe extern "C" fn wickra_microprice_is_ready(handle: *mut Microprice) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_microprice_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_microprice_name(handle: *mut Microprice) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -44445,6 +52018,27 @@ pub unsafe extern "C" fn wickra_order_book_imbalance_full_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_order_book_imbalance_full_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_order_book_imbalance_full_name( + handle: *mut OrderBookImbalanceFull, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -44555,6 +52149,27 @@ pub unsafe extern "C" fn wickra_order_book_imbalance_top1_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_order_book_imbalance_top1_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_order_book_imbalance_top1_name( + handle: *mut OrderBookImbalanceTop1, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -44670,6 +52285,27 @@ pub unsafe extern "C" fn wickra_order_book_imbalance_top_n_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_order_book_imbalance_top_n_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_order_book_imbalance_top_n_name( + handle: *mut OrderBookImbalanceTopN, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -44783,6 +52419,27 @@ pub unsafe extern "C" fn wickra_order_flow_imbalance_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_order_flow_imbalance_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_order_flow_imbalance_name( + handle: *mut OrderFlowImbalance, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -44885,6 +52542,25 @@ pub unsafe extern "C" fn wickra_quoted_spread_is_ready(handle: *mut QuotedSpread } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_quoted_spread_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_quoted_spread_name(handle: *mut QuotedSpread) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -44997,6 +52673,27 @@ pub unsafe extern "C" fn wickra_absolute_breadth_index_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_absolute_breadth_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_absolute_breadth_index_name( + handle: *mut AbsoluteBreadthIndex, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -45103,6 +52800,25 @@ pub unsafe extern "C" fn wickra_ad_volume_line_is_ready(handle: *mut AdVolumeLin } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ad_volume_line_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ad_volume_line_name(handle: *mut AdVolumeLine) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -45211,6 +52927,25 @@ pub unsafe extern "C" fn wickra_advance_decline_is_ready(handle: *mut AdvanceDec } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_advance_decline_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_advance_decline_name(handle: *mut AdvanceDecline) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -45321,6 +53056,27 @@ pub unsafe extern "C" fn wickra_advance_decline_ratio_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_advance_decline_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_advance_decline_ratio_name( + handle: *mut AdvanceDeclineRatio, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -45430,6 +53186,25 @@ pub unsafe extern "C" fn wickra_breadth_thrust_is_ready(handle: *mut BreadthThru } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_breadth_thrust_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_breadth_thrust_name(handle: *mut BreadthThrust) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -45540,6 +53315,27 @@ pub unsafe extern "C" fn wickra_bullish_percent_index_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_bullish_percent_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_bullish_percent_index_name( + handle: *mut BullishPercentIndex, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -45650,6 +53446,27 @@ pub unsafe extern "C" fn wickra_cumulative_volume_index_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_cumulative_volume_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_cumulative_volume_index_name( + handle: *mut CumulativeVolumeIndex, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -45759,6 +53576,25 @@ pub unsafe extern "C" fn wickra_high_low_index_is_ready(handle: *mut HighLowInde } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_high_low_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_high_low_index_name(handle: *mut HighLowIndex) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -45869,6 +53705,27 @@ pub unsafe extern "C" fn wickra_mc_clellan_oscillator_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_mc_clellan_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_mc_clellan_oscillator_name( + handle: *mut McClellanOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -45979,6 +53836,27 @@ pub unsafe extern "C" fn wickra_mc_clellan_summation_index_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_mc_clellan_summation_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_mc_clellan_summation_index_name( + handle: *mut McClellanSummationIndex, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -46091,6 +53969,27 @@ pub unsafe extern "C" fn wickra_new_highs_new_lows_is_ready(handle: *mut NewHigh } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_new_highs_new_lows_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_new_highs_new_lows_name( + handle: *mut NewHighsNewLows, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -46199,6 +54098,27 @@ pub unsafe extern "C" fn wickra_percent_above_ma_is_ready(handle: *mut PercentAb } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_percent_above_ma_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_percent_above_ma_name( + handle: *mut PercentAboveMa, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -46305,6 +54225,25 @@ pub unsafe extern "C" fn wickra_tick_index_is_ready(handle: *mut TickIndex) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tick_index_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tick_index_name(handle: *mut TickIndex) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -46411,6 +54350,25 @@ pub unsafe extern "C" fn wickra_trin_is_ready(handle: *mut Trin) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_trin_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_trin_name(handle: *mut Trin) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -46521,6 +54479,27 @@ pub unsafe extern "C" fn wickra_up_down_volume_ratio_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_up_down_volume_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_up_down_volume_ratio_name( + handle: *mut UpDownVolumeRatio, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -47445,6 +55424,27 @@ pub unsafe extern "C" fn wickra_acceleration_bands_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_acceleration_bands_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_acceleration_bands_name( + handle: *mut AccelerationBands, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -47542,6 +55542,25 @@ pub unsafe extern "C" fn wickra_adx_is_ready(handle: *mut Adx) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_adx_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_adx_name(handle: *mut Adx) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -47643,6 +55662,25 @@ pub unsafe extern "C" fn wickra_alligator_is_ready(handle: *mut Alligator) -> bo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_alligator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_alligator_name(handle: *mut Alligator) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -47742,6 +55780,27 @@ pub unsafe extern "C" fn wickra_andrews_pitchfork_is_ready(handle: *mut AndrewsP } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_andrews_pitchfork_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_andrews_pitchfork_name( + handle: *mut AndrewsPitchfork, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -47838,6 +55897,25 @@ pub unsafe extern "C" fn wickra_aroon_is_ready(handle: *mut Aroon) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_aroon_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_aroon_name(handle: *mut Aroon) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -47935,6 +56013,25 @@ pub unsafe extern "C" fn wickra_atr_bands_is_ready(handle: *mut AtrBands) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_atr_bands_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_atr_bands_name(handle: *mut AtrBands) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -48035,6 +56132,25 @@ pub unsafe extern "C" fn wickra_atr_ratchet_is_ready(handle: *mut AtrRatchet) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_atr_ratchet_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_atr_ratchet_name(handle: *mut AtrRatchet) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -48133,6 +56249,25 @@ pub unsafe extern "C" fn wickra_auto_fib_is_ready(handle: *mut AutoFib) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_auto_fib_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_auto_fib_name(handle: *mut AutoFib) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -48228,6 +56363,25 @@ pub unsafe extern "C" fn wickra_bollinger_bands_is_ready(handle: *mut BollingerB } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_bollinger_bands_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_bollinger_bands_name(handle: *mut BollingerBands) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -48317,6 +56471,25 @@ pub unsafe extern "C" fn wickra_bomar_bands_is_ready(handle: *mut BomarBands) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_bomar_bands_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_bomar_bands_name(handle: *mut BomarBands) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -48417,6 +56590,25 @@ pub unsafe extern "C" fn wickra_camarilla_is_ready(handle: *mut Camarilla) -> bo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_camarilla_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_camarilla_name(handle: *mut Camarilla) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -48513,6 +56705,25 @@ pub unsafe extern "C" fn wickra_candle_volume_is_ready(handle: *mut CandleVolume } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_candle_volume_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_candle_volume_name(handle: *mut CandleVolume) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -48611,6 +56822,27 @@ pub unsafe extern "C" fn wickra_central_pivot_range_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_central_pivot_range_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_central_pivot_range_name( + handle: *mut CentralPivotRange, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -48713,6 +56945,27 @@ pub unsafe extern "C" fn wickra_chande_kroll_stop_is_ready(handle: *mut ChandeKr } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_chande_kroll_stop_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_chande_kroll_stop_name( + handle: *mut ChandeKrollStop, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -48814,6 +57067,25 @@ pub unsafe extern "C" fn wickra_chandelier_exit_is_ready(handle: *mut Chandelier } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_chandelier_exit_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_chandelier_exit_name(handle: *mut ChandelierExit) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -48912,6 +57184,25 @@ pub unsafe extern "C" fn wickra_classic_pivots_is_ready(handle: *mut ClassicPivo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_classic_pivots_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_classic_pivots_name(handle: *mut ClassicPivots) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -49002,6 +57293,25 @@ pub unsafe extern "C" fn wickra_cointegration_is_ready(handle: *mut Cointegratio } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_cointegration_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_cointegration_name(handle: *mut Cointegration) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -49105,6 +57415,27 @@ pub unsafe extern "C" fn wickra_composite_profile_is_ready(handle: *mut Composit } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_composite_profile_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_composite_profile_name( + handle: *mut CompositeProfile, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -49199,6 +57530,25 @@ pub unsafe extern "C" fn wickra_demark_pivots_is_ready(handle: *mut DemarkPivots } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_demark_pivots_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_demark_pivots_name(handle: *mut DemarkPivots) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -49296,6 +57646,25 @@ pub unsafe extern "C" fn wickra_donchian_is_ready(handle: *mut Donchian) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_donchian_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_donchian_name(handle: *mut Donchian) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -49392,6 +57761,25 @@ pub unsafe extern "C" fn wickra_donchian_stop_is_ready(handle: *mut DonchianStop } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_donchian_stop_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_donchian_stop_name(handle: *mut DonchianStop) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -49489,6 +57877,27 @@ pub unsafe extern "C" fn wickra_double_bollinger_is_ready(handle: *mut DoubleBol } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_double_bollinger_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_double_bollinger_name( + handle: *mut DoubleBollinger, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -49585,6 +57994,25 @@ pub unsafe extern "C" fn wickra_elder_ray_is_ready(handle: *mut ElderRay) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_elder_ray_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_elder_ray_name(handle: *mut ElderRay) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -49681,6 +58109,25 @@ pub unsafe extern "C" fn wickra_elder_safe_zone_is_ready(handle: *mut ElderSafeZ } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_elder_safe_zone_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_elder_safe_zone_name(handle: *mut ElderSafeZone) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -49777,6 +58224,25 @@ pub unsafe extern "C" fn wickra_equivolume_is_ready(handle: *mut Equivolume) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_equivolume_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_equivolume_name(handle: *mut Equivolume) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -49871,6 +58337,25 @@ pub unsafe extern "C" fn wickra_fib_arcs_is_ready(handle: *mut FibArcs) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fib_arcs_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fib_arcs_name(handle: *mut FibArcs) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -49966,6 +58451,25 @@ pub unsafe extern "C" fn wickra_fib_channel_is_ready(handle: *mut FibChannel) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fib_channel_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fib_channel_name(handle: *mut FibChannel) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -50059,6 +58563,25 @@ pub unsafe extern "C" fn wickra_fib_confluence_is_ready(handle: *mut FibConfluen } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fib_confluence_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fib_confluence_name(handle: *mut FibConfluence) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -50155,6 +58678,25 @@ pub unsafe extern "C" fn wickra_fib_extension_is_ready(handle: *mut FibExtension } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fib_extension_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fib_extension_name(handle: *mut FibExtension) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -50249,6 +58791,25 @@ pub unsafe extern "C" fn wickra_fib_fan_is_ready(handle: *mut FibFan) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fib_fan_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fib_fan_name(handle: *mut FibFan) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -50344,6 +58905,25 @@ pub unsafe extern "C" fn wickra_fib_projection_is_ready(handle: *mut FibProjecti } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fib_projection_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fib_projection_name(handle: *mut FibProjection) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -50444,6 +59024,25 @@ pub unsafe extern "C" fn wickra_fib_retracement_is_ready(handle: *mut FibRetrace } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fib_retracement_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fib_retracement_name(handle: *mut FibRetracement) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -50537,6 +59136,25 @@ pub unsafe extern "C" fn wickra_fib_time_zones_is_ready(handle: *mut FibTimeZone } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fib_time_zones_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fib_time_zones_name(handle: *mut FibTimeZones) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -50637,6 +59255,27 @@ pub unsafe extern "C" fn wickra_fibonacci_pivots_is_ready(handle: *mut Fibonacci } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fibonacci_pivots_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fibonacci_pivots_name( + handle: *mut FibonacciPivots, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -50737,6 +59376,27 @@ pub unsafe extern "C" fn wickra_fractal_chaos_bands_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_fractal_chaos_bands_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_fractal_chaos_bands_name( + handle: *mut FractalChaosBands, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -50839,6 +59499,27 @@ pub unsafe extern "C" fn wickra_gator_oscillator_is_ready(handle: *mut GatorOsci } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_gator_oscillator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_gator_oscillator_name( + handle: *mut GatorOscillator, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -50933,6 +59614,25 @@ pub unsafe extern "C" fn wickra_golden_pocket_is_ready(handle: *mut GoldenPocket } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_golden_pocket_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_golden_pocket_name(handle: *mut GoldenPocket) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -51028,6 +59728,25 @@ pub unsafe extern "C" fn wickra_heikin_ashi_is_ready(handle: *mut HeikinAshi) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_heikin_ashi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_heikin_ashi_name(handle: *mut HeikinAshi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -51131,6 +59850,27 @@ pub unsafe extern "C" fn wickra_high_low_volume_nodes_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_high_low_volume_nodes_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_high_low_volume_nodes_name( + handle: *mut HighLowVolumeNodes, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -51216,6 +59956,25 @@ pub unsafe extern "C" fn wickra_ht_phasor_is_ready(handle: *mut HtPhasor) -> boo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ht_phasor_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ht_phasor_name(handle: *mut HtPhasor) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -51313,6 +60072,25 @@ pub unsafe extern "C" fn wickra_hurst_channel_is_ready(handle: *mut HurstChannel } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_hurst_channel_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_hurst_channel_name(handle: *mut HurstChannel) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -51417,6 +60195,25 @@ pub unsafe extern "C" fn wickra_ichimoku_is_ready(handle: *mut Ichimoku) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ichimoku_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ichimoku_name(handle: *mut Ichimoku) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -51515,6 +60312,25 @@ pub unsafe extern "C" fn wickra_initial_balance_is_ready(handle: *mut InitialBal } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_initial_balance_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_initial_balance_name(handle: *mut InitialBalance) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -51610,6 +60426,27 @@ pub unsafe extern "C" fn wickra_kalman_hedge_ratio_is_ready(handle: *mut KalmanH } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kalman_hedge_ratio_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kalman_hedge_ratio_name( + handle: *mut KalmanHedgeRatio, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -51706,6 +60543,25 @@ pub unsafe extern "C" fn wickra_kase_dev_stop_is_ready(handle: *mut KaseDevStop) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kase_dev_stop_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kase_dev_stop_name(handle: *mut KaseDevStop) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -51809,6 +60665,27 @@ pub unsafe extern "C" fn wickra_kase_permission_stochastic_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kase_permission_stochastic_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kase_permission_stochastic_name( + handle: *mut KasePermissionStochastic, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -51914,6 +60791,25 @@ pub unsafe extern "C" fn wickra_keltner_is_ready(handle: *mut Keltner) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_keltner_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_keltner_name(handle: *mut Keltner) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -52012,6 +60908,25 @@ pub unsafe extern "C" fn wickra_kst_is_ready(handle: *mut Kst) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kst_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kst_name(handle: *mut Kst) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -52108,6 +61023,27 @@ pub unsafe extern "C" fn wickra_lead_lag_cross_correlation_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_lead_lag_cross_correlation_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_lead_lag_cross_correlation_name( + handle: *mut LeadLagCrossCorrelation, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -52201,6 +61137,25 @@ pub unsafe extern "C" fn wickra_lin_reg_channel_is_ready(handle: *mut LinRegChan } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_lin_reg_channel_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_lin_reg_channel_name(handle: *mut LinRegChannel) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -52320,6 +61275,27 @@ pub unsafe extern "C" fn wickra_liquidation_features_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_liquidation_features_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_liquidation_features_name( + handle: *mut LiquidationFeatures, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -52409,6 +61385,25 @@ pub unsafe extern "C" fn wickra_ma_envelope_is_ready(handle: *mut MaEnvelope) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ma_envelope_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ma_envelope_name(handle: *mut MaEnvelope) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -52502,6 +61497,25 @@ pub unsafe extern "C" fn wickra_macd_indicator_is_ready(handle: *mut MacdIndicat } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_macd_indicator_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_macd_indicator_name(handle: *mut MacdIndicator) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -52591,6 +61605,25 @@ pub unsafe extern "C" fn wickra_macd_fix_is_ready(handle: *mut MacdFix) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_macd_fix_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_macd_fix_name(handle: *mut MacdFix) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -52679,6 +61712,25 @@ pub unsafe extern "C" fn wickra_mama_is_ready(handle: *mut Mama) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_mama_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_mama_name(handle: *mut Mama) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -52768,6 +61820,25 @@ pub unsafe extern "C" fn wickra_median_channel_is_ready(handle: *mut MedianChann } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_median_channel_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_median_channel_name(handle: *mut MedianChannel) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -52866,6 +61937,27 @@ pub unsafe extern "C" fn wickra_modified_ma_stop_is_ready(handle: *mut ModifiedM } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_modified_ma_stop_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_modified_ma_stop_name( + handle: *mut ModifiedMaStop, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -52971,6 +62063,27 @@ pub unsafe extern "C" fn wickra_murrey_math_lines_is_ready(handle: *mut MurreyMa } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_murrey_math_lines_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_murrey_math_lines_name( + handle: *mut MurreyMathLines, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -53067,6 +62180,25 @@ pub unsafe extern "C" fn wickra_nrtr_is_ready(handle: *mut Nrtr) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_nrtr_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_nrtr_name(handle: *mut Nrtr) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -53164,6 +62296,25 @@ pub unsafe extern "C" fn wickra_opening_range_is_ready(handle: *mut OpeningRange } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_opening_range_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_opening_range_name(handle: *mut OpeningRange) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -53263,6 +62414,27 @@ pub unsafe extern "C" fn wickra_overnight_intraday_return_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_overnight_intraday_return_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_overnight_intraday_return_name( + handle: *mut OvernightIntradayReturn, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -53366,6 +62538,27 @@ pub unsafe extern "C" fn wickra_projection_bands_is_ready(handle: *mut Projectio } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_projection_bands_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_projection_bands_name( + handle: *mut ProjectionBands, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -53454,6 +62647,25 @@ pub unsafe extern "C" fn wickra_qqe_is_ready(handle: *mut Qqe) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_qqe_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_qqe_name(handle: *mut Qqe) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -53543,6 +62755,25 @@ pub unsafe extern "C" fn wickra_quartile_bands_is_ready(handle: *mut QuartileBan } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_quartile_bands_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_quartile_bands_name(handle: *mut QuartileBands) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -53640,6 +62871,27 @@ pub unsafe extern "C" fn wickra_relative_strength_ab_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_relative_strength_ab_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_relative_strength_ab_name( + handle: *mut RelativeStrengthAB, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -53736,6 +62988,25 @@ pub unsafe extern "C" fn wickra_rwi_is_ready(handle: *mut Rwi) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_rwi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_rwi_name(handle: *mut Rwi) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -53831,6 +63102,27 @@ pub unsafe extern "C" fn wickra_session_high_low_is_ready(handle: *mut SessionHi } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_session_high_low_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_session_high_low_name( + handle: *mut SessionHighLow, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -53925,6 +63217,25 @@ pub unsafe extern "C" fn wickra_session_range_is_ready(handle: *mut SessionRange } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_session_range_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_session_range_name(handle: *mut SessionRange) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -54027,6 +63338,27 @@ pub unsafe extern "C" fn wickra_smoothed_heikin_ashi_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_smoothed_heikin_ashi_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_smoothed_heikin_ashi_name( + handle: *mut SmoothedHeikinAshi, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -54125,6 +63457,27 @@ pub unsafe extern "C" fn wickra_spread_bollinger_bands_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_spread_bollinger_bands_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_spread_bollinger_bands_name( + handle: *mut SpreadBollingerBands, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -54221,6 +63574,27 @@ pub unsafe extern "C" fn wickra_standard_error_bands_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_standard_error_bands_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_standard_error_bands_name( + handle: *mut StandardErrorBands, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -54322,6 +63696,25 @@ pub unsafe extern "C" fn wickra_starc_bands_is_ready(handle: *mut StarcBands) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_starc_bands_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_starc_bands_name(handle: *mut StarcBands) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -54418,6 +63811,25 @@ pub unsafe extern "C" fn wickra_stochastic_is_ready(handle: *mut Stochastic) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_stochastic_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_stochastic_name(handle: *mut Stochastic) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -54514,6 +63926,25 @@ pub unsafe extern "C" fn wickra_super_trend_is_ready(handle: *mut SuperTrend) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_super_trend_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_super_trend_name(handle: *mut SuperTrend) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -54610,6 +64041,25 @@ pub unsafe extern "C" fn wickra_td_lines_is_ready(handle: *mut TdLines) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_lines_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_lines_name(handle: *mut TdLines) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -54711,6 +64161,27 @@ pub unsafe extern "C" fn wickra_td_moving_average_is_ready(handle: *mut TdMoving } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_moving_average_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_moving_average_name( + handle: *mut TdMovingAverage, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -54808,6 +64279,27 @@ pub unsafe extern "C" fn wickra_td_range_projection_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_range_projection_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_range_projection_name( + handle: *mut TdRangeProjection, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -54904,6 +64396,25 @@ pub unsafe extern "C" fn wickra_td_risk_level_is_ready(handle: *mut TdRiskLevel) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_risk_level_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_risk_level_name(handle: *mut TdRiskLevel) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -55011,6 +64522,25 @@ pub unsafe extern "C" fn wickra_td_sequential_is_ready(handle: *mut TdSequential } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_td_sequential_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_td_sequential_name(handle: *mut TdSequential) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -55111,6 +64641,25 @@ pub unsafe extern "C" fn wickra_ttm_squeeze_is_ready(handle: *mut TtmSqueeze) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_ttm_squeeze_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_ttm_squeeze_name(handle: *mut TtmSqueeze) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -55212,6 +64761,25 @@ pub unsafe extern "C" fn wickra_value_area_is_ready(handle: *mut ValueArea) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_value_area_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_value_area_name(handle: *mut ValueArea) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -55316,6 +64884,25 @@ pub unsafe extern "C" fn wickra_volatility_cone_is_ready(handle: *mut Volatility } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_volatility_cone_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_volatility_cone_name(handle: *mut VolatilityCone) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -55421,6 +65008,27 @@ pub unsafe extern "C" fn wickra_volume_weighted_macd_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_volume_weighted_macd_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_volume_weighted_macd_name( + handle: *mut VolumeWeightedMacd, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -55519,6 +65127,27 @@ pub unsafe extern "C" fn wickra_volume_weighted_sr_is_ready(handle: *mut VolumeW } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_volume_weighted_sr_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_volume_weighted_sr_name( + handle: *mut VolumeWeightedSr, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -55615,6 +65244,25 @@ pub unsafe extern "C" fn wickra_vortex_is_ready(handle: *mut Vortex) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_vortex_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_vortex_name(handle: *mut Vortex) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -55715,6 +65363,27 @@ pub unsafe extern "C" fn wickra_vwap_std_dev_bands_is_ready(handle: *mut VwapStd } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_vwap_std_dev_bands_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_vwap_std_dev_bands_name( + handle: *mut VwapStdDevBands, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -55815,6 +65484,25 @@ pub unsafe extern "C" fn wickra_wave_trend_is_ready(handle: *mut WaveTrend) -> b } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_wave_trend_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_wave_trend_name(handle: *mut WaveTrend) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -55910,6 +65598,27 @@ pub unsafe extern "C" fn wickra_williams_fractals_is_ready(handle: *mut Williams } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_williams_fractals_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_williams_fractals_name( + handle: *mut WilliamsFractals, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -56006,6 +65715,25 @@ pub unsafe extern "C" fn wickra_woodie_pivots_is_ready(handle: *mut WoodiePivots } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_woodie_pivots_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_woodie_pivots_name(handle: *mut WoodiePivots) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -56099,6 +65827,25 @@ pub unsafe extern "C" fn wickra_zero_lag_macd_is_ready(handle: *mut ZeroLagMacd) } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_zero_lag_macd_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_zero_lag_macd_name(handle: *mut ZeroLagMacd) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -56195,6 +65942,25 @@ pub unsafe extern "C" fn wickra_zig_zag_is_ready(handle: *mut ZigZag) -> bool { } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_zig_zag_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_zig_zag_name(handle: *mut ZigZag) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -56313,6 +66079,27 @@ pub unsafe extern "C" fn wickra_day_of_week_profile_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_day_of_week_profile_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_day_of_week_profile_name( + handle: *mut DayOfWeekProfile, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -56419,6 +66206,27 @@ pub unsafe extern "C" fn wickra_intraday_volatility_profile_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_intraday_volatility_profile_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_intraday_volatility_profile_name( + handle: *mut IntradayVolatilityProfile, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -56529,6 +66337,27 @@ pub unsafe extern "C" fn wickra_time_of_day_return_profile_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_time_of_day_return_profile_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_time_of_day_return_profile_name( + handle: *mut TimeOfDayReturnProfile, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -56639,6 +66468,25 @@ pub unsafe extern "C" fn wickra_tpo_profile_is_ready(handle: *mut TpoProfile) -> } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tpo_profile_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tpo_profile_name(handle: *mut TpoProfile) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -56745,6 +66593,27 @@ pub unsafe extern "C" fn wickra_volume_by_time_profile_is_ready( } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_volume_by_time_profile_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_volume_by_time_profile_name( + handle: *mut VolumeByTimeProfile, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -56851,6 +66720,25 @@ pub unsafe extern "C" fn wickra_volume_profile_is_ready(handle: *mut VolumeProfi } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_volume_profile_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_volume_profile_name(handle: *mut VolumeProfile) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57032,6 +66920,25 @@ pub unsafe extern "C" fn wickra_dollar_bars_update( bars.len() } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_dollar_bars_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_dollar_bars_name(handle: *mut DollarBars) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57108,6 +67015,25 @@ pub unsafe extern "C" fn wickra_imbalance_bars_update( bars.len() } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_imbalance_bars_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_imbalance_bars_name(handle: *mut ImbalanceBars) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57181,6 +67107,25 @@ pub unsafe extern "C" fn wickra_kagi_bars_update( bars.len() } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_kagi_bars_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_kagi_bars_name(handle: *mut KagiBars) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57257,6 +67202,27 @@ pub unsafe extern "C" fn wickra_point_and_figure_bars_update( bars.len() } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_point_and_figure_bars_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_point_and_figure_bars_name( + handle: *mut PointAndFigureBars, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57330,6 +67296,25 @@ pub unsafe extern "C" fn wickra_range_bars_update( bars.len() } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_range_bars_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_range_bars_name(handle: *mut RangeBars) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57403,6 +67388,25 @@ pub unsafe extern "C" fn wickra_renko_bars_update( bars.len() } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_renko_bars_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_renko_bars_name(handle: *mut RenkoBars) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57479,6 +67483,25 @@ pub unsafe extern "C" fn wickra_run_bars_update( bars.len() } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_run_bars_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_run_bars_name(handle: *mut RunBars) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57552,6 +67575,27 @@ pub unsafe extern "C" fn wickra_three_line_break_bars_update( bars.len() } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_three_line_break_bars_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_three_line_break_bars_name( + handle: *mut ThreeLineBreakBars, +) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57627,6 +67671,25 @@ pub unsafe extern "C" fn wickra_tick_bars_update( bars.len() } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_tick_bars_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_tick_bars_name(handle: *mut TickBars) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57702,6 +67765,25 @@ pub unsafe extern "C" fn wickra_volume_bars_update( bars.len() } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_volume_bars_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_volume_bars_name(handle: *mut VolumeBars) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57821,6 +67903,25 @@ pub unsafe extern "C" fn wickra_macd_ext_is_ready(handle: *mut MacdExt) -> bool } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_macd_ext_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_macd_ext_name(handle: *mut MacdExt) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57930,6 +68031,25 @@ pub unsafe extern "C" fn wickra_footprint_is_ready(handle: *mut Footprint) -> bo } } +/// Canonical indicator name as a NUL-terminated C string with `'static` lifetime +/// (cached on first call). Returns `NULL` if `handle` is `NULL`. +/// +/// # Safety +/// `handle` must be valid (from `wickra_footprint_new`, not freed), or `NULL`. +#[no_mangle] +pub unsafe extern "C" fn wickra_footprint_name(handle: *mut Footprint) -> *const c_char { + match handle.as_ref() { + Some(ind) => { + static NAME: OnceLock = OnceLock::new(); + NAME.get_or_init(|| { + CString::new(ind.name()).expect("indicator name has no interior NUL") + }) + .as_ptr() + } + None => ptr::null(), + } +} + /// Reset all internal state. No-op if `handle` is `NULL`. /// /// # Safety @@ -57974,6 +68094,9 @@ mod tests { assert!((wickra_sma_update(handle, 3.0) - 2.0).abs() < 1e-9); assert!(wickra_sma_is_ready(handle)); + let name = core::ffi::CStr::from_ptr(wickra_sma_name(handle)); + assert_eq!(name.to_str().unwrap(), "SMA"); + wickra_sma_reset(handle); assert!(!wickra_sma_is_ready(handle)); let input = [1.0_f64, 2.0, 3.0, 4.0, 5.0]; @@ -57993,6 +68116,7 @@ mod tests { assert!(wickra_sma_update(ptr::null_mut(), 1.0).is_nan()); assert_eq!(wickra_sma_warmup_period(ptr::null_mut()), 0); assert!(!wickra_sma_is_ready(ptr::null_mut())); + assert!(wickra_sma_name(ptr::null_mut()).is_null()); wickra_sma_reset(ptr::null_mut()); wickra_sma_free(ptr::null_mut()); } diff --git a/bindings/csharp/Wickra.Tests/GoldenAllTests.g.cs b/bindings/csharp/Wickra.Tests/GoldenAllTests.g.cs index 3443184d..5111d6aa 100644 --- a/bindings/csharp/Wickra.Tests/GoldenAllTests.g.cs +++ b/bindings/csharp/Wickra.Tests/GoldenAllTests.g.cs @@ -159,6 +159,7 @@ public class GoldenAllTests public void Golden_AbandonedBaby() { using var ind = new Wickra.AbandonedBaby(); + Assert.Equal("AbandonedBaby", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -171,6 +172,7 @@ public class GoldenAllTests public void Golden_Abcd() { using var ind = new Wickra.Abcd(); + Assert.Equal("Abcd", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -183,6 +185,7 @@ public class GoldenAllTests public void Golden_AbsoluteBreadthIndex() { using var ind = new Wickra.AbsoluteBreadthIndex(); + Assert.Equal("AbsoluteBreadthIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -196,6 +199,7 @@ public class GoldenAllTests public void Golden_AccelerationBands() { using var ind = new Wickra.AccelerationBands(14, 2.0); + Assert.Equal("AccelerationBands", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -208,6 +212,7 @@ public class GoldenAllTests public void Golden_AcceleratorOscillator() { using var ind = new Wickra.AcceleratorOscillator(3, 7, 14); + Assert.Equal("AcceleratorOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -220,6 +225,7 @@ public class GoldenAllTests public void Golden_AdOscillator() { using var ind = new Wickra.AdOscillator(); + Assert.Equal("ADOSC", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -232,6 +238,7 @@ public class GoldenAllTests public void Golden_AdVolumeLine() { using var ind = new Wickra.AdVolumeLine(); + Assert.Equal("AdVolumeLine", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -245,6 +252,7 @@ public class GoldenAllTests public void Golden_AdaptiveCci() { using var ind = new Wickra.AdaptiveCci(14); + Assert.Equal("AdaptiveCci", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -257,6 +265,7 @@ public class GoldenAllTests public void Golden_AdaptiveCycle() { using var ind = new Wickra.AdaptiveCycle(); + Assert.Equal("AdaptiveCycle", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -269,6 +278,7 @@ public class GoldenAllTests public void Golden_AdaptiveLaguerreFilter() { using var ind = new Wickra.AdaptiveLaguerreFilter(20); + Assert.Equal("AdaptiveLaguerre", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -281,6 +291,7 @@ public class GoldenAllTests public void Golden_AdaptiveRsi() { using var ind = new Wickra.AdaptiveRsi(14); + Assert.Equal("AdaptiveRsi", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -293,6 +304,7 @@ public class GoldenAllTests public void Golden_Adl() { using var ind = new Wickra.Adl(); + Assert.Equal("ADL", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -305,6 +317,7 @@ public class GoldenAllTests public void Golden_AdvanceBlock() { using var ind = new Wickra.AdvanceBlock(); + Assert.Equal("AdvanceBlock", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -317,6 +330,7 @@ public class GoldenAllTests public void Golden_AdvanceDecline() { using var ind = new Wickra.AdvanceDecline(); + Assert.Equal("AdvanceDecline", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -330,6 +344,7 @@ public class GoldenAllTests public void Golden_AdvanceDeclineRatio() { using var ind = new Wickra.AdvanceDeclineRatio(); + Assert.Equal("AdvanceDeclineRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -343,6 +358,7 @@ public class GoldenAllTests public void Golden_Adx() { using var ind = new Wickra.Adx(14); + Assert.Equal("ADX", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -355,6 +371,7 @@ public class GoldenAllTests public void Golden_Adxr() { using var ind = new Wickra.Adxr(14); + Assert.Equal("ADXR", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -367,6 +384,7 @@ public class GoldenAllTests public void Golden_Alligator() { using var ind = new Wickra.Alligator(3, 7, 14); + Assert.Equal("Alligator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -379,6 +397,7 @@ public class GoldenAllTests public void Golden_Alma() { using var ind = new Wickra.Alma(9, 0.85, 6.0); + Assert.Equal("ALMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -391,6 +410,7 @@ public class GoldenAllTests public void Golden_Alpha() { using var ind = new Wickra.Alpha(14, 2.0); + Assert.Equal("Alpha", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -403,6 +423,7 @@ public class GoldenAllTests public void Golden_AmihudIlliquidity() { using var ind = new Wickra.AmihudIlliquidity(20); + Assert.Equal("AmihudIlliquidity", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -415,6 +436,7 @@ public class GoldenAllTests public void Golden_AnchoredRsi() { using var ind = new Wickra.AnchoredRsi(); + Assert.Equal("AnchoredRSI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -427,6 +449,7 @@ public class GoldenAllTests public void Golden_AnchoredVwap() { using var ind = new Wickra.AnchoredVwap(); + Assert.Equal("AnchoredVWAP", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -439,6 +462,7 @@ public class GoldenAllTests public void Golden_AndrewsPitchfork() { using var ind = new Wickra.AndrewsPitchfork(14); + Assert.Equal("AndrewsPitchfork", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -451,6 +475,7 @@ public class GoldenAllTests public void Golden_Apo() { using var ind = new Wickra.Apo(3, 7); + Assert.Equal("APO", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -463,6 +488,7 @@ public class GoldenAllTests public void Golden_Aroon() { using var ind = new Wickra.Aroon(14); + Assert.Equal("Aroon", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -475,6 +501,7 @@ public class GoldenAllTests public void Golden_AroonOscillator() { using var ind = new Wickra.AroonOscillator(14); + Assert.Equal("AroonOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -487,6 +514,7 @@ public class GoldenAllTests public void Golden_Atr() { using var ind = new Wickra.Atr(14); + Assert.Equal("ATR", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -499,6 +527,7 @@ public class GoldenAllTests public void Golden_AtrBands() { using var ind = new Wickra.AtrBands(14, 2.0); + Assert.Equal("AtrBands", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -511,6 +540,7 @@ public class GoldenAllTests public void Golden_AtrRatchet() { using var ind = new Wickra.AtrRatchet(14, 2.0, 0.5); + Assert.Equal("AtrRatchet", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -523,6 +553,7 @@ public class GoldenAllTests public void Golden_AtrTrailingStop() { using var ind = new Wickra.AtrTrailingStop(14, 2.0); + Assert.Equal("AtrTrailingStop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -535,6 +566,7 @@ public class GoldenAllTests public void Golden_AutoFib() { using var ind = new Wickra.AutoFib(); + Assert.Equal("AutoFib", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -547,6 +579,7 @@ public class GoldenAllTests public void Golden_Autocorrelation() { using var ind = new Wickra.Autocorrelation(10, 1); + Assert.Equal("Autocorrelation", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -559,6 +592,7 @@ public class GoldenAllTests public void Golden_AutocorrelationPeriodogram() { using var ind = new Wickra.AutocorrelationPeriodogram(10, 48); + Assert.Equal("AutocorrelationPeriodogram", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -571,6 +605,7 @@ public class GoldenAllTests public void Golden_AverageDailyRange() { using var ind = new Wickra.AverageDailyRange(14, 0); + Assert.Equal("AverageDailyRange", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -583,6 +618,7 @@ public class GoldenAllTests public void Golden_AverageDrawdown() { using var ind = new Wickra.AverageDrawdown(14); + Assert.Equal("AverageDrawdown", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -595,6 +631,7 @@ public class GoldenAllTests public void Golden_AvgPrice() { using var ind = new Wickra.AvgPrice(); + Assert.Equal("AVGPRICE", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -607,6 +644,7 @@ public class GoldenAllTests public void Golden_AwesomeOscillator() { using var ind = new Wickra.AwesomeOscillator(3, 7); + Assert.Equal("AwesomeOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -619,6 +657,7 @@ public class GoldenAllTests public void Golden_AwesomeOscillatorHistogram() { using var ind = new Wickra.AwesomeOscillatorHistogram(3, 7, 14); + Assert.Equal("AwesomeOscillatorHistogram", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -631,6 +670,7 @@ public class GoldenAllTests public void Golden_BalanceOfPower() { using var ind = new Wickra.BalanceOfPower(); + Assert.Equal("BalanceOfPower", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -643,6 +683,7 @@ public class GoldenAllTests public void Golden_BandpassFilter() { using var ind = new Wickra.BandpassFilter(20, 0.3); + Assert.Equal("BandpassFilter", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -655,6 +696,7 @@ public class GoldenAllTests public void Golden_Bat() { using var ind = new Wickra.Bat(); + Assert.Equal("Bat", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -667,6 +709,7 @@ public class GoldenAllTests public void Golden_BeltHold() { using var ind = new Wickra.BeltHold(); + Assert.Equal("BeltHold", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -679,6 +722,7 @@ public class GoldenAllTests public void Golden_Beta() { using var ind = new Wickra.Beta(14); + Assert.Equal("Beta", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -691,6 +735,7 @@ public class GoldenAllTests public void Golden_BetaNeutralSpread() { using var ind = new Wickra.BetaNeutralSpread(14); + Assert.Equal("BetaNeutralSpread", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -703,6 +748,7 @@ public class GoldenAllTests public void Golden_BetterVolume() { using var ind = new Wickra.BetterVolume(14); + Assert.Equal("BetterVolume", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -715,6 +761,7 @@ public class GoldenAllTests public void Golden_BipowerVariation() { using var ind = new Wickra.BipowerVariation(14); + Assert.Equal("BipowerVariation", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -727,6 +774,7 @@ public class GoldenAllTests public void Golden_BodySizePct() { using var ind = new Wickra.BodySizePct(); + Assert.Equal("BodySizePct", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -739,6 +787,7 @@ public class GoldenAllTests public void Golden_BollingerBands() { using var ind = new Wickra.BollingerBands(20, 2.0); + Assert.Equal("BollingerBands", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -751,6 +800,7 @@ public class GoldenAllTests public void Golden_BollingerBandwidth() { using var ind = new Wickra.BollingerBandwidth(14, 2.0); + Assert.Equal("BollingerBandwidth", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -763,6 +813,7 @@ public class GoldenAllTests public void Golden_BomarBands() { using var ind = new Wickra.BomarBands(4, 0.85); + Assert.Equal("BomarBands", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -775,6 +826,7 @@ public class GoldenAllTests public void Golden_BreadthThrust() { using var ind = new Wickra.BreadthThrust(10); + Assert.Equal("BreadthThrust", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -788,6 +840,7 @@ public class GoldenAllTests public void Golden_Breakaway() { using var ind = new Wickra.Breakaway(); + Assert.Equal("Breakaway", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -800,6 +853,7 @@ public class GoldenAllTests public void Golden_BullishPercentIndex() { using var ind = new Wickra.BullishPercentIndex(); + Assert.Equal("BullishPercentIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -813,6 +867,7 @@ public class GoldenAllTests public void Golden_BurkeRatio() { using var ind = new Wickra.BurkeRatio(14); + Assert.Equal("BurkeRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -825,6 +880,7 @@ public class GoldenAllTests public void Golden_Butterfly() { using var ind = new Wickra.Butterfly(); + Assert.Equal("Butterfly", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -837,6 +893,7 @@ public class GoldenAllTests public void Golden_CalendarSpread() { using var ind = new Wickra.CalendarSpread(); + Assert.Equal("CalendarSpread", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -850,6 +907,7 @@ public class GoldenAllTests public void Golden_CalmarRatio() { using var ind = new Wickra.CalmarRatio(14); + Assert.Equal("CalmarRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -862,6 +920,7 @@ public class GoldenAllTests public void Golden_Camarilla() { using var ind = new Wickra.Camarilla(); + Assert.Equal("Camarilla", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -874,6 +933,7 @@ public class GoldenAllTests public void Golden_CandleVolume() { using var ind = new Wickra.CandleVolume(14); + Assert.Equal("CandleVolume", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -886,6 +946,7 @@ public class GoldenAllTests public void Golden_Cci() { using var ind = new Wickra.Cci(14); + Assert.Equal("CCI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -898,6 +959,7 @@ public class GoldenAllTests public void Golden_CenterOfGravity() { using var ind = new Wickra.CenterOfGravity(14); + Assert.Equal("CenterOfGravity", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -910,6 +972,7 @@ public class GoldenAllTests public void Golden_CentralPivotRange() { using var ind = new Wickra.CentralPivotRange(); + Assert.Equal("CentralPivotRange", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -922,6 +985,7 @@ public class GoldenAllTests public void Golden_Cfo() { using var ind = new Wickra.Cfo(14); + Assert.Equal("CFO", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -934,6 +998,7 @@ public class GoldenAllTests public void Golden_ChaikinMoneyFlow() { using var ind = new Wickra.ChaikinMoneyFlow(20); + Assert.Equal("CMF", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -946,6 +1011,7 @@ public class GoldenAllTests public void Golden_ChaikinOscillator() { using var ind = new Wickra.ChaikinOscillator(3, 7); + Assert.Equal("ChaikinOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -958,6 +1024,7 @@ public class GoldenAllTests public void Golden_ChaikinVolatility() { using var ind = new Wickra.ChaikinVolatility(3, 7); + Assert.Equal("ChaikinVolatility", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -970,6 +1037,7 @@ public class GoldenAllTests public void Golden_ChandeKrollStop() { using var ind = new Wickra.ChandeKrollStop(3, 2.0, 7); + Assert.Equal("ChandeKrollStop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -982,6 +1050,7 @@ public class GoldenAllTests public void Golden_ChandelierExit() { using var ind = new Wickra.ChandelierExit(14, 2.0); + Assert.Equal("ChandelierExit", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -994,6 +1063,7 @@ public class GoldenAllTests public void Golden_ChoppinessIndex() { using var ind = new Wickra.ChoppinessIndex(14); + Assert.Equal("ChoppinessIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1006,6 +1076,7 @@ public class GoldenAllTests public void Golden_ClassicPivots() { using var ind = new Wickra.ClassicPivots(); + Assert.Equal("ClassicPivots", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1018,6 +1089,7 @@ public class GoldenAllTests public void Golden_CloseVsOpen() { using var ind = new Wickra.CloseVsOpen(); + Assert.Equal("CloseVsOpen", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1030,6 +1102,7 @@ public class GoldenAllTests public void Golden_ClosingMarubozu() { using var ind = new Wickra.ClosingMarubozu(); + Assert.Equal("ClosingMarubozu", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1042,6 +1115,7 @@ public class GoldenAllTests public void Golden_Cmo() { using var ind = new Wickra.Cmo(14); + Assert.Equal("CMO", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1054,6 +1128,7 @@ public class GoldenAllTests public void Golden_CoefficientOfVariation() { using var ind = new Wickra.CoefficientOfVariation(14); + Assert.Equal("CoefficientOfVariation", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1066,6 +1141,7 @@ public class GoldenAllTests public void Golden_Cointegration() { using var ind = new Wickra.Cointegration(40, 1); + Assert.Equal("Cointegration", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1078,6 +1154,7 @@ public class GoldenAllTests public void Golden_CommonSenseRatio() { using var ind = new Wickra.CommonSenseRatio(14); + Assert.Equal("CommonSenseRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1090,6 +1167,7 @@ public class GoldenAllTests public void Golden_CompositeProfile() { using var ind = new Wickra.CompositeProfile(20, 24, 0.7); + Assert.Equal("CompositeProfile", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1102,6 +1180,7 @@ public class GoldenAllTests public void Golden_ConcealingBabySwallow() { using var ind = new Wickra.ConcealingBabySwallow(); + Assert.Equal("ConcealingBabySwallow", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1114,6 +1193,7 @@ public class GoldenAllTests public void Golden_ConditionalValueAtRisk() { using var ind = new Wickra.ConditionalValueAtRisk(20, 0.95); + Assert.Equal("ConditionalValueAtRisk", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1126,6 +1206,7 @@ public class GoldenAllTests public void Golden_ConnorsRsi() { using var ind = new Wickra.ConnorsRsi(3, 7, 14); + Assert.Equal("ConnorsRSI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1138,6 +1219,7 @@ public class GoldenAllTests public void Golden_Coppock() { using var ind = new Wickra.Coppock(3, 7, 14); + Assert.Equal("Coppock", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1150,6 +1232,7 @@ public class GoldenAllTests public void Golden_CorrelationTrendIndicator() { using var ind = new Wickra.CorrelationTrendIndicator(14); + Assert.Equal("CorrelationTrendIndicator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1162,6 +1245,7 @@ public class GoldenAllTests public void Golden_Counterattack() { using var ind = new Wickra.Counterattack(); + Assert.Equal("Counterattack", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1174,6 +1258,7 @@ public class GoldenAllTests public void Golden_Crab() { using var ind = new Wickra.Crab(); + Assert.Equal("Crab", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1186,6 +1271,7 @@ public class GoldenAllTests public void Golden_CumulativeVolumeDelta() { using var ind = new Wickra.CumulativeVolumeDelta(); + Assert.Equal("CumulativeVolumeDelta", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1198,6 +1284,7 @@ public class GoldenAllTests public void Golden_CumulativeVolumeIndex() { using var ind = new Wickra.CumulativeVolumeIndex(); + Assert.Equal("CumulativeVolumeIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1211,6 +1298,7 @@ public class GoldenAllTests public void Golden_CupAndHandle() { using var ind = new Wickra.CupAndHandle(); + Assert.Equal("CupAndHandle", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1223,6 +1311,7 @@ public class GoldenAllTests public void Golden_CyberneticCycle() { using var ind = new Wickra.CyberneticCycle(14); + Assert.Equal("CyberneticCycle", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1235,6 +1324,7 @@ public class GoldenAllTests public void Golden_Cypher() { using var ind = new Wickra.Cypher(); + Assert.Equal("Cypher", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1247,6 +1337,7 @@ public class GoldenAllTests public void Golden_DayOfWeekProfile() { using var ind = new Wickra.DayOfWeekProfile(0); + Assert.Equal("DayOfWeekProfile", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1260,6 +1351,7 @@ public class GoldenAllTests public void Golden_Decycler() { using var ind = new Wickra.Decycler(14); + Assert.Equal("Decycler", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1272,6 +1364,7 @@ public class GoldenAllTests public void Golden_DecyclerOscillator() { using var ind = new Wickra.DecyclerOscillator(3, 7); + Assert.Equal("DecyclerOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1284,6 +1377,7 @@ public class GoldenAllTests public void Golden_Dema() { using var ind = new Wickra.Dema(14); + Assert.Equal("DEMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1296,6 +1390,7 @@ public class GoldenAllTests public void Golden_DemandIndex() { using var ind = new Wickra.DemandIndex(14); + Assert.Equal("DemandIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1308,6 +1403,7 @@ public class GoldenAllTests public void Golden_DemarkPivots() { using var ind = new Wickra.DemarkPivots(); + Assert.Equal("DemarkPivots", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1320,6 +1416,7 @@ public class GoldenAllTests public void Golden_DepthSlope() { using var ind = new Wickra.DepthSlope(); + Assert.Equal("DepthSlope", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1333,6 +1430,7 @@ public class GoldenAllTests public void Golden_DerivativeOscillator() { using var ind = new Wickra.DerivativeOscillator(3, 7, 14, 28); + Assert.Equal("DerivativeOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1345,6 +1443,7 @@ public class GoldenAllTests public void Golden_DetrendedStdDev() { using var ind = new Wickra.DetrendedStdDev(14); + Assert.Equal("DetrendedStdDev", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1357,6 +1456,7 @@ public class GoldenAllTests public void Golden_DisparityIndex() { using var ind = new Wickra.DisparityIndex(14); + Assert.Equal("DisparityIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1369,6 +1469,7 @@ public class GoldenAllTests public void Golden_DistanceSsd() { using var ind = new Wickra.DistanceSsd(14); + Assert.Equal("DistanceSsd", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1381,6 +1482,7 @@ public class GoldenAllTests public void Golden_Doji() { using var ind = new Wickra.Doji(); + Assert.Equal("Doji", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1393,6 +1495,7 @@ public class GoldenAllTests public void Golden_DojiStar() { using var ind = new Wickra.DojiStar(); + Assert.Equal("DojiStar", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1405,6 +1508,7 @@ public class GoldenAllTests public void Golden_DollarBars() { using var ind = new Wickra.DollarBars(50000.0); + Assert.Equal("DollarBars", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1417,6 +1521,7 @@ public class GoldenAllTests public void Golden_Donchian() { using var ind = new Wickra.Donchian(14); + Assert.Equal("DonchianChannels", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1429,6 +1534,7 @@ public class GoldenAllTests public void Golden_DonchianStop() { using var ind = new Wickra.DonchianStop(14); + Assert.Equal("DonchianStop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1441,6 +1547,7 @@ public class GoldenAllTests public void Golden_DoubleBollinger() { using var ind = new Wickra.DoubleBollinger(20, 1.0, 2.0); + Assert.Equal("DoubleBollinger", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1453,6 +1560,7 @@ public class GoldenAllTests public void Golden_DoubleTopBottom() { using var ind = new Wickra.DoubleTopBottom(); + Assert.Equal("DoubleTopBottom", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1465,6 +1573,7 @@ public class GoldenAllTests public void Golden_DownsideGapThreeMethods() { using var ind = new Wickra.DownsideGapThreeMethods(); + Assert.Equal("DownsideGapThreeMethods", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1477,6 +1586,7 @@ public class GoldenAllTests public void Golden_Dpo() { using var ind = new Wickra.Dpo(14); + Assert.Equal("DPO", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1489,6 +1599,7 @@ public class GoldenAllTests public void Golden_DragonflyDoji() { using var ind = new Wickra.DragonflyDoji(); + Assert.Equal("DragonflyDoji", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1501,6 +1612,7 @@ public class GoldenAllTests public void Golden_DrawdownDuration() { using var ind = new Wickra.DrawdownDuration(); + Assert.Equal("DrawdownDuration", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1513,6 +1625,7 @@ public class GoldenAllTests public void Golden_DumplingTop() { using var ind = new Wickra.DumplingTop(14); + Assert.Equal("DumplingTop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1525,6 +1638,7 @@ public class GoldenAllTests public void Golden_Dx() { using var ind = new Wickra.Dx(14); + Assert.Equal("DX", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1537,6 +1651,7 @@ public class GoldenAllTests public void Golden_DynamicMomentumIndex() { using var ind = new Wickra.DynamicMomentumIndex(14); + Assert.Equal("DynamicMomentumIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1549,6 +1664,7 @@ public class GoldenAllTests public void Golden_EaseOfMovement() { using var ind = new Wickra.EaseOfMovement(14); + Assert.Equal("EaseOfMovement", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1561,6 +1677,7 @@ public class GoldenAllTests public void Golden_EffectiveSpread() { using var ind = new Wickra.EffectiveSpread(); + Assert.Equal("EffectiveSpread", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1573,6 +1690,7 @@ public class GoldenAllTests public void Golden_EhlersStochastic() { using var ind = new Wickra.EhlersStochastic(14); + Assert.Equal("EhlersStochastic", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1585,6 +1703,7 @@ public class GoldenAllTests public void Golden_Ehma() { using var ind = new Wickra.Ehma(14); + Assert.Equal("EHMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1597,6 +1716,7 @@ public class GoldenAllTests public void Golden_ElderImpulse() { using var ind = new Wickra.ElderImpulse(3, 7, 14, 28); + Assert.Equal("ElderImpulse", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1609,6 +1729,7 @@ public class GoldenAllTests public void Golden_ElderRay() { using var ind = new Wickra.ElderRay(14); + Assert.Equal("ElderRay", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1621,6 +1742,7 @@ public class GoldenAllTests public void Golden_ElderSafeZone() { using var ind = new Wickra.ElderSafeZone(10, 2.0); + Assert.Equal("ElderSafeZone", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1633,6 +1755,7 @@ public class GoldenAllTests public void Golden_Ema() { using var ind = new Wickra.Ema(14); + Assert.Equal("EMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1645,6 +1768,7 @@ public class GoldenAllTests public void Golden_EmpiricalModeDecomposition() { using var ind = new Wickra.EmpiricalModeDecomposition(20, 0.1); + Assert.Equal("EmpiricalModeDecomposition", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1657,6 +1781,7 @@ public class GoldenAllTests public void Golden_Engulfing() { using var ind = new Wickra.Engulfing(); + Assert.Equal("Engulfing", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1669,6 +1794,7 @@ public class GoldenAllTests public void Golden_Equivolume() { using var ind = new Wickra.Equivolume(14); + Assert.Equal("Equivolume", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1681,6 +1807,7 @@ public class GoldenAllTests public void Golden_EstimatedLeverageRatio() { using var ind = new Wickra.EstimatedLeverageRatio(); + Assert.Equal("EstimatedLeverageRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1694,6 +1821,7 @@ public class GoldenAllTests public void Golden_EvenBetterSinewave() { using var ind = new Wickra.EvenBetterSinewave(40, 10); + Assert.Equal("EvenBetterSinewave", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1706,6 +1834,7 @@ public class GoldenAllTests public void Golden_EveningDojiStar() { using var ind = new Wickra.EveningDojiStar(); + Assert.Equal("EveningDojiStar", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1718,6 +1847,7 @@ public class GoldenAllTests public void Golden_Evwma() { using var ind = new Wickra.Evwma(14); + Assert.Equal("EVWMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1730,6 +1860,7 @@ public class GoldenAllTests public void Golden_EwmaVolatility() { using var ind = new Wickra.EwmaVolatility(0.94); + Assert.Equal("EwmaVolatility", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1742,6 +1873,7 @@ public class GoldenAllTests public void Golden_Expectancy() { using var ind = new Wickra.Expectancy(14); + Assert.Equal("Expectancy", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1754,6 +1886,7 @@ public class GoldenAllTests public void Golden_FallingThreeMethods() { using var ind = new Wickra.FallingThreeMethods(); + Assert.Equal("FallingThreeMethods", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1766,6 +1899,7 @@ public class GoldenAllTests public void Golden_Fama() { using var ind = new Wickra.Fama(0.5, 0.05); + Assert.Equal("FAMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1778,6 +1912,7 @@ public class GoldenAllTests public void Golden_FibArcs() { using var ind = new Wickra.FibArcs(); + Assert.Equal("FibArcs", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1790,6 +1925,7 @@ public class GoldenAllTests public void Golden_FibChannel() { using var ind = new Wickra.FibChannel(); + Assert.Equal("FibChannel", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1802,6 +1938,7 @@ public class GoldenAllTests public void Golden_FibConfluence() { using var ind = new Wickra.FibConfluence(); + Assert.Equal("FibConfluence", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1814,6 +1951,7 @@ public class GoldenAllTests public void Golden_FibExtension() { using var ind = new Wickra.FibExtension(); + Assert.Equal("FibExtension", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1826,6 +1964,7 @@ public class GoldenAllTests public void Golden_FibFan() { using var ind = new Wickra.FibFan(); + Assert.Equal("FibFan", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1838,6 +1977,7 @@ public class GoldenAllTests public void Golden_FibProjection() { using var ind = new Wickra.FibProjection(); + Assert.Equal("FibProjection", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1850,6 +1990,7 @@ public class GoldenAllTests public void Golden_FibRetracement() { using var ind = new Wickra.FibRetracement(); + Assert.Equal("FibRetracement", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1862,6 +2003,7 @@ public class GoldenAllTests public void Golden_FibTimeZones() { using var ind = new Wickra.FibTimeZones(); + Assert.Equal("FibTimeZones", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1874,6 +2016,7 @@ public class GoldenAllTests public void Golden_FibonacciPivots() { using var ind = new Wickra.FibonacciPivots(); + Assert.Equal("FibonacciPivots", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1886,6 +2029,7 @@ public class GoldenAllTests public void Golden_FisherRsi() { using var ind = new Wickra.FisherRsi(14); + Assert.Equal("FisherRSI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1898,6 +2042,7 @@ public class GoldenAllTests public void Golden_FisherTransform() { using var ind = new Wickra.FisherTransform(14); + Assert.Equal("FisherTransform", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1910,6 +2055,7 @@ public class GoldenAllTests public void Golden_FlagPennant() { using var ind = new Wickra.FlagPennant(); + Assert.Equal("FlagPennant", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1922,6 +2068,7 @@ public class GoldenAllTests public void Golden_Footprint() { using var ind = new Wickra.Footprint(1.0); + Assert.Equal("Footprint", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1934,6 +2081,7 @@ public class GoldenAllTests public void Golden_ForceIndex() { using var ind = new Wickra.ForceIndex(14); + Assert.Equal("ForceIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1946,6 +2094,7 @@ public class GoldenAllTests public void Golden_FractalChaosBands() { using var ind = new Wickra.FractalChaosBands(14); + Assert.Equal("FractalChaosBands", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1958,6 +2107,7 @@ public class GoldenAllTests public void Golden_Frama() { using var ind = new Wickra.Frama(14); + Assert.Equal("FRAMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1970,6 +2120,7 @@ public class GoldenAllTests public void Golden_FryPanBottom() { using var ind = new Wickra.FryPanBottom(14); + Assert.Equal("FryPanBottom", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1982,6 +2133,7 @@ public class GoldenAllTests public void Golden_FundingBasis() { using var ind = new Wickra.FundingBasis(); + Assert.Equal("FundingBasis", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -1995,6 +2147,7 @@ public class GoldenAllTests public void Golden_FundingImpliedApr() { using var ind = new Wickra.FundingImpliedApr(1095.0); + Assert.Equal("FundingImpliedApr", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2008,6 +2161,7 @@ public class GoldenAllTests public void Golden_FundingRate() { using var ind = new Wickra.FundingRate(); + Assert.Equal("FundingRate", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2021,6 +2175,7 @@ public class GoldenAllTests public void Golden_FundingRateMean() { using var ind = new Wickra.FundingRateMean(20); + Assert.Equal("FundingRateMean", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2034,6 +2189,7 @@ public class GoldenAllTests public void Golden_FundingRateZScore() { using var ind = new Wickra.FundingRateZScore(20); + Assert.Equal("FundingRateZScore", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2047,6 +2203,7 @@ public class GoldenAllTests public void Golden_GainLossRatio() { using var ind = new Wickra.GainLossRatio(14); + Assert.Equal("GainLossRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2059,6 +2216,7 @@ public class GoldenAllTests public void Golden_GainToPainRatio() { using var ind = new Wickra.GainToPainRatio(14); + Assert.Equal("GainToPainRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2071,6 +2229,7 @@ public class GoldenAllTests public void Golden_GapSideBySideWhite() { using var ind = new Wickra.GapSideBySideWhite(); + Assert.Equal("GapSideBySideWhite", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2083,6 +2242,7 @@ public class GoldenAllTests public void Golden_Garch11() { using var ind = new Wickra.Garch11(2e-06, 0.1, 0.88); + Assert.Equal("Garch11", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2095,6 +2255,7 @@ public class GoldenAllTests public void Golden_GarmanKlassVolatility() { using var ind = new Wickra.GarmanKlassVolatility(20, 252); + Assert.Equal("GarmanKlassVolatility", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2107,6 +2268,7 @@ public class GoldenAllTests public void Golden_Gartley() { using var ind = new Wickra.Gartley(); + Assert.Equal("Gartley", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2119,6 +2281,7 @@ public class GoldenAllTests public void Golden_GatorOscillator() { using var ind = new Wickra.GatorOscillator(3, 7, 14); + Assert.Equal("GatorOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2131,6 +2294,7 @@ public class GoldenAllTests public void Golden_GeneralizedDema() { using var ind = new Wickra.GeneralizedDema(5, 0.7); + Assert.Equal("GD", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2143,6 +2307,7 @@ public class GoldenAllTests public void Golden_GeometricMa() { using var ind = new Wickra.GeometricMa(14); + Assert.Equal("GMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2155,6 +2320,7 @@ public class GoldenAllTests public void Golden_GoldenPocket() { using var ind = new Wickra.GoldenPocket(); + Assert.Equal("GoldenPocket", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2167,6 +2333,7 @@ public class GoldenAllTests public void Golden_GrangerCausality() { using var ind = new Wickra.GrangerCausality(60, 1); + Assert.Equal("GrangerCausality", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2179,6 +2346,7 @@ public class GoldenAllTests public void Golden_GravestoneDoji() { using var ind = new Wickra.GravestoneDoji(); + Assert.Equal("GravestoneDoji", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2191,6 +2359,7 @@ public class GoldenAllTests public void Golden_Hammer() { using var ind = new Wickra.Hammer(); + Assert.Equal("Hammer", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2203,6 +2372,7 @@ public class GoldenAllTests public void Golden_HangingMan() { using var ind = new Wickra.HangingMan(); + Assert.Equal("HangingMan", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2215,6 +2385,7 @@ public class GoldenAllTests public void Golden_Harami() { using var ind = new Wickra.Harami(); + Assert.Equal("Harami", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2227,6 +2398,7 @@ public class GoldenAllTests public void Golden_HaramiCross() { using var ind = new Wickra.HaramiCross(); + Assert.Equal("HaramiCross", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2239,6 +2411,7 @@ public class GoldenAllTests public void Golden_HasbrouckInformationShare() { using var ind = new Wickra.HasbrouckInformationShare(14); + Assert.Equal("HasbrouckInformationShare", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2251,6 +2424,7 @@ public class GoldenAllTests public void Golden_HeadAndShoulders() { using var ind = new Wickra.HeadAndShoulders(); + Assert.Equal("HeadAndShoulders", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2263,6 +2437,7 @@ public class GoldenAllTests public void Golden_HeikinAshi() { using var ind = new Wickra.HeikinAshi(); + Assert.Equal("HeikinAshi", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2275,6 +2450,7 @@ public class GoldenAllTests public void Golden_HeikinAshiOscillator() { using var ind = new Wickra.HeikinAshiOscillator(14); + Assert.Equal("HeikinAshiOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2287,6 +2463,7 @@ public class GoldenAllTests public void Golden_HiLoActivator() { using var ind = new Wickra.HiLoActivator(14); + Assert.Equal("HiLoActivator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2299,6 +2476,7 @@ public class GoldenAllTests public void Golden_HighLowIndex() { using var ind = new Wickra.HighLowIndex(10); + Assert.Equal("HighLowIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2312,6 +2490,7 @@ public class GoldenAllTests public void Golden_HighLowRange() { using var ind = new Wickra.HighLowRange(); + Assert.Equal("HighLowRange", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2324,6 +2503,7 @@ public class GoldenAllTests public void Golden_HighLowVolumeNodes() { using var ind = new Wickra.HighLowVolumeNodes(3, 7); + Assert.Equal("HighLowVolumeNodes", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2336,6 +2516,7 @@ public class GoldenAllTests public void Golden_HighWave() { using var ind = new Wickra.HighWave(); + Assert.Equal("HighWave", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2348,6 +2529,7 @@ public class GoldenAllTests public void Golden_HighpassFilter() { using var ind = new Wickra.HighpassFilter(14); + Assert.Equal("HighpassFilter", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2360,6 +2542,7 @@ public class GoldenAllTests public void Golden_Hikkake() { using var ind = new Wickra.Hikkake(); + Assert.Equal("Hikkake", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2372,6 +2555,7 @@ public class GoldenAllTests public void Golden_HikkakeModified() { using var ind = new Wickra.HikkakeModified(); + Assert.Equal("HikkakeModified", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2384,6 +2568,7 @@ public class GoldenAllTests public void Golden_HilbertDominantCycle() { using var ind = new Wickra.HilbertDominantCycle(); + Assert.Equal("HilbertDominantCycle", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2396,6 +2581,7 @@ public class GoldenAllTests public void Golden_HistoricalVolatility() { using var ind = new Wickra.HistoricalVolatility(3, 7); + Assert.Equal("HistoricalVolatility", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2408,6 +2594,7 @@ public class GoldenAllTests public void Golden_Hma() { using var ind = new Wickra.Hma(14); + Assert.Equal("HMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2420,6 +2607,7 @@ public class GoldenAllTests public void Golden_HoltWinters() { using var ind = new Wickra.HoltWinters(0.5, 0.1); + Assert.Equal("HoltWinters", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2432,6 +2620,7 @@ public class GoldenAllTests public void Golden_HomingPigeon() { using var ind = new Wickra.HomingPigeon(); + Assert.Equal("HomingPigeon", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2444,6 +2633,7 @@ public class GoldenAllTests public void Golden_HtDcPhase() { using var ind = new Wickra.HtDcPhase(); + Assert.Equal("HT_DCPHASE", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2456,6 +2646,7 @@ public class GoldenAllTests public void Golden_HtPhasor() { using var ind = new Wickra.HtPhasor(); + Assert.Equal("HT_PHASOR", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2468,6 +2659,7 @@ public class GoldenAllTests public void Golden_HtTrendMode() { using var ind = new Wickra.HtTrendMode(); + Assert.Equal("HT_TRENDMODE", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2480,6 +2672,7 @@ public class GoldenAllTests public void Golden_HurstChannel() { using var ind = new Wickra.HurstChannel(14, 2.0); + Assert.Equal("HurstChannel", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2492,6 +2685,7 @@ public class GoldenAllTests public void Golden_HurstExponent() { using var ind = new Wickra.HurstExponent(100, 4); + Assert.Equal("HurstExponent", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2504,6 +2698,7 @@ public class GoldenAllTests public void Golden_Ichimoku() { using var ind = new Wickra.Ichimoku(9, 26, 52, 26); + Assert.Equal("Ichimoku", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2516,6 +2711,7 @@ public class GoldenAllTests public void Golden_IdenticalThreeCrows() { using var ind = new Wickra.IdenticalThreeCrows(); + Assert.Equal("IdenticalThreeCrows", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2528,6 +2724,7 @@ public class GoldenAllTests public void Golden_ImbalanceBars() { using var ind = new Wickra.ImbalanceBars(5.0); + Assert.Equal("ImbalanceBars", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2540,6 +2737,7 @@ public class GoldenAllTests public void Golden_InNeck() { using var ind = new Wickra.InNeck(); + Assert.Equal("InNeck", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2552,6 +2750,7 @@ public class GoldenAllTests public void Golden_Inertia() { using var ind = new Wickra.Inertia(3, 7); + Assert.Equal("Inertia", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2564,6 +2763,7 @@ public class GoldenAllTests public void Golden_InformationRatio() { using var ind = new Wickra.InformationRatio(14); + Assert.Equal("InformationRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2576,6 +2776,7 @@ public class GoldenAllTests public void Golden_InitialBalance() { using var ind = new Wickra.InitialBalance(14); + Assert.Equal("InitialBalance", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2588,6 +2789,7 @@ public class GoldenAllTests public void Golden_InstantaneousTrendline() { using var ind = new Wickra.InstantaneousTrendline(14); + Assert.Equal("InstantaneousTrendline", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2600,6 +2802,7 @@ public class GoldenAllTests public void Golden_IntradayIntensity() { using var ind = new Wickra.IntradayIntensity(); + Assert.Equal("IntradayIntensity", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2612,6 +2815,7 @@ public class GoldenAllTests public void Golden_IntradayMomentumIndex() { using var ind = new Wickra.IntradayMomentumIndex(14); + Assert.Equal("IMI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2624,6 +2828,7 @@ public class GoldenAllTests public void Golden_IntradayVolatilityProfile() { using var ind = new Wickra.IntradayVolatilityProfile(24, 0); + Assert.Equal("IntradayVolatilityProfile", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2637,6 +2842,7 @@ public class GoldenAllTests public void Golden_InverseFisherTransform() { using var ind = new Wickra.InverseFisherTransform(2.0); + Assert.Equal("InverseFisherTransform", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2649,6 +2855,7 @@ public class GoldenAllTests public void Golden_InvertedHammer() { using var ind = new Wickra.InvertedHammer(); + Assert.Equal("InvertedHammer", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2661,6 +2868,7 @@ public class GoldenAllTests public void Golden_JarqueBera() { using var ind = new Wickra.JarqueBera(14); + Assert.Equal("JarqueBera", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2673,6 +2881,7 @@ public class GoldenAllTests public void Golden_Jma() { using var ind = new Wickra.Jma(7, 0.0, 2u); + Assert.Equal("JMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2685,6 +2894,7 @@ public class GoldenAllTests public void Golden_JumpIndicator() { using var ind = new Wickra.JumpIndicator(14, 2.0); + Assert.Equal("JumpIndicator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2697,6 +2907,7 @@ public class GoldenAllTests public void Golden_KRatio() { using var ind = new Wickra.KRatio(14); + Assert.Equal("KRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2709,6 +2920,7 @@ public class GoldenAllTests public void Golden_KagiBars() { using var ind = new Wickra.KagiBars(2.0); + Assert.Equal("KagiBars", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2721,6 +2933,7 @@ public class GoldenAllTests public void Golden_KalmanHedgeRatio() { using var ind = new Wickra.KalmanHedgeRatio(0.01, 0.001); + Assert.Equal("KalmanHedgeRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2733,6 +2946,7 @@ public class GoldenAllTests public void Golden_Kama() { using var ind = new Wickra.Kama(3, 7, 14); + Assert.Equal("KAMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2745,6 +2959,7 @@ public class GoldenAllTests public void Golden_KaseDevStop() { using var ind = new Wickra.KaseDevStop(14, 2.0); + Assert.Equal("KaseDevStop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2757,6 +2972,7 @@ public class GoldenAllTests public void Golden_KasePermissionStochastic() { using var ind = new Wickra.KasePermissionStochastic(3, 7); + Assert.Equal("KasePermissionStochastic", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2769,6 +2985,7 @@ public class GoldenAllTests public void Golden_KellyCriterion() { using var ind = new Wickra.KellyCriterion(14); + Assert.Equal("KellyCriterion", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2781,6 +2998,7 @@ public class GoldenAllTests public void Golden_Keltner() { using var ind = new Wickra.Keltner(3, 7, 2.0); + Assert.Equal("KeltnerChannels", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2793,6 +3011,7 @@ public class GoldenAllTests public void Golden_KendallTau() { using var ind = new Wickra.KendallTau(14); + Assert.Equal("KendallTau", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2805,6 +3024,7 @@ public class GoldenAllTests public void Golden_Kicking() { using var ind = new Wickra.Kicking(); + Assert.Equal("Kicking", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2817,6 +3037,7 @@ public class GoldenAllTests public void Golden_KickingByLength() { using var ind = new Wickra.KickingByLength(); + Assert.Equal("KickingByLength", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2829,6 +3050,7 @@ public class GoldenAllTests public void Golden_Kst() { using var ind = new Wickra.Kst(3, 7, 14, 28, 35, 42, 56, 63, 70); + Assert.Equal("KST", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2841,6 +3063,7 @@ public class GoldenAllTests public void Golden_Kurtosis() { using var ind = new Wickra.Kurtosis(14); + Assert.Equal("Kurtosis", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2853,6 +3076,7 @@ public class GoldenAllTests public void Golden_Kvo() { using var ind = new Wickra.Kvo(3, 7); + Assert.Equal("KVO", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2865,6 +3089,7 @@ public class GoldenAllTests public void Golden_KylesLambda() { using var ind = new Wickra.KylesLambda(20); + Assert.Equal("KylesLambda", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2877,6 +3102,7 @@ public class GoldenAllTests public void Golden_LadderBottom() { using var ind = new Wickra.LadderBottom(); + Assert.Equal("LadderBottom", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2889,6 +3115,7 @@ public class GoldenAllTests public void Golden_LaguerreRsi() { using var ind = new Wickra.LaguerreRsi(0.5); + Assert.Equal("LaguerreRSI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2901,6 +3128,7 @@ public class GoldenAllTests public void Golden_LeadLagCrossCorrelation() { using var ind = new Wickra.LeadLagCrossCorrelation(20, 10); + Assert.Equal("LeadLagCrossCorrelation", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2913,6 +3141,7 @@ public class GoldenAllTests public void Golden_LinRegAngle() { using var ind = new Wickra.LinRegAngle(14); + Assert.Equal("LinRegAngle", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2925,6 +3154,7 @@ public class GoldenAllTests public void Golden_LinRegChannel() { using var ind = new Wickra.LinRegChannel(14, 2.0); + Assert.Equal("LinRegChannel", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2937,6 +3167,7 @@ public class GoldenAllTests public void Golden_LinRegIntercept() { using var ind = new Wickra.LinRegIntercept(14); + Assert.Equal("LINEARREG_INTERCEPT", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2949,6 +3180,7 @@ public class GoldenAllTests public void Golden_LinRegSlope() { using var ind = new Wickra.LinRegSlope(14); + Assert.Equal("LinRegSlope", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2961,6 +3193,7 @@ public class GoldenAllTests public void Golden_LinearRegression() { using var ind = new Wickra.LinearRegression(14); + Assert.Equal("LinearRegression", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2973,6 +3206,7 @@ public class GoldenAllTests public void Golden_LiquidationFeatures() { using var ind = new Wickra.LiquidationFeatures(); + Assert.Equal("LiquidationFeatures", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2986,6 +3220,7 @@ public class GoldenAllTests public void Golden_LogReturn() { using var ind = new Wickra.LogReturn(14); + Assert.Equal("LogReturn", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -2998,6 +3233,7 @@ public class GoldenAllTests public void Golden_LongLeggedDoji() { using var ind = new Wickra.LongLeggedDoji(); + Assert.Equal("LongLeggedDoji", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3010,6 +3246,7 @@ public class GoldenAllTests public void Golden_LongLine() { using var ind = new Wickra.LongLine(); + Assert.Equal("LongLine", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3022,6 +3259,7 @@ public class GoldenAllTests public void Golden_LongShortRatio() { using var ind = new Wickra.LongShortRatio(); + Assert.Equal("LongShortRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3035,6 +3273,7 @@ public class GoldenAllTests public void Golden_M2Measure() { using var ind = new Wickra.M2Measure(14, 2.0, 0.5); + Assert.Equal("M2Measure", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3047,6 +3286,7 @@ public class GoldenAllTests public void Golden_MaEnvelope() { using var ind = new Wickra.MaEnvelope(14, 2.0); + Assert.Equal("MaEnvelope", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3059,6 +3299,7 @@ public class GoldenAllTests public void Golden_MacdExt() { using var ind = new Wickra.MacdExt(12, (byte)0, 26, (byte)0, 9, (byte)0); + Assert.Equal("MACDEXT", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3071,6 +3312,7 @@ public class GoldenAllTests public void Golden_MacdFix() { using var ind = new Wickra.MacdFix(9); + Assert.Equal("MACDFIX", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3083,6 +3325,7 @@ public class GoldenAllTests public void Golden_MacdHistogram() { using var ind = new Wickra.MacdHistogram(3, 7, 14); + Assert.Equal("MacdHistogram", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3095,6 +3338,7 @@ public class GoldenAllTests public void Golden_MacdIndicator() { using var ind = new Wickra.MacdIndicator(12, 26, 9); + Assert.Equal("MACD", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3107,6 +3351,7 @@ public class GoldenAllTests public void Golden_Mama() { using var ind = new Wickra.Mama(0.5, 0.05); + Assert.Equal("MAMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3119,6 +3364,7 @@ public class GoldenAllTests public void Golden_MarketFacilitationIndex() { using var ind = new Wickra.MarketFacilitationIndex(); + Assert.Equal("MarketFacilitationIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3131,6 +3377,7 @@ public class GoldenAllTests public void Golden_MartinRatio() { using var ind = new Wickra.MartinRatio(14); + Assert.Equal("MartinRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3143,6 +3390,7 @@ public class GoldenAllTests public void Golden_Marubozu() { using var ind = new Wickra.Marubozu(); + Assert.Equal("Marubozu", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3155,6 +3403,7 @@ public class GoldenAllTests public void Golden_MassIndex() { using var ind = new Wickra.MassIndex(3, 7); + Assert.Equal("MassIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3167,6 +3416,7 @@ public class GoldenAllTests public void Golden_MatHold() { using var ind = new Wickra.MatHold(); + Assert.Equal("MatHold", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3179,6 +3429,7 @@ public class GoldenAllTests public void Golden_MatchingLow() { using var ind = new Wickra.MatchingLow(); + Assert.Equal("MatchingLow", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3191,6 +3442,7 @@ public class GoldenAllTests public void Golden_MaxDrawdown() { using var ind = new Wickra.MaxDrawdown(14); + Assert.Equal("MaxDrawdown", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3203,6 +3455,7 @@ public class GoldenAllTests public void Golden_McClellanOscillator() { using var ind = new Wickra.McClellanOscillator(); + Assert.Equal("McClellanOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3216,6 +3469,7 @@ public class GoldenAllTests public void Golden_McClellanSummationIndex() { using var ind = new Wickra.McClellanSummationIndex(); + Assert.Equal("McClellanSummationIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3229,6 +3483,7 @@ public class GoldenAllTests public void Golden_McGinleyDynamic() { using var ind = new Wickra.McGinleyDynamic(14); + Assert.Equal("McGinleyDynamic", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3241,6 +3496,7 @@ public class GoldenAllTests public void Golden_MedianAbsoluteDeviation() { using var ind = new Wickra.MedianAbsoluteDeviation(14); + Assert.Equal("MedianAbsoluteDeviation", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3253,6 +3509,7 @@ public class GoldenAllTests public void Golden_MedianChannel() { using var ind = new Wickra.MedianChannel(14, 2.0); + Assert.Equal("MedianChannel", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3265,6 +3522,7 @@ public class GoldenAllTests public void Golden_MedianMa() { using var ind = new Wickra.MedianMa(14); + Assert.Equal("MedianMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3277,6 +3535,7 @@ public class GoldenAllTests public void Golden_MedianPrice() { using var ind = new Wickra.MedianPrice(); + Assert.Equal("MedianPrice", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3289,6 +3548,7 @@ public class GoldenAllTests public void Golden_Mfi() { using var ind = new Wickra.Mfi(14); + Assert.Equal("MFI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3301,6 +3561,7 @@ public class GoldenAllTests public void Golden_Microprice() { using var ind = new Wickra.Microprice(); + Assert.Equal("Microprice", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3314,6 +3575,7 @@ public class GoldenAllTests public void Golden_MidPoint() { using var ind = new Wickra.MidPoint(14); + Assert.Equal("MIDPOINT", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3326,6 +3588,7 @@ public class GoldenAllTests public void Golden_MidPrice() { using var ind = new Wickra.MidPrice(14); + Assert.Equal("MIDPRICE", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3338,6 +3601,7 @@ public class GoldenAllTests public void Golden_MinusDi() { using var ind = new Wickra.MinusDi(14); + Assert.Equal("MINUS_DI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3350,6 +3614,7 @@ public class GoldenAllTests public void Golden_MinusDm() { using var ind = new Wickra.MinusDm(14); + Assert.Equal("MINUS_DM", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3362,6 +3627,7 @@ public class GoldenAllTests public void Golden_ModifiedMaStop() { using var ind = new Wickra.ModifiedMaStop(14); + Assert.Equal("ModifiedMaStop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3374,6 +3640,7 @@ public class GoldenAllTests public void Golden_Mom() { using var ind = new Wickra.Mom(14); + Assert.Equal("MOM", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3386,6 +3653,7 @@ public class GoldenAllTests public void Golden_MorningDojiStar() { using var ind = new Wickra.MorningDojiStar(); + Assert.Equal("MorningDojiStar", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3398,6 +3666,7 @@ public class GoldenAllTests public void Golden_MorningEveningStar() { using var ind = new Wickra.MorningEveningStar(); + Assert.Equal("MorningEveningStar", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3410,6 +3679,7 @@ public class GoldenAllTests public void Golden_MurreyMathLines() { using var ind = new Wickra.MurreyMathLines(14); + Assert.Equal("MurreyMathLines", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3422,6 +3692,7 @@ public class GoldenAllTests public void Golden_NakedPoc() { using var ind = new Wickra.NakedPoc(3, 7); + Assert.Equal("NakedPoc", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3434,6 +3705,7 @@ public class GoldenAllTests public void Golden_Natr() { using var ind = new Wickra.Natr(14); + Assert.Equal("NATR", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3446,6 +3718,7 @@ public class GoldenAllTests public void Golden_NewHighsNewLows() { using var ind = new Wickra.NewHighsNewLows(); + Assert.Equal("NewHighsNewLows", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3459,6 +3732,7 @@ public class GoldenAllTests public void Golden_NewPriceLines() { using var ind = new Wickra.NewPriceLines(14); + Assert.Equal("NewPriceLines", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3471,6 +3745,7 @@ public class GoldenAllTests public void Golden_Nrtr() { using var ind = new Wickra.Nrtr(2.0); + Assert.Equal("Nrtr", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3483,6 +3758,7 @@ public class GoldenAllTests public void Golden_Nvi() { using var ind = new Wickra.Nvi(); + Assert.Equal("NVI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3495,6 +3771,7 @@ public class GoldenAllTests public void Golden_OIPriceDivergence() { using var ind = new Wickra.OIPriceDivergence(20); + Assert.Equal("OIPriceDivergence", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3508,6 +3785,7 @@ public class GoldenAllTests public void Golden_OIWeighted() { using var ind = new Wickra.OIWeighted(); + Assert.Equal("OIWeighted", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3521,6 +3799,7 @@ public class GoldenAllTests public void Golden_Obv() { using var ind = new Wickra.Obv(); + Assert.Equal("OBV", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3533,6 +3812,7 @@ public class GoldenAllTests public void Golden_OiToVolumeRatio() { using var ind = new Wickra.OiToVolumeRatio(); + Assert.Equal("OiToVolumeRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3546,6 +3826,7 @@ public class GoldenAllTests public void Golden_OmegaRatio() { using var ind = new Wickra.OmegaRatio(14, 2.0); + Assert.Equal("OmegaRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3558,6 +3839,7 @@ public class GoldenAllTests public void Golden_OnNeck() { using var ind = new Wickra.OnNeck(); + Assert.Equal("OnNeck", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3570,6 +3852,7 @@ public class GoldenAllTests public void Golden_OpenInterestDelta() { using var ind = new Wickra.OpenInterestDelta(); + Assert.Equal("OpenInterestDelta", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3583,6 +3866,7 @@ public class GoldenAllTests public void Golden_OpenInterestMomentum() { using var ind = new Wickra.OpenInterestMomentum(10); + Assert.Equal("OpenInterestMomentum", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3596,6 +3880,7 @@ public class GoldenAllTests public void Golden_OpeningMarubozu() { using var ind = new Wickra.OpeningMarubozu(); + Assert.Equal("OpeningMarubozu", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3608,6 +3893,7 @@ public class GoldenAllTests public void Golden_OpeningRange() { using var ind = new Wickra.OpeningRange(14); + Assert.Equal("OpeningRange", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3620,6 +3906,7 @@ public class GoldenAllTests public void Golden_OrderBookImbalanceFull() { using var ind = new Wickra.OrderBookImbalanceFull(); + Assert.Equal("OrderBookImbalanceFull", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3633,6 +3920,7 @@ public class GoldenAllTests public void Golden_OrderBookImbalanceTop1() { using var ind = new Wickra.OrderBookImbalanceTop1(); + Assert.Equal("OrderBookImbalanceTop1", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3646,6 +3934,7 @@ public class GoldenAllTests public void Golden_OrderBookImbalanceTopN() { using var ind = new Wickra.OrderBookImbalanceTopN(5); + Assert.Equal("OrderBookImbalanceTopN", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3659,6 +3948,7 @@ public class GoldenAllTests public void Golden_OrderFlowImbalance() { using var ind = new Wickra.OrderFlowImbalance(20); + Assert.Equal("OrderFlowImbalance", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3672,6 +3962,7 @@ public class GoldenAllTests public void Golden_OuHalfLife() { using var ind = new Wickra.OuHalfLife(14); + Assert.Equal("OuHalfLife", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3684,6 +3975,7 @@ public class GoldenAllTests public void Golden_OvernightGap() { using var ind = new Wickra.OvernightGap(0); + Assert.Equal("OvernightGap", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3696,6 +3988,7 @@ public class GoldenAllTests public void Golden_OvernightIntradayReturn() { using var ind = new Wickra.OvernightIntradayReturn(14); + Assert.Equal("OvernightIntradayReturn", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3708,6 +4001,7 @@ public class GoldenAllTests public void Golden_PainIndex() { using var ind = new Wickra.PainIndex(14); + Assert.Equal("PainIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3720,6 +4014,7 @@ public class GoldenAllTests public void Golden_PairSpreadZScore() { using var ind = new Wickra.PairSpreadZScore(20, 20); + Assert.Equal("PairSpreadZScore", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3732,6 +4027,7 @@ public class GoldenAllTests public void Golden_PairwiseBeta() { using var ind = new Wickra.PairwiseBeta(14); + Assert.Equal("PairwiseBeta", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3744,6 +4040,7 @@ public class GoldenAllTests public void Golden_ParkinsonVolatility() { using var ind = new Wickra.ParkinsonVolatility(20, 252); + Assert.Equal("ParkinsonVolatility", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3756,6 +4053,7 @@ public class GoldenAllTests public void Golden_PearsonCorrelation() { using var ind = new Wickra.PearsonCorrelation(14); + Assert.Equal("PearsonCorrelation", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3768,6 +4066,7 @@ public class GoldenAllTests public void Golden_PercentAboveMa() { using var ind = new Wickra.PercentAboveMa(); + Assert.Equal("PercentAboveMa", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3781,6 +4080,7 @@ public class GoldenAllTests public void Golden_PercentB() { using var ind = new Wickra.PercentB(14, 2.0); + Assert.Equal("PercentB", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3793,6 +4093,7 @@ public class GoldenAllTests public void Golden_PercentageTrailingStop() { using var ind = new Wickra.PercentageTrailingStop(2.0); + Assert.Equal("PercentageTrailingStop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3805,6 +4106,7 @@ public class GoldenAllTests public void Golden_PerpetualPremiumIndex() { using var ind = new Wickra.PerpetualPremiumIndex(); + Assert.Equal("PerpetualPremiumIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3818,6 +4120,7 @@ public class GoldenAllTests public void Golden_Pgo() { using var ind = new Wickra.Pgo(14); + Assert.Equal("PGO", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3830,6 +4133,7 @@ public class GoldenAllTests public void Golden_PiercingDarkCloud() { using var ind = new Wickra.PiercingDarkCloud(); + Assert.Equal("PiercingDarkCloud", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3842,6 +4146,7 @@ public class GoldenAllTests public void Golden_Pin() { using var ind = new Wickra.Pin(20); + Assert.Equal("PIN", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3854,6 +4159,7 @@ public class GoldenAllTests public void Golden_PivotReversal() { using var ind = new Wickra.PivotReversal(3, 7); + Assert.Equal("PivotReversal", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3866,6 +4172,7 @@ public class GoldenAllTests public void Golden_PlusDi() { using var ind = new Wickra.PlusDi(14); + Assert.Equal("PLUS_DI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3878,6 +4185,7 @@ public class GoldenAllTests public void Golden_PlusDm() { using var ind = new Wickra.PlusDm(14); + Assert.Equal("PLUS_DM", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3890,6 +4198,7 @@ public class GoldenAllTests public void Golden_Pmo() { using var ind = new Wickra.Pmo(3, 7); + Assert.Equal("PMO", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3902,6 +4211,7 @@ public class GoldenAllTests public void Golden_PointAndFigureBars() { using var ind = new Wickra.PointAndFigureBars(2.0, 3); + Assert.Equal("PointAndFigureBars", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3914,6 +4224,7 @@ public class GoldenAllTests public void Golden_PolarizedFractalEfficiency() { using var ind = new Wickra.PolarizedFractalEfficiency(10, 5); + Assert.Equal("PolarizedFractalEfficiency", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3926,6 +4237,7 @@ public class GoldenAllTests public void Golden_Ppo() { using var ind = new Wickra.Ppo(3, 7); + Assert.Equal("PPO", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3938,6 +4250,7 @@ public class GoldenAllTests public void Golden_PpoHistogram() { using var ind = new Wickra.PpoHistogram(3, 7, 14); + Assert.Equal("PpoHistogram", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3950,6 +4263,7 @@ public class GoldenAllTests public void Golden_ProfileShape() { using var ind = new Wickra.ProfileShape(3, 7); + Assert.Equal("ProfileShape", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3962,6 +4276,7 @@ public class GoldenAllTests public void Golden_ProfitFactor() { using var ind = new Wickra.ProfitFactor(14); + Assert.Equal("ProfitFactor", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3974,6 +4289,7 @@ public class GoldenAllTests public void Golden_ProjectionBands() { using var ind = new Wickra.ProjectionBands(14); + Assert.Equal("ProjectionBands", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3986,6 +4302,7 @@ public class GoldenAllTests public void Golden_ProjectionOscillator() { using var ind = new Wickra.ProjectionOscillator(14); + Assert.Equal("ProjectionOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -3998,6 +4315,7 @@ public class GoldenAllTests public void Golden_Psar() { using var ind = new Wickra.Psar(0.02, 0.02, 0.2); + Assert.Equal("PSAR", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4010,6 +4328,7 @@ public class GoldenAllTests public void Golden_Pvi() { using var ind = new Wickra.Pvi(); + Assert.Equal("PVI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4022,6 +4341,7 @@ public class GoldenAllTests public void Golden_Qqe() { using var ind = new Wickra.Qqe(3, 7, 2.0); + Assert.Equal("QQE", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4034,6 +4354,7 @@ public class GoldenAllTests public void Golden_Qstick() { using var ind = new Wickra.Qstick(14); + Assert.Equal("Qstick", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4046,6 +4367,7 @@ public class GoldenAllTests public void Golden_QuartileBands() { using var ind = new Wickra.QuartileBands(14); + Assert.Equal("QuartileBands", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4058,6 +4380,7 @@ public class GoldenAllTests public void Golden_QuotedSpread() { using var ind = new Wickra.QuotedSpread(); + Assert.Equal("QuotedSpread", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4071,6 +4394,7 @@ public class GoldenAllTests public void Golden_RSquared() { using var ind = new Wickra.RSquared(14); + Assert.Equal("RSquared", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4083,6 +4407,7 @@ public class GoldenAllTests public void Golden_RangeBars() { using var ind = new Wickra.RangeBars(2.0); + Assert.Equal("RangeBars", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4095,6 +4420,7 @@ public class GoldenAllTests public void Golden_RealizedSpread() { using var ind = new Wickra.RealizedSpread(20); + Assert.Equal("RealizedSpread", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4107,6 +4433,7 @@ public class GoldenAllTests public void Golden_RealizedVolatility() { using var ind = new Wickra.RealizedVolatility(14); + Assert.Equal("RealizedVolatility", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4119,6 +4446,7 @@ public class GoldenAllTests public void Golden_RecoveryFactor() { using var ind = new Wickra.RecoveryFactor(); + Assert.Equal("RecoveryFactor", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4131,6 +4459,7 @@ public class GoldenAllTests public void Golden_RectangleRange() { using var ind = new Wickra.RectangleRange(); + Assert.Equal("RectangleRange", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4143,6 +4472,7 @@ public class GoldenAllTests public void Golden_Reflex() { using var ind = new Wickra.Reflex(14); + Assert.Equal("Reflex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4155,6 +4485,7 @@ public class GoldenAllTests public void Golden_RegimeLabel() { using var ind = new Wickra.RegimeLabel(3, 7); + Assert.Equal("RegimeLabel", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4167,6 +4498,7 @@ public class GoldenAllTests public void Golden_RelativeStrengthAB() { using var ind = new Wickra.RelativeStrengthAB(14, 14); + Assert.Equal("RelativeStrengthAB", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4179,6 +4511,7 @@ public class GoldenAllTests public void Golden_RenkoBars() { using var ind = new Wickra.RenkoBars(2.0); + Assert.Equal("RenkoBars", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4191,6 +4524,7 @@ public class GoldenAllTests public void Golden_RenkoTrailingStop() { using var ind = new Wickra.RenkoTrailingStop(2.0); + Assert.Equal("RenkoTrailingStop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4203,6 +4537,7 @@ public class GoldenAllTests public void Golden_RickshawMan() { using var ind = new Wickra.RickshawMan(); + Assert.Equal("RickshawMan", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4215,6 +4550,7 @@ public class GoldenAllTests public void Golden_RisingThreeMethods() { using var ind = new Wickra.RisingThreeMethods(); + Assert.Equal("RisingThreeMethods", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4227,6 +4563,7 @@ public class GoldenAllTests public void Golden_Rmi() { using var ind = new Wickra.Rmi(3, 7); + Assert.Equal("RMI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4239,6 +4576,7 @@ public class GoldenAllTests public void Golden_Roc() { using var ind = new Wickra.Roc(14); + Assert.Equal("ROC", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4251,6 +4589,7 @@ public class GoldenAllTests public void Golden_Rocp() { using var ind = new Wickra.Rocp(14); + Assert.Equal("ROCP", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4263,6 +4602,7 @@ public class GoldenAllTests public void Golden_Rocr() { using var ind = new Wickra.Rocr(14); + Assert.Equal("ROCR", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4275,6 +4615,7 @@ public class GoldenAllTests public void Golden_Rocr100() { using var ind = new Wickra.Rocr100(14); + Assert.Equal("ROCR100", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4287,6 +4628,7 @@ public class GoldenAllTests public void Golden_RogersSatchellVolatility() { using var ind = new Wickra.RogersSatchellVolatility(20, 252); + Assert.Equal("RogersSatchellVolatility", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4299,6 +4641,7 @@ public class GoldenAllTests public void Golden_RollMeasure() { using var ind = new Wickra.RollMeasure(20); + Assert.Equal("RollMeasure", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4311,6 +4654,7 @@ public class GoldenAllTests public void Golden_RollingCorrelation() { using var ind = new Wickra.RollingCorrelation(14); + Assert.Equal("RollingCorrelation", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4323,6 +4667,7 @@ public class GoldenAllTests public void Golden_RollingCovariance() { using var ind = new Wickra.RollingCovariance(14); + Assert.Equal("RollingCovariance", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4335,6 +4680,7 @@ public class GoldenAllTests public void Golden_RollingIqr() { using var ind = new Wickra.RollingIqr(14); + Assert.Equal("RollingIqr", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4347,6 +4693,7 @@ public class GoldenAllTests public void Golden_RollingMinMaxScaler() { using var ind = new Wickra.RollingMinMaxScaler(14); + Assert.Equal("RollingMinMaxScaler", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4359,6 +4706,7 @@ public class GoldenAllTests public void Golden_RollingPercentileRank() { using var ind = new Wickra.RollingPercentileRank(14); + Assert.Equal("RollingPercentileRank", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4371,6 +4719,7 @@ public class GoldenAllTests public void Golden_RollingQuantile() { using var ind = new Wickra.RollingQuantile(20, 0.5); + Assert.Equal("RollingQuantile", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4383,6 +4732,7 @@ public class GoldenAllTests public void Golden_RollingVwap() { using var ind = new Wickra.RollingVwap(14); + Assert.Equal("RollingVWAP", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4395,6 +4745,7 @@ public class GoldenAllTests public void Golden_RoofingFilter() { using var ind = new Wickra.RoofingFilter(3, 7); + Assert.Equal("RoofingFilter", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4407,6 +4758,7 @@ public class GoldenAllTests public void Golden_Rsi() { using var ind = new Wickra.Rsi(14); + Assert.Equal("RSI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4419,6 +4771,7 @@ public class GoldenAllTests public void Golden_Rsx() { using var ind = new Wickra.Rsx(14); + Assert.Equal("RSX", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4431,6 +4784,7 @@ public class GoldenAllTests public void Golden_RunBars() { using var ind = new Wickra.RunBars(3); + Assert.Equal("RunBars", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4443,6 +4797,7 @@ public class GoldenAllTests public void Golden_Rvi() { using var ind = new Wickra.Rvi(14); + Assert.Equal("RVI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4455,6 +4810,7 @@ public class GoldenAllTests public void Golden_RviVolatility() { using var ind = new Wickra.RviVolatility(14); + Assert.Equal("RVIVolatility", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4467,6 +4823,7 @@ public class GoldenAllTests public void Golden_Rwi() { using var ind = new Wickra.Rwi(14); + Assert.Equal("RWI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4479,6 +4836,7 @@ public class GoldenAllTests public void Golden_SampleEntropy() { using var ind = new Wickra.SampleEntropy(20, 2, 0.2); + Assert.Equal("SampleEntropy", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4491,6 +4849,7 @@ public class GoldenAllTests public void Golden_SarExt() { using var ind = new Wickra.SarExt(2.0, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5); + Assert.Equal("SAREXT", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4503,6 +4862,7 @@ public class GoldenAllTests public void Golden_SeasonalZScore() { using var ind = new Wickra.SeasonalZScore(14); + Assert.Equal("SeasonalZScore", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4515,6 +4875,7 @@ public class GoldenAllTests public void Golden_SeparatingLines() { using var ind = new Wickra.SeparatingLines(); + Assert.Equal("SeparatingLines", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4527,6 +4888,7 @@ public class GoldenAllTests public void Golden_SessionHighLow() { using var ind = new Wickra.SessionHighLow(14); + Assert.Equal("SessionHighLow", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4539,6 +4901,7 @@ public class GoldenAllTests public void Golden_SessionRange() { using var ind = new Wickra.SessionRange(14); + Assert.Equal("SessionRange", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4551,6 +4914,7 @@ public class GoldenAllTests public void Golden_SessionVwap() { using var ind = new Wickra.SessionVwap(14); + Assert.Equal("SessionVwap", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4563,6 +4927,7 @@ public class GoldenAllTests public void Golden_ShannonEntropy() { using var ind = new Wickra.ShannonEntropy(3, 7); + Assert.Equal("ShannonEntropy", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4575,6 +4940,7 @@ public class GoldenAllTests public void Golden_Shark() { using var ind = new Wickra.Shark(); + Assert.Equal("Shark", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4587,6 +4953,7 @@ public class GoldenAllTests public void Golden_SharpeRatio() { using var ind = new Wickra.SharpeRatio(14, 2.0); + Assert.Equal("SharpeRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4599,6 +4966,7 @@ public class GoldenAllTests public void Golden_ShootingStar() { using var ind = new Wickra.ShootingStar(); + Assert.Equal("ShootingStar", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4611,6 +4979,7 @@ public class GoldenAllTests public void Golden_ShortLine() { using var ind = new Wickra.ShortLine(); + Assert.Equal("ShortLine", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4623,6 +4992,7 @@ public class GoldenAllTests public void Golden_SignedVolume() { using var ind = new Wickra.SignedVolume(); + Assert.Equal("SignedVolume", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4635,6 +5005,7 @@ public class GoldenAllTests public void Golden_SineWave() { using var ind = new Wickra.SineWave(); + Assert.Equal("SineWave", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4647,6 +5018,7 @@ public class GoldenAllTests public void Golden_SineWeightedMa() { using var ind = new Wickra.SineWeightedMa(14); + Assert.Equal("SWMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4659,6 +5031,7 @@ public class GoldenAllTests public void Golden_SinglePrints() { using var ind = new Wickra.SinglePrints(3, 7); + Assert.Equal("SinglePrints", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4671,6 +5044,7 @@ public class GoldenAllTests public void Golden_Skewness() { using var ind = new Wickra.Skewness(14); + Assert.Equal("Skewness", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4683,6 +5057,7 @@ public class GoldenAllTests public void Golden_Sma() { using var ind = new Wickra.Sma(14); + Assert.Equal("SMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4695,6 +5070,7 @@ public class GoldenAllTests public void Golden_Smi() { using var ind = new Wickra.Smi(3, 7, 14); + Assert.Equal("SMI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4707,6 +5083,7 @@ public class GoldenAllTests public void Golden_Smma() { using var ind = new Wickra.Smma(14); + Assert.Equal("SMMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4719,6 +5096,7 @@ public class GoldenAllTests public void Golden_SmoothedHeikinAshi() { using var ind = new Wickra.SmoothedHeikinAshi(14); + Assert.Equal("SmoothedHeikinAshi", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4731,6 +5109,7 @@ public class GoldenAllTests public void Golden_SortinoRatio() { using var ind = new Wickra.SortinoRatio(14, 2.0); + Assert.Equal("SortinoRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4743,6 +5122,7 @@ public class GoldenAllTests public void Golden_SpearmanCorrelation() { using var ind = new Wickra.SpearmanCorrelation(14); + Assert.Equal("SpearmanCorrelation", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4755,6 +5135,7 @@ public class GoldenAllTests public void Golden_SpinningTop() { using var ind = new Wickra.SpinningTop(); + Assert.Equal("SpinningTop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4767,6 +5148,7 @@ public class GoldenAllTests public void Golden_SpreadAr1Coefficient() { using var ind = new Wickra.SpreadAr1Coefficient(14); + Assert.Equal("SpreadAr1Coefficient", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4779,6 +5161,7 @@ public class GoldenAllTests public void Golden_SpreadBollingerBands() { using var ind = new Wickra.SpreadBollingerBands(14, 2.0); + Assert.Equal("SpreadBollingerBands", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4791,6 +5174,7 @@ public class GoldenAllTests public void Golden_SpreadHurst() { using var ind = new Wickra.SpreadHurst(14); + Assert.Equal("SpreadHurst", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4803,6 +5187,7 @@ public class GoldenAllTests public void Golden_StalledPattern() { using var ind = new Wickra.StalledPattern(); + Assert.Equal("StalledPattern", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4815,6 +5200,7 @@ public class GoldenAllTests public void Golden_StandardError() { using var ind = new Wickra.StandardError(14); + Assert.Equal("StandardError", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4827,6 +5213,7 @@ public class GoldenAllTests public void Golden_StandardErrorBands() { using var ind = new Wickra.StandardErrorBands(14, 2.0); + Assert.Equal("StandardErrorBands", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4839,6 +5226,7 @@ public class GoldenAllTests public void Golden_StarcBands() { using var ind = new Wickra.StarcBands(3, 7, 2.0); + Assert.Equal("StarcBands", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4851,6 +5239,7 @@ public class GoldenAllTests public void Golden_Stc() { using var ind = new Wickra.Stc(10, 23, 10, 0.5); + Assert.Equal("STC", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4863,6 +5252,7 @@ public class GoldenAllTests public void Golden_StdDev() { using var ind = new Wickra.StdDev(14); + Assert.Equal("StdDev", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4875,6 +5265,7 @@ public class GoldenAllTests public void Golden_StepTrailingStop() { using var ind = new Wickra.StepTrailingStop(2.0); + Assert.Equal("StepTrailingStop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4887,6 +5278,7 @@ public class GoldenAllTests public void Golden_SterlingRatio() { using var ind = new Wickra.SterlingRatio(14); + Assert.Equal("SterlingRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4899,6 +5291,7 @@ public class GoldenAllTests public void Golden_StickSandwich() { using var ind = new Wickra.StickSandwich(); + Assert.Equal("StickSandwich", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4911,6 +5304,7 @@ public class GoldenAllTests public void Golden_StochRsi() { using var ind = new Wickra.StochRsi(3, 7); + Assert.Equal("StochRSI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4923,6 +5317,7 @@ public class GoldenAllTests public void Golden_Stochastic() { using var ind = new Wickra.Stochastic(3, 7); + Assert.Equal("Stochastic", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4935,6 +5330,7 @@ public class GoldenAllTests public void Golden_StochasticCci() { using var ind = new Wickra.StochasticCci(14); + Assert.Equal("StochasticCCI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4947,6 +5343,7 @@ public class GoldenAllTests public void Golden_SuperSmoother() { using var ind = new Wickra.SuperSmoother(14); + Assert.Equal("SuperSmoother", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4959,6 +5356,7 @@ public class GoldenAllTests public void Golden_SuperTrend() { using var ind = new Wickra.SuperTrend(14, 2.0); + Assert.Equal("SuperTrend", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4971,6 +5369,7 @@ public class GoldenAllTests public void Golden_T3() { using var ind = new Wickra.T3(5, 0.7); + Assert.Equal("T3", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4983,6 +5382,7 @@ public class GoldenAllTests public void Golden_TailRatio() { using var ind = new Wickra.TailRatio(14); + Assert.Equal("TailRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -4995,6 +5395,7 @@ public class GoldenAllTests public void Golden_TakerBuySellRatio() { using var ind = new Wickra.TakerBuySellRatio(); + Assert.Equal("TakerBuySellRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5008,6 +5409,7 @@ public class GoldenAllTests public void Golden_Takuri() { using var ind = new Wickra.Takuri(); + Assert.Equal("Takuri", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5020,6 +5422,7 @@ public class GoldenAllTests public void Golden_TasukiGap() { using var ind = new Wickra.TasukiGap(); + Assert.Equal("TasukiGap", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5032,6 +5435,7 @@ public class GoldenAllTests public void Golden_TdCamouflage() { using var ind = new Wickra.TdCamouflage(); + Assert.Equal("TDCamouflage", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5044,6 +5448,7 @@ public class GoldenAllTests public void Golden_TdClop() { using var ind = new Wickra.TdClop(); + Assert.Equal("TDClop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5056,6 +5461,7 @@ public class GoldenAllTests public void Golden_TdClopwin() { using var ind = new Wickra.TdClopwin(); + Assert.Equal("TDClopwin", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5068,6 +5474,7 @@ public class GoldenAllTests public void Golden_TdCombo() { using var ind = new Wickra.TdCombo(3, 7, 14, 28); + Assert.Equal("TDCombo", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5080,6 +5487,7 @@ public class GoldenAllTests public void Golden_TdCountdown() { using var ind = new Wickra.TdCountdown(3, 7, 14, 28); + Assert.Equal("TDCountdown", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5092,6 +5500,7 @@ public class GoldenAllTests public void Golden_TdDWave() { using var ind = new Wickra.TdDWave(2); + Assert.Equal("TDDWave", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5104,6 +5513,7 @@ public class GoldenAllTests public void Golden_TdDeMarker() { using var ind = new Wickra.TdDeMarker(14); + Assert.Equal("TDDeMarker", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5116,6 +5526,7 @@ public class GoldenAllTests public void Golden_TdDifferential() { using var ind = new Wickra.TdDifferential(); + Assert.Equal("TDDifferential", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5128,6 +5539,7 @@ public class GoldenAllTests public void Golden_TdLines() { using var ind = new Wickra.TdLines(3, 7); + Assert.Equal("TDLines", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5140,6 +5552,7 @@ public class GoldenAllTests public void Golden_TdMovingAverage() { using var ind = new Wickra.TdMovingAverage(3, 7); + Assert.Equal("TDMovingAverage", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5152,6 +5565,7 @@ public class GoldenAllTests public void Golden_TdOpen() { using var ind = new Wickra.TdOpen(); + Assert.Equal("TDOpen", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5164,6 +5578,7 @@ public class GoldenAllTests public void Golden_TdPressure() { using var ind = new Wickra.TdPressure(14); + Assert.Equal("TDPressure", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5176,6 +5591,7 @@ public class GoldenAllTests public void Golden_TdPropulsion() { using var ind = new Wickra.TdPropulsion(); + Assert.Equal("TDPropulsion", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5188,6 +5604,7 @@ public class GoldenAllTests public void Golden_TdRangeProjection() { using var ind = new Wickra.TdRangeProjection(); + Assert.Equal("TDRangeProjection", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5200,6 +5617,7 @@ public class GoldenAllTests public void Golden_TdRei() { using var ind = new Wickra.TdRei(14); + Assert.Equal("TDREI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5212,6 +5630,7 @@ public class GoldenAllTests public void Golden_TdRiskLevel() { using var ind = new Wickra.TdRiskLevel(3, 7); + Assert.Equal("TDRiskLevel", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5224,6 +5643,7 @@ public class GoldenAllTests public void Golden_TdSequential() { using var ind = new Wickra.TdSequential(3, 7, 14, 28); + Assert.Equal("TDSequential", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5236,6 +5656,7 @@ public class GoldenAllTests public void Golden_TdSetup() { using var ind = new Wickra.TdSetup(3, 7); + Assert.Equal("TDSetup", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5248,6 +5669,7 @@ public class GoldenAllTests public void Golden_TdTrap() { using var ind = new Wickra.TdTrap(); + Assert.Equal("TDTrap", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5260,6 +5682,7 @@ public class GoldenAllTests public void Golden_Tema() { using var ind = new Wickra.Tema(14); + Assert.Equal("TEMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5272,6 +5695,7 @@ public class GoldenAllTests public void Golden_TermStructureBasis() { using var ind = new Wickra.TermStructureBasis(); + Assert.Equal("TermStructureBasis", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5285,6 +5709,7 @@ public class GoldenAllTests public void Golden_ThreeDrives() { using var ind = new Wickra.ThreeDrives(); + Assert.Equal("ThreeDrives", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5297,6 +5722,7 @@ public class GoldenAllTests public void Golden_ThreeInside() { using var ind = new Wickra.ThreeInside(); + Assert.Equal("ThreeInside", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5309,6 +5735,7 @@ public class GoldenAllTests public void Golden_ThreeLineBreak() { using var ind = new Wickra.ThreeLineBreak(14); + Assert.Equal("ThreeLineBreak", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5321,6 +5748,7 @@ public class GoldenAllTests public void Golden_ThreeLineBreakBars() { using var ind = new Wickra.ThreeLineBreakBars(3); + Assert.Equal("ThreeLineBreakBars", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5333,6 +5761,7 @@ public class GoldenAllTests public void Golden_ThreeLineStrike() { using var ind = new Wickra.ThreeLineStrike(); + Assert.Equal("ThreeLineStrike", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5345,6 +5774,7 @@ public class GoldenAllTests public void Golden_ThreeOutside() { using var ind = new Wickra.ThreeOutside(); + Assert.Equal("ThreeOutside", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5357,6 +5787,7 @@ public class GoldenAllTests public void Golden_ThreeSoldiersOrCrows() { using var ind = new Wickra.ThreeSoldiersOrCrows(); + Assert.Equal("ThreeSoldiersOrCrows", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5369,6 +5800,7 @@ public class GoldenAllTests public void Golden_ThreeStarsInSouth() { using var ind = new Wickra.ThreeStarsInSouth(); + Assert.Equal("ThreeStarsInSouth", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5381,6 +5813,7 @@ public class GoldenAllTests public void Golden_Thrusting() { using var ind = new Wickra.Thrusting(); + Assert.Equal("Thrusting", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5393,6 +5826,7 @@ public class GoldenAllTests public void Golden_TickBars() { using var ind = new Wickra.TickBars(2); + Assert.Equal("TickBars", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5405,6 +5839,7 @@ public class GoldenAllTests public void Golden_TickIndex() { using var ind = new Wickra.TickIndex(); + Assert.Equal("TickIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5418,6 +5853,7 @@ public class GoldenAllTests public void Golden_Tii() { using var ind = new Wickra.Tii(3, 7); + Assert.Equal("TII", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5430,6 +5866,7 @@ public class GoldenAllTests public void Golden_TimeBasedStop() { using var ind = new Wickra.TimeBasedStop(14); + Assert.Equal("TimeBasedStop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5442,6 +5879,7 @@ public class GoldenAllTests public void Golden_TimeOfDayReturnProfile() { using var ind = new Wickra.TimeOfDayReturnProfile(24, 0); + Assert.Equal("TimeOfDayReturnProfile", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5455,6 +5893,7 @@ public class GoldenAllTests public void Golden_TowerTopBottom() { using var ind = new Wickra.TowerTopBottom(); + Assert.Equal("TowerTopBottom", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5467,6 +5906,7 @@ public class GoldenAllTests public void Golden_TpoProfile() { using var ind = new Wickra.TpoProfile(30, 50); + Assert.Equal("TpoProfile", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5479,6 +5919,7 @@ public class GoldenAllTests public void Golden_TradeImbalance() { using var ind = new Wickra.TradeImbalance(20); + Assert.Equal("TradeImbalance", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5491,6 +5932,7 @@ public class GoldenAllTests public void Golden_TradeSignAutocorrelation() { using var ind = new Wickra.TradeSignAutocorrelation(20); + Assert.Equal("TradeSignAutocorrelation", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5503,6 +5945,7 @@ public class GoldenAllTests public void Golden_TradeVolumeIndex() { using var ind = new Wickra.TradeVolumeIndex(2.0); + Assert.Equal("TradeVolumeIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5515,6 +5958,7 @@ public class GoldenAllTests public void Golden_TrendLabel() { using var ind = new Wickra.TrendLabel(14); + Assert.Equal("TrendLabel", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5527,6 +5971,7 @@ public class GoldenAllTests public void Golden_TrendStrengthIndex() { using var ind = new Wickra.TrendStrengthIndex(14); + Assert.Equal("TrendStrengthIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5539,6 +5984,7 @@ public class GoldenAllTests public void Golden_Trendflex() { using var ind = new Wickra.Trendflex(14); + Assert.Equal("Trendflex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5551,6 +5997,7 @@ public class GoldenAllTests public void Golden_TreynorRatio() { using var ind = new Wickra.TreynorRatio(14, 2.0); + Assert.Equal("TreynorRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5563,6 +6010,7 @@ public class GoldenAllTests public void Golden_Triangle() { using var ind = new Wickra.Triangle(); + Assert.Equal("Triangle", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5575,6 +6023,7 @@ public class GoldenAllTests public void Golden_Trima() { using var ind = new Wickra.Trima(14); + Assert.Equal("TRIMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5587,6 +6036,7 @@ public class GoldenAllTests public void Golden_Trin() { using var ind = new Wickra.Trin(); + Assert.Equal("Trin", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5600,6 +6050,7 @@ public class GoldenAllTests public void Golden_TripleTopBottom() { using var ind = new Wickra.TripleTopBottom(); + Assert.Equal("TripleTopBottom", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5612,6 +6063,7 @@ public class GoldenAllTests public void Golden_Tristar() { using var ind = new Wickra.Tristar(); + Assert.Equal("Tristar", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5624,6 +6076,7 @@ public class GoldenAllTests public void Golden_Trix() { using var ind = new Wickra.Trix(14); + Assert.Equal("TRIX", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5636,6 +6089,7 @@ public class GoldenAllTests public void Golden_TrueRange() { using var ind = new Wickra.TrueRange(); + Assert.Equal("TrueRange", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5648,6 +6102,7 @@ public class GoldenAllTests public void Golden_Tsf() { using var ind = new Wickra.Tsf(14); + Assert.Equal("TSF", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5660,6 +6115,7 @@ public class GoldenAllTests public void Golden_TsfOscillator() { using var ind = new Wickra.TsfOscillator(14); + Assert.Equal("TsfOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5672,6 +6128,7 @@ public class GoldenAllTests public void Golden_Tsi() { using var ind = new Wickra.Tsi(3, 7); + Assert.Equal("TSI", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5684,6 +6141,7 @@ public class GoldenAllTests public void Golden_Tsv() { using var ind = new Wickra.Tsv(14); + Assert.Equal("TSV", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5696,6 +6154,7 @@ public class GoldenAllTests public void Golden_TtmSqueeze() { using var ind = new Wickra.TtmSqueeze(14, 2.0, 0.5); + Assert.Equal("TtmSqueeze", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5708,6 +6167,7 @@ public class GoldenAllTests public void Golden_TtmTrend() { using var ind = new Wickra.TtmTrend(14); + Assert.Equal("TtmTrend", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5720,6 +6180,7 @@ public class GoldenAllTests public void Golden_TurnOfMonth() { using var ind = new Wickra.TurnOfMonth(3u, 3u, 0); + Assert.Equal("TurnOfMonth", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5732,6 +6193,7 @@ public class GoldenAllTests public void Golden_Tweezer() { using var ind = new Wickra.Tweezer(); + Assert.Equal("Tweezer", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5744,6 +6206,7 @@ public class GoldenAllTests public void Golden_TwiggsMoneyFlow() { using var ind = new Wickra.TwiggsMoneyFlow(14); + Assert.Equal("TwiggsMoneyFlow", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5756,6 +6219,7 @@ public class GoldenAllTests public void Golden_TwoCrows() { using var ind = new Wickra.TwoCrows(); + Assert.Equal("TwoCrows", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5768,6 +6232,7 @@ public class GoldenAllTests public void Golden_TypicalPrice() { using var ind = new Wickra.TypicalPrice(); + Assert.Equal("TypicalPrice", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5780,6 +6245,7 @@ public class GoldenAllTests public void Golden_UlcerIndex() { using var ind = new Wickra.UlcerIndex(14); + Assert.Equal("UlcerIndex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5792,6 +6258,7 @@ public class GoldenAllTests public void Golden_UltimateOscillator() { using var ind = new Wickra.UltimateOscillator(3, 7, 14); + Assert.Equal("UltimateOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5804,6 +6271,7 @@ public class GoldenAllTests public void Golden_UniqueThreeRiver() { using var ind = new Wickra.UniqueThreeRiver(); + Assert.Equal("UniqueThreeRiver", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5816,6 +6284,7 @@ public class GoldenAllTests public void Golden_UniversalOscillator() { using var ind = new Wickra.UniversalOscillator(14); + Assert.Equal("UniversalOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5828,6 +6297,7 @@ public class GoldenAllTests public void Golden_UpDownVolumeRatio() { using var ind = new Wickra.UpDownVolumeRatio(); + Assert.Equal("UpDownVolumeRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5841,6 +6311,7 @@ public class GoldenAllTests public void Golden_UpsideGapThreeMethods() { using var ind = new Wickra.UpsideGapThreeMethods(); + Assert.Equal("UpsideGapThreeMethods", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5853,6 +6324,7 @@ public class GoldenAllTests public void Golden_UpsideGapTwoCrows() { using var ind = new Wickra.UpsideGapTwoCrows(); + Assert.Equal("UpsideGapTwoCrows", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5865,6 +6337,7 @@ public class GoldenAllTests public void Golden_UpsidePotentialRatio() { using var ind = new Wickra.UpsidePotentialRatio(14, 2.0); + Assert.Equal("UpsidePotentialRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5877,6 +6350,7 @@ public class GoldenAllTests public void Golden_ValueArea() { using var ind = new Wickra.ValueArea(20, 50, 0.7); + Assert.Equal("ValueArea", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5889,6 +6363,7 @@ public class GoldenAllTests public void Golden_ValueAtRisk() { using var ind = new Wickra.ValueAtRisk(20, 0.95); + Assert.Equal("ValueAtRisk", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5901,6 +6376,7 @@ public class GoldenAllTests public void Golden_Variance() { using var ind = new Wickra.Variance(14); + Assert.Equal("Variance", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5913,6 +6389,7 @@ public class GoldenAllTests public void Golden_VarianceRatio() { using var ind = new Wickra.VarianceRatio(60, 2); + Assert.Equal("VarianceRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5925,6 +6402,7 @@ public class GoldenAllTests public void Golden_VerticalHorizontalFilter() { using var ind = new Wickra.VerticalHorizontalFilter(14); + Assert.Equal("VerticalHorizontalFilter", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5937,6 +6415,7 @@ public class GoldenAllTests public void Golden_Vidya() { using var ind = new Wickra.Vidya(3, 7); + Assert.Equal("VIDYA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5949,6 +6428,7 @@ public class GoldenAllTests public void Golden_VolatilityCone() { using var ind = new Wickra.VolatilityCone(3, 7); + Assert.Equal("VolatilityCone", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5961,6 +6441,7 @@ public class GoldenAllTests public void Golden_VolatilityOfVolatility() { using var ind = new Wickra.VolatilityOfVolatility(3, 7); + Assert.Equal("VolatilityOfVolatility", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5973,6 +6454,7 @@ public class GoldenAllTests public void Golden_VolatilityRatio() { using var ind = new Wickra.VolatilityRatio(14); + Assert.Equal("VolatilityRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5985,6 +6467,7 @@ public class GoldenAllTests public void Golden_VoltyStop() { using var ind = new Wickra.VoltyStop(14, 2.0); + Assert.Equal("VoltyStop", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -5997,6 +6480,7 @@ public class GoldenAllTests public void Golden_VolumeBars() { using var ind = new Wickra.VolumeBars(500.0); + Assert.Equal("VolumeBars", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6009,6 +6493,7 @@ public class GoldenAllTests public void Golden_VolumeByTimeProfile() { using var ind = new Wickra.VolumeByTimeProfile(24, 0); + Assert.Equal("VolumeByTimeProfile", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6022,6 +6507,7 @@ public class GoldenAllTests public void Golden_VolumeOscillator() { using var ind = new Wickra.VolumeOscillator(3, 7); + Assert.Equal("VolumeOscillator", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6034,6 +6520,7 @@ public class GoldenAllTests public void Golden_VolumePriceTrend() { using var ind = new Wickra.VolumePriceTrend(); + Assert.Equal("VPT", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6046,6 +6533,7 @@ public class GoldenAllTests public void Golden_VolumeProfile() { using var ind = new Wickra.VolumeProfile(20, 50); + Assert.Equal("VolumeProfile", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6058,6 +6546,7 @@ public class GoldenAllTests public void Golden_VolumeRsi() { using var ind = new Wickra.VolumeRsi(14); + Assert.Equal("VolumeRsi", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6070,6 +6559,7 @@ public class GoldenAllTests public void Golden_VolumeWeightedMacd() { using var ind = new Wickra.VolumeWeightedMacd(3, 7, 14); + Assert.Equal("VolumeWeightedMacd", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6082,6 +6572,7 @@ public class GoldenAllTests public void Golden_VolumeWeightedSr() { using var ind = new Wickra.VolumeWeightedSr(14); + Assert.Equal("VolumeWeightedSr", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6094,6 +6585,7 @@ public class GoldenAllTests public void Golden_Vortex() { using var ind = new Wickra.Vortex(14); + Assert.Equal("Vortex", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6106,6 +6598,7 @@ public class GoldenAllTests public void Golden_Vpin() { using var ind = new Wickra.Vpin(5000.0, 10); + Assert.Equal("Vpin", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6118,6 +6611,7 @@ public class GoldenAllTests public void Golden_Vwap() { using var ind = new Wickra.Vwap(); + Assert.Equal("VWAP", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6130,6 +6624,7 @@ public class GoldenAllTests public void Golden_VwapStdDevBands() { using var ind = new Wickra.VwapStdDevBands(2.0); + Assert.Equal("VwapStdDevBands", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6142,6 +6637,7 @@ public class GoldenAllTests public void Golden_Vwma() { using var ind = new Wickra.Vwma(14); + Assert.Equal("VWMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6154,6 +6650,7 @@ public class GoldenAllTests public void Golden_Vzo() { using var ind = new Wickra.Vzo(14); + Assert.Equal("VZO", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6166,6 +6663,7 @@ public class GoldenAllTests public void Golden_Wad() { using var ind = new Wickra.Wad(); + Assert.Equal("Wad", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6178,6 +6676,7 @@ public class GoldenAllTests public void Golden_WavePm() { using var ind = new Wickra.WavePm(3, 7); + Assert.Equal("WavePm", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6190,6 +6689,7 @@ public class GoldenAllTests public void Golden_WaveTrend() { using var ind = new Wickra.WaveTrend(3, 7, 14); + Assert.Equal("WaveTrend", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6202,6 +6702,7 @@ public class GoldenAllTests public void Golden_Wedge() { using var ind = new Wickra.Wedge(); + Assert.Equal("Wedge", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6214,6 +6715,7 @@ public class GoldenAllTests public void Golden_WeightedClose() { using var ind = new Wickra.WeightedClose(); + Assert.Equal("WeightedClose", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6226,6 +6728,7 @@ public class GoldenAllTests public void Golden_WickRatio() { using var ind = new Wickra.WickRatio(); + Assert.Equal("WickRatio", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6238,6 +6741,7 @@ public class GoldenAllTests public void Golden_WilliamsFractals() { using var ind = new Wickra.WilliamsFractals(); + Assert.Equal("WilliamsFractals", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6250,6 +6754,7 @@ public class GoldenAllTests public void Golden_WilliamsR() { using var ind = new Wickra.WilliamsR(14); + Assert.Equal("WilliamsR", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6262,6 +6767,7 @@ public class GoldenAllTests public void Golden_WinRate() { using var ind = new Wickra.WinRate(14); + Assert.Equal("WinRate", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6274,6 +6780,7 @@ public class GoldenAllTests public void Golden_Wma() { using var ind = new Wickra.Wma(14); + Assert.Equal("WMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6286,6 +6793,7 @@ public class GoldenAllTests public void Golden_WoodiePivots() { using var ind = new Wickra.WoodiePivots(); + Assert.Equal("WoodiePivots", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6298,6 +6806,7 @@ public class GoldenAllTests public void Golden_YangZhangVolatility() { using var ind = new Wickra.YangZhangVolatility(20, 252); + Assert.Equal("YangZhangVolatility", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6310,6 +6819,7 @@ public class GoldenAllTests public void Golden_YoyoExit() { using var ind = new Wickra.YoyoExit(14, 2.0); + Assert.Equal("YoyoExit", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6322,6 +6832,7 @@ public class GoldenAllTests public void Golden_ZScore() { using var ind = new Wickra.ZScore(14); + Assert.Equal("ZScore", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6334,6 +6845,7 @@ public class GoldenAllTests public void Golden_ZeroLagMacd() { using var ind = new Wickra.ZeroLagMacd(3, 7, 14); + Assert.Equal("ZeroLagMACD", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6346,6 +6858,7 @@ public class GoldenAllTests public void Golden_ZigZag() { using var ind = new Wickra.ZigZag(0.02); + Assert.Equal("ZigZag", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { @@ -6358,6 +6871,7 @@ public class GoldenAllTests public void Golden_Zlema() { using var ind = new Wickra.Zlema(14); + Assert.Equal("ZLEMA", ind.Name()); var got = new List(); for (var i = 0; i < Rows.Length; i++) { diff --git a/bindings/csharp/Wickra/Generated/Indicators.g.cs b/bindings/csharp/Wickra/Generated/Indicators.g.cs index 293a2e96..b8ead9ff 100644 --- a/bindings/csharp/Wickra/Generated/Indicators.g.cs +++ b/bindings/csharp/Wickra/Generated/Indicators.g.cs @@ -190,6 +190,14 @@ public sealed class AbandonedBaby : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_abandoned_baby_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_abandoned_baby_reset(_handle.DangerousGetHandle()); @@ -280,6 +288,14 @@ public sealed class Abcd : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_abcd_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_abcd_reset(_handle.DangerousGetHandle()); @@ -361,6 +377,14 @@ public sealed class AbsoluteBreadthIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_absolute_breadth_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_absolute_breadth_index_reset(_handle.DangerousGetHandle()); @@ -415,6 +439,14 @@ public sealed class AccelerationBands : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_acceleration_bands_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_acceleration_bands_reset(_handle.DangerousGetHandle()); @@ -508,6 +540,14 @@ public sealed class AcceleratorOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_accelerator_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_accelerator_oscillator_reset(_handle.DangerousGetHandle()); @@ -598,6 +638,14 @@ public sealed class AdOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ad_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ad_oscillator_reset(_handle.DangerousGetHandle()); @@ -679,6 +727,14 @@ public sealed class AdVolumeLine : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ad_volume_line_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ad_volume_line_reset(_handle.DangerousGetHandle()); @@ -770,6 +826,14 @@ public sealed class AdaptiveCci : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_adaptive_cci_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_adaptive_cci_reset(_handle.DangerousGetHandle()); @@ -835,6 +899,14 @@ public sealed class AdaptiveCycle : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_adaptive_cycle_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_adaptive_cycle_reset(_handle.DangerousGetHandle()); @@ -901,6 +973,14 @@ public sealed class AdaptiveLaguerreFilter : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_adaptive_laguerre_filter_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_adaptive_laguerre_filter_reset(_handle.DangerousGetHandle()); @@ -967,6 +1047,14 @@ public sealed class AdaptiveRsi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_adaptive_rsi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_adaptive_rsi_reset(_handle.DangerousGetHandle()); @@ -1057,6 +1145,14 @@ public sealed class Adl : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_adl_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_adl_reset(_handle.DangerousGetHandle()); @@ -1147,6 +1243,14 @@ public sealed class AdvanceBlock : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_advance_block_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_advance_block_reset(_handle.DangerousGetHandle()); @@ -1228,6 +1332,14 @@ public sealed class AdvanceDecline : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_advance_decline_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_advance_decline_reset(_handle.DangerousGetHandle()); @@ -1309,6 +1421,14 @@ public sealed class AdvanceDeclineRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_advance_decline_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_advance_decline_ratio_reset(_handle.DangerousGetHandle()); @@ -1363,6 +1483,14 @@ public sealed class Adx : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_adx_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_adx_reset(_handle.DangerousGetHandle()); @@ -1454,6 +1582,14 @@ public sealed class Adxr : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_adxr_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_adxr_reset(_handle.DangerousGetHandle()); @@ -1510,6 +1646,14 @@ public sealed class Alligator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_alligator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_alligator_reset(_handle.DangerousGetHandle()); @@ -1576,6 +1720,14 @@ public sealed class Alma : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_alma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_alma_reset(_handle.DangerousGetHandle()); @@ -1647,6 +1799,14 @@ public sealed class Alpha : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_alpha_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_alpha_reset(_handle.DangerousGetHandle()); @@ -1695,6 +1855,14 @@ public sealed class AmihudIlliquidity : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_amihud_illiquidity_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_amihud_illiquidity_reset(_handle.DangerousGetHandle()); @@ -1760,6 +1928,14 @@ public sealed class AnchoredRsi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_anchored_rsi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_anchored_rsi_reset(_handle.DangerousGetHandle()); @@ -1850,6 +2026,14 @@ public sealed class AnchoredVwap : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_anchored_vwap_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_anchored_vwap_reset(_handle.DangerousGetHandle()); @@ -1904,6 +2088,14 @@ public sealed class AndrewsPitchfork : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_andrews_pitchfork_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_andrews_pitchfork_reset(_handle.DangerousGetHandle()); @@ -1971,6 +2163,14 @@ public sealed class Apo : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_apo_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_apo_reset(_handle.DangerousGetHandle()); @@ -2025,6 +2225,14 @@ public sealed class Aroon : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_aroon_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_aroon_reset(_handle.DangerousGetHandle()); @@ -2116,6 +2324,14 @@ public sealed class AroonOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_aroon_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_aroon_oscillator_reset(_handle.DangerousGetHandle()); @@ -2207,6 +2423,14 @@ public sealed class Atr : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_atr_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_atr_reset(_handle.DangerousGetHandle()); @@ -2261,6 +2485,14 @@ public sealed class AtrBands : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_atr_bands_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_atr_bands_reset(_handle.DangerousGetHandle()); @@ -2315,6 +2547,14 @@ public sealed class AtrRatchet : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_atr_ratchet_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_atr_ratchet_reset(_handle.DangerousGetHandle()); @@ -2406,6 +2646,14 @@ public sealed class AtrTrailingStop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_atr_trailing_stop_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_atr_trailing_stop_reset(_handle.DangerousGetHandle()); @@ -2459,6 +2707,14 @@ public sealed class AutoFib : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_auto_fib_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_auto_fib_reset(_handle.DangerousGetHandle()); @@ -2526,6 +2782,14 @@ public sealed class Autocorrelation : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_autocorrelation_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_autocorrelation_reset(_handle.DangerousGetHandle()); @@ -2593,6 +2857,14 @@ public sealed class AutocorrelationPeriodogram : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_autocorrelation_periodogram_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_autocorrelation_periodogram_reset(_handle.DangerousGetHandle()); @@ -2684,6 +2956,14 @@ public sealed class AverageDailyRange : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_average_daily_range_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_average_daily_range_reset(_handle.DangerousGetHandle()); @@ -2750,6 +3030,14 @@ public sealed class AverageDrawdown : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_average_drawdown_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_average_drawdown_reset(_handle.DangerousGetHandle()); @@ -2840,6 +3128,14 @@ public sealed class AvgPrice : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_avg_price_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_avg_price_reset(_handle.DangerousGetHandle()); @@ -2932,6 +3228,14 @@ public sealed class AwesomeOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_awesome_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_awesome_oscillator_reset(_handle.DangerousGetHandle()); @@ -2945,12 +3249,12 @@ public sealed class AwesomeOscillatorHistogram : IDisposable { private readonly WickraHandle _handle; - public AwesomeOscillatorHistogram(int fast, int slow, int smaPeriod) + public AwesomeOscillatorHistogram(int fast, int slow, int lookback) { ArgumentOutOfRangeException.ThrowIfNegative(fast); ArgumentOutOfRangeException.ThrowIfNegative(slow); - ArgumentOutOfRangeException.ThrowIfNegative(smaPeriod); - var ptr = NativeMethods.wickra_awesome_oscillator_histogram_new((nuint)fast, (nuint)slow, (nuint)smaPeriod); + ArgumentOutOfRangeException.ThrowIfNegative(lookback); + var ptr = NativeMethods.wickra_awesome_oscillator_histogram_new((nuint)fast, (nuint)slow, (nuint)lookback); if (ptr == nint.Zero) { throw new ArgumentException("invalid AwesomeOscillatorHistogram parameters"); @@ -3025,6 +3329,14 @@ public sealed class AwesomeOscillatorHistogram : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_awesome_oscillator_histogram_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_awesome_oscillator_histogram_reset(_handle.DangerousGetHandle()); @@ -3115,6 +3427,14 @@ public sealed class BalanceOfPower : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_balance_of_power_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_balance_of_power_reset(_handle.DangerousGetHandle()); @@ -3181,6 +3501,14 @@ public sealed class BandpassFilter : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_bandpass_filter_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_bandpass_filter_reset(_handle.DangerousGetHandle()); @@ -3271,6 +3599,14 @@ public sealed class Bat : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_bat_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_bat_reset(_handle.DangerousGetHandle()); @@ -3361,6 +3697,14 @@ public sealed class BeltHold : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_belt_hold_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_belt_hold_reset(_handle.DangerousGetHandle()); @@ -3432,6 +3776,14 @@ public sealed class Beta : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_beta_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_beta_reset(_handle.DangerousGetHandle()); @@ -3503,6 +3855,14 @@ public sealed class BetaNeutralSpread : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_beta_neutral_spread_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_beta_neutral_spread_reset(_handle.DangerousGetHandle()); @@ -3594,6 +3954,14 @@ public sealed class BetterVolume : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_better_volume_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_better_volume_reset(_handle.DangerousGetHandle()); @@ -3660,6 +4028,14 @@ public sealed class BipowerVariation : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_bipower_variation_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_bipower_variation_reset(_handle.DangerousGetHandle()); @@ -3750,6 +4126,14 @@ public sealed class BodySizePct : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_body_size_pct_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_body_size_pct_reset(_handle.DangerousGetHandle()); @@ -3804,6 +4188,14 @@ public sealed class BollingerBands : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_bollinger_bands_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_bollinger_bands_reset(_handle.DangerousGetHandle()); @@ -3870,6 +4262,14 @@ public sealed class BollingerBandwidth : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_bollinger_bandwidth_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_bollinger_bandwidth_reset(_handle.DangerousGetHandle()); @@ -3924,6 +4324,14 @@ public sealed class BomarBands : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_bomar_bands_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_bomar_bands_reset(_handle.DangerousGetHandle()); @@ -4006,6 +4414,14 @@ public sealed class BreadthThrust : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_breadth_thrust_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_breadth_thrust_reset(_handle.DangerousGetHandle()); @@ -4096,6 +4512,14 @@ public sealed class Breakaway : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_breakaway_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_breakaway_reset(_handle.DangerousGetHandle()); @@ -4177,6 +4601,14 @@ public sealed class BullishPercentIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_bullish_percent_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_bullish_percent_index_reset(_handle.DangerousGetHandle()); @@ -4243,6 +4675,14 @@ public sealed class BurkeRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_burke_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_burke_ratio_reset(_handle.DangerousGetHandle()); @@ -4333,6 +4773,14 @@ public sealed class Butterfly : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_butterfly_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_butterfly_reset(_handle.DangerousGetHandle()); @@ -4380,6 +4828,14 @@ public sealed class CalendarSpread : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_calendar_spread_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_calendar_spread_reset(_handle.DangerousGetHandle()); @@ -4446,6 +4902,14 @@ public sealed class CalmarRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_calmar_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_calmar_ratio_reset(_handle.DangerousGetHandle()); @@ -4499,6 +4963,14 @@ public sealed class Camarilla : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_camarilla_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_camarilla_reset(_handle.DangerousGetHandle()); @@ -4553,6 +5025,14 @@ public sealed class CandleVolume : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_candle_volume_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_candle_volume_reset(_handle.DangerousGetHandle()); @@ -4644,6 +5124,14 @@ public sealed class Cci : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_cci_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_cci_reset(_handle.DangerousGetHandle()); @@ -4710,6 +5198,14 @@ public sealed class CenterOfGravity : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_center_of_gravity_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_center_of_gravity_reset(_handle.DangerousGetHandle()); @@ -4763,6 +5259,14 @@ public sealed class CentralPivotRange : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_central_pivot_range_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_central_pivot_range_reset(_handle.DangerousGetHandle()); @@ -4829,6 +5333,14 @@ public sealed class Cfo : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_cfo_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_cfo_reset(_handle.DangerousGetHandle()); @@ -4920,6 +5432,14 @@ public sealed class ChaikinMoneyFlow : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_chaikin_money_flow_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_chaikin_money_flow_reset(_handle.DangerousGetHandle()); @@ -5012,6 +5532,14 @@ public sealed class ChaikinOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_chaikin_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_chaikin_oscillator_reset(_handle.DangerousGetHandle()); @@ -5104,6 +5632,14 @@ public sealed class ChaikinVolatility : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_chaikin_volatility_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_chaikin_volatility_reset(_handle.DangerousGetHandle()); @@ -5159,6 +5695,14 @@ public sealed class ChandeKrollStop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_chande_kroll_stop_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_chande_kroll_stop_reset(_handle.DangerousGetHandle()); @@ -5213,6 +5757,14 @@ public sealed class ChandelierExit : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_chandelier_exit_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_chandelier_exit_reset(_handle.DangerousGetHandle()); @@ -5304,6 +5856,14 @@ public sealed class ChoppinessIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_choppiness_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_choppiness_index_reset(_handle.DangerousGetHandle()); @@ -5357,6 +5917,14 @@ public sealed class ClassicPivots : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_classic_pivots_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_classic_pivots_reset(_handle.DangerousGetHandle()); @@ -5447,6 +6015,14 @@ public sealed class CloseVsOpen : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_close_vs_open_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_close_vs_open_reset(_handle.DangerousGetHandle()); @@ -5537,6 +6113,14 @@ public sealed class ClosingMarubozu : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_closing_marubozu_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_closing_marubozu_reset(_handle.DangerousGetHandle()); @@ -5603,6 +6187,14 @@ public sealed class Cmo : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_cmo_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_cmo_reset(_handle.DangerousGetHandle()); @@ -5669,6 +6261,14 @@ public sealed class CoefficientOfVariation : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_coefficient_of_variation_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_coefficient_of_variation_reset(_handle.DangerousGetHandle()); @@ -5724,6 +6324,14 @@ public sealed class Cointegration : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_cointegration_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_cointegration_reset(_handle.DangerousGetHandle()); @@ -5790,6 +6398,14 @@ public sealed class CommonSenseRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_common_sense_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_common_sense_ratio_reset(_handle.DangerousGetHandle()); @@ -5845,6 +6461,14 @@ public sealed class CompositeProfile : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_composite_profile_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_composite_profile_reset(_handle.DangerousGetHandle()); @@ -5935,6 +6559,14 @@ public sealed class ConcealingBabySwallow : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_concealing_baby_swallow_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_concealing_baby_swallow_reset(_handle.DangerousGetHandle()); @@ -6001,6 +6633,14 @@ public sealed class ConditionalValueAtRisk : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_conditional_value_at_risk_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_conditional_value_at_risk_reset(_handle.DangerousGetHandle()); @@ -6069,6 +6709,14 @@ public sealed class ConnorsRsi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_connors_rsi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_connors_rsi_reset(_handle.DangerousGetHandle()); @@ -6137,6 +6785,14 @@ public sealed class Coppock : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_coppock_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_coppock_reset(_handle.DangerousGetHandle()); @@ -6203,6 +6859,14 @@ public sealed class CorrelationTrendIndicator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_correlation_trend_indicator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_correlation_trend_indicator_reset(_handle.DangerousGetHandle()); @@ -6293,6 +6957,14 @@ public sealed class Counterattack : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_counterattack_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_counterattack_reset(_handle.DangerousGetHandle()); @@ -6383,6 +7055,14 @@ public sealed class Crab : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_crab_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_crab_reset(_handle.DangerousGetHandle()); @@ -6430,6 +7110,14 @@ public sealed class CumulativeVolumeDelta : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_cumulative_volume_delta_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_cumulative_volume_delta_reset(_handle.DangerousGetHandle()); @@ -6511,6 +7199,14 @@ public sealed class CumulativeVolumeIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_cumulative_volume_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_cumulative_volume_index_reset(_handle.DangerousGetHandle()); @@ -6601,6 +7297,14 @@ public sealed class CupAndHandle : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_cup_and_handle_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_cup_and_handle_reset(_handle.DangerousGetHandle()); @@ -6667,6 +7371,14 @@ public sealed class CyberneticCycle : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_cybernetic_cycle_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_cybernetic_cycle_reset(_handle.DangerousGetHandle()); @@ -6757,6 +7469,14 @@ public sealed class Cypher : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_cypher_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_cypher_reset(_handle.DangerousGetHandle()); @@ -6825,6 +7545,14 @@ public sealed class DayOfWeekProfile : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_day_of_week_profile_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_day_of_week_profile_reset(_handle.DangerousGetHandle()); @@ -6891,6 +7619,14 @@ public sealed class Decycler : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_decycler_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_decycler_reset(_handle.DangerousGetHandle()); @@ -6958,6 +7694,14 @@ public sealed class DecyclerOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_decycler_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_decycler_oscillator_reset(_handle.DangerousGetHandle()); @@ -7024,6 +7768,14 @@ public sealed class Dema : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_dema_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_dema_reset(_handle.DangerousGetHandle()); @@ -7115,6 +7867,14 @@ public sealed class DemandIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_demand_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_demand_index_reset(_handle.DangerousGetHandle()); @@ -7168,6 +7928,14 @@ public sealed class DemarkPivots : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_demark_pivots_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_demark_pivots_reset(_handle.DangerousGetHandle()); @@ -7235,6 +8003,14 @@ public sealed class DepthSlope : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_depth_slope_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_depth_slope_reset(_handle.DangerousGetHandle()); @@ -7304,6 +8080,14 @@ public sealed class DerivativeOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_derivative_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_derivative_oscillator_reset(_handle.DangerousGetHandle()); @@ -7370,6 +8154,14 @@ public sealed class DetrendedStdDev : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_detrended_std_dev_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_detrended_std_dev_reset(_handle.DangerousGetHandle()); @@ -7436,6 +8228,14 @@ public sealed class DisparityIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_disparity_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_disparity_index_reset(_handle.DangerousGetHandle()); @@ -7507,6 +8307,14 @@ public sealed class DistanceSsd : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_distance_ssd_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_distance_ssd_reset(_handle.DangerousGetHandle()); @@ -7597,6 +8405,14 @@ public sealed class Doji : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_doji_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_doji_reset(_handle.DangerousGetHandle()); @@ -7687,6 +8503,14 @@ public sealed class DojiStar : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_doji_star_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_doji_star_reset(_handle.DangerousGetHandle()); @@ -7739,6 +8563,14 @@ public sealed class DollarBars : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_dollar_bars_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_dollar_bars_reset(_handle.DangerousGetHandle()); @@ -7793,6 +8625,14 @@ public sealed class Donchian : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_donchian_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_donchian_reset(_handle.DangerousGetHandle()); @@ -7847,6 +8687,14 @@ public sealed class DonchianStop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_donchian_stop_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_donchian_stop_reset(_handle.DangerousGetHandle()); @@ -7901,6 +8749,14 @@ public sealed class DoubleBollinger : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_double_bollinger_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_double_bollinger_reset(_handle.DangerousGetHandle()); @@ -7991,6 +8847,14 @@ public sealed class DoubleTopBottom : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_double_top_bottom_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_double_top_bottom_reset(_handle.DangerousGetHandle()); @@ -8081,6 +8945,14 @@ public sealed class DownsideGapThreeMethods : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_downside_gap_three_methods_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_downside_gap_three_methods_reset(_handle.DangerousGetHandle()); @@ -8147,6 +9019,14 @@ public sealed class Dpo : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_dpo_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_dpo_reset(_handle.DangerousGetHandle()); @@ -8237,6 +9117,14 @@ public sealed class DragonflyDoji : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_dragonfly_doji_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_dragonfly_doji_reset(_handle.DangerousGetHandle()); @@ -8302,6 +9190,14 @@ public sealed class DrawdownDuration : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_drawdown_duration_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_drawdown_duration_reset(_handle.DangerousGetHandle()); @@ -8393,6 +9289,14 @@ public sealed class DumplingTop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_dumpling_top_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_dumpling_top_reset(_handle.DangerousGetHandle()); @@ -8484,6 +9388,14 @@ public sealed class Dx : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_dx_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_dx_reset(_handle.DangerousGetHandle()); @@ -8550,6 +9462,14 @@ public sealed class DynamicMomentumIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_dynamic_momentum_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_dynamic_momentum_index_reset(_handle.DangerousGetHandle()); @@ -8641,6 +9561,14 @@ public sealed class EaseOfMovement : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ease_of_movement_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ease_of_movement_reset(_handle.DangerousGetHandle()); @@ -8688,6 +9616,14 @@ public sealed class EffectiveSpread : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_effective_spread_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_effective_spread_reset(_handle.DangerousGetHandle()); @@ -8754,6 +9690,14 @@ public sealed class EhlersStochastic : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ehlers_stochastic_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ehlers_stochastic_reset(_handle.DangerousGetHandle()); @@ -8820,6 +9764,14 @@ public sealed class Ehma : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ehma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ehma_reset(_handle.DangerousGetHandle()); @@ -8889,6 +9841,14 @@ public sealed class ElderImpulse : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_elder_impulse_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_elder_impulse_reset(_handle.DangerousGetHandle()); @@ -8943,6 +9903,14 @@ public sealed class ElderRay : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_elder_ray_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_elder_ray_reset(_handle.DangerousGetHandle()); @@ -8997,6 +9965,14 @@ public sealed class ElderSafeZone : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_elder_safe_zone_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_elder_safe_zone_reset(_handle.DangerousGetHandle()); @@ -9063,6 +10039,14 @@ public sealed class Ema : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ema_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ema_reset(_handle.DangerousGetHandle()); @@ -9129,6 +10113,14 @@ public sealed class EmpiricalModeDecomposition : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_empirical_mode_decomposition_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_empirical_mode_decomposition_reset(_handle.DangerousGetHandle()); @@ -9219,6 +10211,14 @@ public sealed class Engulfing : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_engulfing_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_engulfing_reset(_handle.DangerousGetHandle()); @@ -9273,6 +10273,14 @@ public sealed class Equivolume : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_equivolume_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_equivolume_reset(_handle.DangerousGetHandle()); @@ -9320,6 +10328,14 @@ public sealed class EstimatedLeverageRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_estimated_leverage_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_estimated_leverage_ratio_reset(_handle.DangerousGetHandle()); @@ -9387,6 +10403,14 @@ public sealed class EvenBetterSinewave : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_even_better_sinewave_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_even_better_sinewave_reset(_handle.DangerousGetHandle()); @@ -9477,6 +10501,14 @@ public sealed class EveningDojiStar : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_evening_doji_star_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_evening_doji_star_reset(_handle.DangerousGetHandle()); @@ -9568,6 +10600,14 @@ public sealed class Evwma : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_evwma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_evwma_reset(_handle.DangerousGetHandle()); @@ -9633,6 +10673,14 @@ public sealed class EwmaVolatility : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ewma_volatility_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ewma_volatility_reset(_handle.DangerousGetHandle()); @@ -9699,6 +10747,14 @@ public sealed class Expectancy : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_expectancy_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_expectancy_reset(_handle.DangerousGetHandle()); @@ -9789,6 +10845,14 @@ public sealed class FallingThreeMethods : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_falling_three_methods_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_falling_three_methods_reset(_handle.DangerousGetHandle()); @@ -9854,6 +10918,14 @@ public sealed class Fama : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fama_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fama_reset(_handle.DangerousGetHandle()); @@ -9907,6 +10979,14 @@ public sealed class FibArcs : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fib_arcs_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fib_arcs_reset(_handle.DangerousGetHandle()); @@ -9960,6 +11040,14 @@ public sealed class FibChannel : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fib_channel_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fib_channel_reset(_handle.DangerousGetHandle()); @@ -10013,6 +11101,14 @@ public sealed class FibConfluence : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fib_confluence_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fib_confluence_reset(_handle.DangerousGetHandle()); @@ -10066,6 +11162,14 @@ public sealed class FibExtension : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fib_extension_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fib_extension_reset(_handle.DangerousGetHandle()); @@ -10119,6 +11223,14 @@ public sealed class FibFan : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fib_fan_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fib_fan_reset(_handle.DangerousGetHandle()); @@ -10172,6 +11284,14 @@ public sealed class FibProjection : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fib_projection_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fib_projection_reset(_handle.DangerousGetHandle()); @@ -10225,6 +11345,14 @@ public sealed class FibRetracement : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fib_retracement_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fib_retracement_reset(_handle.DangerousGetHandle()); @@ -10278,6 +11406,14 @@ public sealed class FibTimeZones : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fib_time_zones_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fib_time_zones_reset(_handle.DangerousGetHandle()); @@ -10331,6 +11467,14 @@ public sealed class FibonacciPivots : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fibonacci_pivots_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fibonacci_pivots_reset(_handle.DangerousGetHandle()); @@ -10397,6 +11541,14 @@ public sealed class FisherRsi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fisher_rsi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fisher_rsi_reset(_handle.DangerousGetHandle()); @@ -10463,6 +11615,14 @@ public sealed class FisherTransform : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fisher_transform_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fisher_transform_reset(_handle.DangerousGetHandle()); @@ -10553,6 +11713,14 @@ public sealed class FlagPennant : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_flag_pennant_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_flag_pennant_reset(_handle.DangerousGetHandle()); @@ -10621,6 +11789,14 @@ public sealed class Footprint : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_footprint_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_footprint_reset(_handle.DangerousGetHandle()); @@ -10712,6 +11888,14 @@ public sealed class ForceIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_force_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_force_index_reset(_handle.DangerousGetHandle()); @@ -10766,6 +11950,14 @@ public sealed class FractalChaosBands : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fractal_chaos_bands_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fractal_chaos_bands_reset(_handle.DangerousGetHandle()); @@ -10832,6 +12024,14 @@ public sealed class Frama : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_frama_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_frama_reset(_handle.DangerousGetHandle()); @@ -10923,6 +12123,14 @@ public sealed class FryPanBottom : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_fry_pan_bottom_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_fry_pan_bottom_reset(_handle.DangerousGetHandle()); @@ -10970,6 +12178,14 @@ public sealed class FundingBasis : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_funding_basis_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_funding_basis_reset(_handle.DangerousGetHandle()); @@ -11017,6 +12233,14 @@ public sealed class FundingImpliedApr : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_funding_implied_apr_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_funding_implied_apr_reset(_handle.DangerousGetHandle()); @@ -11064,6 +12288,14 @@ public sealed class FundingRate : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_funding_rate_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_funding_rate_reset(_handle.DangerousGetHandle()); @@ -11112,6 +12344,14 @@ public sealed class FundingRateMean : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_funding_rate_mean_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_funding_rate_mean_reset(_handle.DangerousGetHandle()); @@ -11160,6 +12400,14 @@ public sealed class FundingRateZScore : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_funding_rate_z_score_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_funding_rate_z_score_reset(_handle.DangerousGetHandle()); @@ -11226,6 +12474,14 @@ public sealed class GainLossRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_gain_loss_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_gain_loss_ratio_reset(_handle.DangerousGetHandle()); @@ -11292,6 +12548,14 @@ public sealed class GainToPainRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_gain_to_pain_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_gain_to_pain_ratio_reset(_handle.DangerousGetHandle()); @@ -11382,6 +12646,14 @@ public sealed class GapSideBySideWhite : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_gap_side_by_side_white_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_gap_side_by_side_white_reset(_handle.DangerousGetHandle()); @@ -11447,6 +12719,14 @@ public sealed class Garch11 : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_garch11_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_garch11_reset(_handle.DangerousGetHandle()); @@ -11539,6 +12819,14 @@ public sealed class GarmanKlassVolatility : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_garman_klass_volatility_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_garman_klass_volatility_reset(_handle.DangerousGetHandle()); @@ -11629,6 +12917,14 @@ public sealed class Gartley : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_gartley_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_gartley_reset(_handle.DangerousGetHandle()); @@ -11685,6 +12981,14 @@ public sealed class GatorOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_gator_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_gator_oscillator_reset(_handle.DangerousGetHandle()); @@ -11751,6 +13055,14 @@ public sealed class GeneralizedDema : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_generalized_dema_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_generalized_dema_reset(_handle.DangerousGetHandle()); @@ -11817,6 +13129,14 @@ public sealed class GeometricMa : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_geometric_ma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_geometric_ma_reset(_handle.DangerousGetHandle()); @@ -11870,6 +13190,14 @@ public sealed class GoldenPocket : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_golden_pocket_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_golden_pocket_reset(_handle.DangerousGetHandle()); @@ -11942,6 +13270,14 @@ public sealed class GrangerCausality : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_granger_causality_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_granger_causality_reset(_handle.DangerousGetHandle()); @@ -12032,6 +13368,14 @@ public sealed class GravestoneDoji : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_gravestone_doji_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_gravestone_doji_reset(_handle.DangerousGetHandle()); @@ -12122,6 +13466,14 @@ public sealed class Hammer : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_hammer_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_hammer_reset(_handle.DangerousGetHandle()); @@ -12212,6 +13564,14 @@ public sealed class HangingMan : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_hanging_man_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_hanging_man_reset(_handle.DangerousGetHandle()); @@ -12302,6 +13662,14 @@ public sealed class Harami : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_harami_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_harami_reset(_handle.DangerousGetHandle()); @@ -12392,6 +13760,14 @@ public sealed class HaramiCross : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_harami_cross_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_harami_cross_reset(_handle.DangerousGetHandle()); @@ -12463,6 +13839,14 @@ public sealed class HasbrouckInformationShare : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_hasbrouck_information_share_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_hasbrouck_information_share_reset(_handle.DangerousGetHandle()); @@ -12553,6 +13937,14 @@ public sealed class HeadAndShoulders : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_head_and_shoulders_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_head_and_shoulders_reset(_handle.DangerousGetHandle()); @@ -12606,6 +13998,14 @@ public sealed class HeikinAshi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_heikin_ashi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_heikin_ashi_reset(_handle.DangerousGetHandle()); @@ -12697,6 +14097,14 @@ public sealed class HeikinAshiOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_heikin_ashi_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_heikin_ashi_oscillator_reset(_handle.DangerousGetHandle()); @@ -12788,6 +14196,14 @@ public sealed class HiLoActivator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_hi_lo_activator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_hi_lo_activator_reset(_handle.DangerousGetHandle()); @@ -12870,6 +14286,14 @@ public sealed class HighLowIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_high_low_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_high_low_index_reset(_handle.DangerousGetHandle()); @@ -12960,6 +14384,14 @@ public sealed class HighLowRange : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_high_low_range_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_high_low_range_reset(_handle.DangerousGetHandle()); @@ -13015,6 +14447,14 @@ public sealed class HighLowVolumeNodes : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_high_low_volume_nodes_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_high_low_volume_nodes_reset(_handle.DangerousGetHandle()); @@ -13105,6 +14545,14 @@ public sealed class HighWave : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_high_wave_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_high_wave_reset(_handle.DangerousGetHandle()); @@ -13171,6 +14619,14 @@ public sealed class HighpassFilter : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_highpass_filter_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_highpass_filter_reset(_handle.DangerousGetHandle()); @@ -13261,6 +14717,14 @@ public sealed class Hikkake : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_hikkake_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_hikkake_reset(_handle.DangerousGetHandle()); @@ -13351,6 +14815,14 @@ public sealed class HikkakeModified : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_hikkake_modified_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_hikkake_modified_reset(_handle.DangerousGetHandle()); @@ -13416,6 +14888,14 @@ public sealed class HilbertDominantCycle : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_hilbert_dominant_cycle_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_hilbert_dominant_cycle_reset(_handle.DangerousGetHandle()); @@ -13483,6 +14963,14 @@ public sealed class HistoricalVolatility : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_historical_volatility_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_historical_volatility_reset(_handle.DangerousGetHandle()); @@ -13549,6 +15037,14 @@ public sealed class Hma : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_hma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_hma_reset(_handle.DangerousGetHandle()); @@ -13614,6 +15110,14 @@ public sealed class HoltWinters : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_holt_winters_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_holt_winters_reset(_handle.DangerousGetHandle()); @@ -13704,6 +15208,14 @@ public sealed class HomingPigeon : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_homing_pigeon_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_homing_pigeon_reset(_handle.DangerousGetHandle()); @@ -13769,6 +15281,14 @@ public sealed class HtDcPhase : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ht_dc_phase_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ht_dc_phase_reset(_handle.DangerousGetHandle()); @@ -13822,6 +15342,14 @@ public sealed class HtPhasor : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ht_phasor_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ht_phasor_reset(_handle.DangerousGetHandle()); @@ -13887,6 +15415,14 @@ public sealed class HtTrendMode : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ht_trend_mode_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ht_trend_mode_reset(_handle.DangerousGetHandle()); @@ -13941,6 +15477,14 @@ public sealed class HurstChannel : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_hurst_channel_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_hurst_channel_reset(_handle.DangerousGetHandle()); @@ -14008,6 +15552,14 @@ public sealed class HurstExponent : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_hurst_exponent_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_hurst_exponent_reset(_handle.DangerousGetHandle()); @@ -14065,6 +15617,14 @@ public sealed class Ichimoku : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ichimoku_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ichimoku_reset(_handle.DangerousGetHandle()); @@ -14155,6 +15715,14 @@ public sealed class IdenticalThreeCrows : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_identical_three_crows_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_identical_three_crows_reset(_handle.DangerousGetHandle()); @@ -14207,6 +15775,14 @@ public sealed class ImbalanceBars : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_imbalance_bars_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_imbalance_bars_reset(_handle.DangerousGetHandle()); @@ -14297,6 +15873,14 @@ public sealed class InNeck : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_in_neck_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_in_neck_reset(_handle.DangerousGetHandle()); @@ -14389,6 +15973,14 @@ public sealed class Inertia : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_inertia_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_inertia_reset(_handle.DangerousGetHandle()); @@ -14460,6 +16052,14 @@ public sealed class InformationRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_information_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_information_ratio_reset(_handle.DangerousGetHandle()); @@ -14514,6 +16114,14 @@ public sealed class InitialBalance : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_initial_balance_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_initial_balance_reset(_handle.DangerousGetHandle()); @@ -14580,6 +16188,14 @@ public sealed class InstantaneousTrendline : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_instantaneous_trendline_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_instantaneous_trendline_reset(_handle.DangerousGetHandle()); @@ -14670,6 +16286,14 @@ public sealed class IntradayIntensity : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_intraday_intensity_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_intraday_intensity_reset(_handle.DangerousGetHandle()); @@ -14761,6 +16385,14 @@ public sealed class IntradayMomentumIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_intraday_momentum_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_intraday_momentum_index_reset(_handle.DangerousGetHandle()); @@ -14830,6 +16462,14 @@ public sealed class IntradayVolatilityProfile : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_intraday_volatility_profile_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_intraday_volatility_profile_reset(_handle.DangerousGetHandle()); @@ -14895,6 +16535,14 @@ public sealed class InverseFisherTransform : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_inverse_fisher_transform_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_inverse_fisher_transform_reset(_handle.DangerousGetHandle()); @@ -14985,6 +16633,14 @@ public sealed class InvertedHammer : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_inverted_hammer_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_inverted_hammer_reset(_handle.DangerousGetHandle()); @@ -15051,6 +16707,14 @@ public sealed class JarqueBera : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_jarque_bera_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_jarque_bera_reset(_handle.DangerousGetHandle()); @@ -15117,6 +16781,14 @@ public sealed class Jma : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_jma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_jma_reset(_handle.DangerousGetHandle()); @@ -15183,6 +16855,14 @@ public sealed class JumpIndicator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_jump_indicator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_jump_indicator_reset(_handle.DangerousGetHandle()); @@ -15249,6 +16929,14 @@ public sealed class KRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_k_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_k_ratio_reset(_handle.DangerousGetHandle()); @@ -15301,6 +16989,14 @@ public sealed class KagiBars : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kagi_bars_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kagi_bars_reset(_handle.DangerousGetHandle()); @@ -15354,6 +17050,14 @@ public sealed class KalmanHedgeRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kalman_hedge_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kalman_hedge_ratio_reset(_handle.DangerousGetHandle()); @@ -15422,6 +17126,14 @@ public sealed class Kama : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kama_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kama_reset(_handle.DangerousGetHandle()); @@ -15476,6 +17188,14 @@ public sealed class KaseDevStop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kase_dev_stop_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kase_dev_stop_reset(_handle.DangerousGetHandle()); @@ -15531,6 +17251,14 @@ public sealed class KasePermissionStochastic : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kase_permission_stochastic_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kase_permission_stochastic_reset(_handle.DangerousGetHandle()); @@ -15597,6 +17325,14 @@ public sealed class KellyCriterion : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kelly_criterion_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kelly_criterion_reset(_handle.DangerousGetHandle()); @@ -15652,6 +17388,14 @@ public sealed class Keltner : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_keltner_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_keltner_reset(_handle.DangerousGetHandle()); @@ -15723,6 +17467,14 @@ public sealed class KendallTau : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kendall_tau_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kendall_tau_reset(_handle.DangerousGetHandle()); @@ -15813,6 +17565,14 @@ public sealed class Kicking : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kicking_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kicking_reset(_handle.DangerousGetHandle()); @@ -15903,6 +17663,14 @@ public sealed class KickingByLength : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kicking_by_length_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kicking_by_length_reset(_handle.DangerousGetHandle()); @@ -15965,6 +17733,14 @@ public sealed class Kst : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kst_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kst_reset(_handle.DangerousGetHandle()); @@ -16031,6 +17807,14 @@ public sealed class Kurtosis : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kurtosis_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kurtosis_reset(_handle.DangerousGetHandle()); @@ -16123,6 +17907,14 @@ public sealed class Kvo : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kvo_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kvo_reset(_handle.DangerousGetHandle()); @@ -16171,6 +17963,14 @@ public sealed class KylesLambda : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_kyles_lambda_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_kyles_lambda_reset(_handle.DangerousGetHandle()); @@ -16261,6 +18061,14 @@ public sealed class LadderBottom : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ladder_bottom_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ladder_bottom_reset(_handle.DangerousGetHandle()); @@ -16326,6 +18134,14 @@ public sealed class LaguerreRsi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_laguerre_rsi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_laguerre_rsi_reset(_handle.DangerousGetHandle()); @@ -16381,6 +18197,14 @@ public sealed class LeadLagCrossCorrelation : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_lead_lag_cross_correlation_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_lead_lag_cross_correlation_reset(_handle.DangerousGetHandle()); @@ -16447,6 +18271,14 @@ public sealed class LinRegAngle : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_lin_reg_angle_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_lin_reg_angle_reset(_handle.DangerousGetHandle()); @@ -16501,6 +18333,14 @@ public sealed class LinRegChannel : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_lin_reg_channel_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_lin_reg_channel_reset(_handle.DangerousGetHandle()); @@ -16567,6 +18407,14 @@ public sealed class LinRegIntercept : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_lin_reg_intercept_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_lin_reg_intercept_reset(_handle.DangerousGetHandle()); @@ -16633,6 +18481,14 @@ public sealed class LinRegSlope : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_lin_reg_slope_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_lin_reg_slope_reset(_handle.DangerousGetHandle()); @@ -16699,6 +18555,14 @@ public sealed class LinearRegression : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_linear_regression_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_linear_regression_reset(_handle.DangerousGetHandle()); @@ -16752,6 +18616,14 @@ public sealed class LiquidationFeatures : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_liquidation_features_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_liquidation_features_reset(_handle.DangerousGetHandle()); @@ -16818,6 +18690,14 @@ public sealed class LogReturn : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_log_return_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_log_return_reset(_handle.DangerousGetHandle()); @@ -16908,6 +18788,14 @@ public sealed class LongLeggedDoji : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_long_legged_doji_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_long_legged_doji_reset(_handle.DangerousGetHandle()); @@ -16998,6 +18886,14 @@ public sealed class LongLine : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_long_line_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_long_line_reset(_handle.DangerousGetHandle()); @@ -17045,6 +18941,14 @@ public sealed class LongShortRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_long_short_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_long_short_ratio_reset(_handle.DangerousGetHandle()); @@ -17111,6 +19015,14 @@ public sealed class M2Measure : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_m2_measure_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_m2_measure_reset(_handle.DangerousGetHandle()); @@ -17165,6 +19077,14 @@ public sealed class MaEnvelope : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ma_envelope_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ma_envelope_reset(_handle.DangerousGetHandle()); @@ -17221,6 +19141,14 @@ public sealed class MacdExt : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_macd_ext_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_macd_ext_reset(_handle.DangerousGetHandle()); @@ -17275,6 +19203,14 @@ public sealed class MacdFix : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_macd_fix_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_macd_fix_reset(_handle.DangerousGetHandle()); @@ -17343,6 +19279,14 @@ public sealed class MacdHistogram : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_macd_histogram_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_macd_histogram_reset(_handle.DangerousGetHandle()); @@ -17399,6 +19343,14 @@ public sealed class MacdIndicator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_macd_indicator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_macd_indicator_reset(_handle.DangerousGetHandle()); @@ -17452,6 +19404,14 @@ public sealed class Mama : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_mama_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_mama_reset(_handle.DangerousGetHandle()); @@ -17542,6 +19502,14 @@ public sealed class MarketFacilitationIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_market_facilitation_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_market_facilitation_index_reset(_handle.DangerousGetHandle()); @@ -17608,6 +19576,14 @@ public sealed class MartinRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_martin_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_martin_ratio_reset(_handle.DangerousGetHandle()); @@ -17698,6 +19674,14 @@ public sealed class Marubozu : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_marubozu_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_marubozu_reset(_handle.DangerousGetHandle()); @@ -17790,6 +19774,14 @@ public sealed class MassIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_mass_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_mass_index_reset(_handle.DangerousGetHandle()); @@ -17880,6 +19872,14 @@ public sealed class MatHold : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_mat_hold_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_mat_hold_reset(_handle.DangerousGetHandle()); @@ -17970,6 +19970,14 @@ public sealed class MatchingLow : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_matching_low_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_matching_low_reset(_handle.DangerousGetHandle()); @@ -18036,6 +20044,14 @@ public sealed class MaxDrawdown : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_max_drawdown_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_max_drawdown_reset(_handle.DangerousGetHandle()); @@ -18117,6 +20133,14 @@ public sealed class McClellanOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_mc_clellan_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_mc_clellan_oscillator_reset(_handle.DangerousGetHandle()); @@ -18198,6 +20222,14 @@ public sealed class McClellanSummationIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_mc_clellan_summation_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_mc_clellan_summation_index_reset(_handle.DangerousGetHandle()); @@ -18264,6 +20296,14 @@ public sealed class McGinleyDynamic : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_mc_ginley_dynamic_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_mc_ginley_dynamic_reset(_handle.DangerousGetHandle()); @@ -18330,6 +20370,14 @@ public sealed class MedianAbsoluteDeviation : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_median_absolute_deviation_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_median_absolute_deviation_reset(_handle.DangerousGetHandle()); @@ -18384,6 +20432,14 @@ public sealed class MedianChannel : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_median_channel_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_median_channel_reset(_handle.DangerousGetHandle()); @@ -18450,6 +20506,14 @@ public sealed class MedianMa : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_median_ma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_median_ma_reset(_handle.DangerousGetHandle()); @@ -18540,6 +20604,14 @@ public sealed class MedianPrice : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_median_price_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_median_price_reset(_handle.DangerousGetHandle()); @@ -18631,6 +20703,14 @@ public sealed class Mfi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_mfi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_mfi_reset(_handle.DangerousGetHandle()); @@ -18698,6 +20778,14 @@ public sealed class Microprice : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_microprice_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_microprice_reset(_handle.DangerousGetHandle()); @@ -18764,6 +20852,14 @@ public sealed class MidPoint : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_mid_point_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_mid_point_reset(_handle.DangerousGetHandle()); @@ -18855,6 +20951,14 @@ public sealed class MidPrice : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_mid_price_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_mid_price_reset(_handle.DangerousGetHandle()); @@ -18946,6 +21050,14 @@ public sealed class MinusDi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_minus_di_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_minus_di_reset(_handle.DangerousGetHandle()); @@ -19037,6 +21149,14 @@ public sealed class MinusDm : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_minus_dm_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_minus_dm_reset(_handle.DangerousGetHandle()); @@ -19091,6 +21211,14 @@ public sealed class ModifiedMaStop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_modified_ma_stop_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_modified_ma_stop_reset(_handle.DangerousGetHandle()); @@ -19157,6 +21285,14 @@ public sealed class Mom : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_mom_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_mom_reset(_handle.DangerousGetHandle()); @@ -19247,6 +21383,14 @@ public sealed class MorningDojiStar : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_morning_doji_star_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_morning_doji_star_reset(_handle.DangerousGetHandle()); @@ -19337,6 +21481,14 @@ public sealed class MorningEveningStar : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_morning_evening_star_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_morning_evening_star_reset(_handle.DangerousGetHandle()); @@ -19391,6 +21543,14 @@ public sealed class MurreyMathLines : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_murrey_math_lines_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_murrey_math_lines_reset(_handle.DangerousGetHandle()); @@ -19483,6 +21643,14 @@ public sealed class NakedPoc : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_naked_poc_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_naked_poc_reset(_handle.DangerousGetHandle()); @@ -19574,6 +21742,14 @@ public sealed class Natr : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_natr_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_natr_reset(_handle.DangerousGetHandle()); @@ -19655,6 +21831,14 @@ public sealed class NewHighsNewLows : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_new_highs_new_lows_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_new_highs_new_lows_reset(_handle.DangerousGetHandle()); @@ -19746,6 +21930,14 @@ public sealed class NewPriceLines : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_new_price_lines_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_new_price_lines_reset(_handle.DangerousGetHandle()); @@ -19799,6 +21991,14 @@ public sealed class Nrtr : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_nrtr_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_nrtr_reset(_handle.DangerousGetHandle()); @@ -19889,6 +22089,14 @@ public sealed class Nvi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_nvi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_nvi_reset(_handle.DangerousGetHandle()); @@ -19979,6 +22187,14 @@ public sealed class Obv : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_obv_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_obv_reset(_handle.DangerousGetHandle()); @@ -20027,6 +22243,14 @@ public sealed class OIPriceDivergence : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_oi_price_divergence_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_oi_price_divergence_reset(_handle.DangerousGetHandle()); @@ -20074,6 +22298,14 @@ public sealed class OiToVolumeRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_oi_to_volume_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_oi_to_volume_ratio_reset(_handle.DangerousGetHandle()); @@ -20121,6 +22353,14 @@ public sealed class OIWeighted : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_oi_weighted_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_oi_weighted_reset(_handle.DangerousGetHandle()); @@ -20187,6 +22427,14 @@ public sealed class OmegaRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_omega_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_omega_ratio_reset(_handle.DangerousGetHandle()); @@ -20277,6 +22525,14 @@ public sealed class OnNeck : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_on_neck_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_on_neck_reset(_handle.DangerousGetHandle()); @@ -20324,6 +22580,14 @@ public sealed class OpenInterestDelta : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_open_interest_delta_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_open_interest_delta_reset(_handle.DangerousGetHandle()); @@ -20372,6 +22636,14 @@ public sealed class OpenInterestMomentum : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_open_interest_momentum_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_open_interest_momentum_reset(_handle.DangerousGetHandle()); @@ -20462,6 +22734,14 @@ public sealed class OpeningMarubozu : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_opening_marubozu_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_opening_marubozu_reset(_handle.DangerousGetHandle()); @@ -20516,6 +22796,14 @@ public sealed class OpeningRange : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_opening_range_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_opening_range_reset(_handle.DangerousGetHandle()); @@ -20583,6 +22871,14 @@ public sealed class OrderBookImbalanceFull : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_order_book_imbalance_full_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_order_book_imbalance_full_reset(_handle.DangerousGetHandle()); @@ -20650,6 +22946,14 @@ public sealed class OrderBookImbalanceTop1 : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_order_book_imbalance_top1_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_order_book_imbalance_top1_reset(_handle.DangerousGetHandle()); @@ -20718,6 +23022,14 @@ public sealed class OrderBookImbalanceTopN : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_order_book_imbalance_top_n_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_order_book_imbalance_top_n_reset(_handle.DangerousGetHandle()); @@ -20786,6 +23098,14 @@ public sealed class OrderFlowImbalance : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_order_flow_imbalance_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_order_flow_imbalance_reset(_handle.DangerousGetHandle()); @@ -20857,6 +23177,14 @@ public sealed class OuHalfLife : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ou_half_life_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ou_half_life_reset(_handle.DangerousGetHandle()); @@ -20947,6 +23275,14 @@ public sealed class OvernightGap : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_overnight_gap_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_overnight_gap_reset(_handle.DangerousGetHandle()); @@ -21000,6 +23336,14 @@ public sealed class OvernightIntradayReturn : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_overnight_intraday_return_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_overnight_intraday_return_reset(_handle.DangerousGetHandle()); @@ -21066,6 +23410,14 @@ public sealed class PainIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_pain_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_pain_index_reset(_handle.DangerousGetHandle()); @@ -21138,6 +23490,14 @@ public sealed class PairSpreadZScore : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_pair_spread_z_score_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_pair_spread_z_score_reset(_handle.DangerousGetHandle()); @@ -21209,6 +23569,14 @@ public sealed class PairwiseBeta : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_pairwise_beta_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_pairwise_beta_reset(_handle.DangerousGetHandle()); @@ -21301,6 +23669,14 @@ public sealed class ParkinsonVolatility : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_parkinson_volatility_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_parkinson_volatility_reset(_handle.DangerousGetHandle()); @@ -21372,6 +23748,14 @@ public sealed class PearsonCorrelation : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_pearson_correlation_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_pearson_correlation_reset(_handle.DangerousGetHandle()); @@ -21453,6 +23837,14 @@ public sealed class PercentAboveMa : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_percent_above_ma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_percent_above_ma_reset(_handle.DangerousGetHandle()); @@ -21519,6 +23911,14 @@ public sealed class PercentB : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_percent_b_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_percent_b_reset(_handle.DangerousGetHandle()); @@ -21584,6 +23984,14 @@ public sealed class PercentageTrailingStop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_percentage_trailing_stop_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_percentage_trailing_stop_reset(_handle.DangerousGetHandle()); @@ -21631,6 +24039,14 @@ public sealed class PerpetualPremiumIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_perpetual_premium_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_perpetual_premium_index_reset(_handle.DangerousGetHandle()); @@ -21722,6 +24138,14 @@ public sealed class Pgo : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_pgo_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_pgo_reset(_handle.DangerousGetHandle()); @@ -21812,6 +24236,14 @@ public sealed class PiercingDarkCloud : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_piercing_dark_cloud_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_piercing_dark_cloud_reset(_handle.DangerousGetHandle()); @@ -21860,6 +24292,14 @@ public sealed class Pin : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_pin_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_pin_reset(_handle.DangerousGetHandle()); @@ -21952,6 +24392,14 @@ public sealed class PivotReversal : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_pivot_reversal_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_pivot_reversal_reset(_handle.DangerousGetHandle()); @@ -22043,6 +24491,14 @@ public sealed class PlusDi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_plus_di_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_plus_di_reset(_handle.DangerousGetHandle()); @@ -22134,6 +24590,14 @@ public sealed class PlusDm : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_plus_dm_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_plus_dm_reset(_handle.DangerousGetHandle()); @@ -22201,6 +24665,14 @@ public sealed class Pmo : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_pmo_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_pmo_reset(_handle.DangerousGetHandle()); @@ -22254,6 +24726,14 @@ public sealed class PointAndFigureBars : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_point_and_figure_bars_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_point_and_figure_bars_reset(_handle.DangerousGetHandle()); @@ -22321,6 +24801,14 @@ public sealed class PolarizedFractalEfficiency : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_polarized_fractal_efficiency_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_polarized_fractal_efficiency_reset(_handle.DangerousGetHandle()); @@ -22388,6 +24876,14 @@ public sealed class Ppo : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ppo_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ppo_reset(_handle.DangerousGetHandle()); @@ -22456,6 +24952,14 @@ public sealed class PpoHistogram : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ppo_histogram_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ppo_histogram_reset(_handle.DangerousGetHandle()); @@ -22548,6 +25052,14 @@ public sealed class ProfileShape : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_profile_shape_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_profile_shape_reset(_handle.DangerousGetHandle()); @@ -22614,6 +25126,14 @@ public sealed class ProfitFactor : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_profit_factor_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_profit_factor_reset(_handle.DangerousGetHandle()); @@ -22668,6 +25188,14 @@ public sealed class ProjectionBands : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_projection_bands_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_projection_bands_reset(_handle.DangerousGetHandle()); @@ -22759,6 +25287,14 @@ public sealed class ProjectionOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_projection_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_projection_oscillator_reset(_handle.DangerousGetHandle()); @@ -22849,6 +25385,14 @@ public sealed class Psar : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_psar_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_psar_reset(_handle.DangerousGetHandle()); @@ -22939,6 +25483,14 @@ public sealed class Pvi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_pvi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_pvi_reset(_handle.DangerousGetHandle()); @@ -22994,6 +25546,14 @@ public sealed class Qqe : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_qqe_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_qqe_reset(_handle.DangerousGetHandle()); @@ -23085,6 +25645,14 @@ public sealed class Qstick : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_qstick_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_qstick_reset(_handle.DangerousGetHandle()); @@ -23139,6 +25707,14 @@ public sealed class QuartileBands : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_quartile_bands_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_quartile_bands_reset(_handle.DangerousGetHandle()); @@ -23206,6 +25782,14 @@ public sealed class QuotedSpread : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_quoted_spread_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_quoted_spread_reset(_handle.DangerousGetHandle()); @@ -23272,6 +25856,14 @@ public sealed class RSquared : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_r_squared_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_r_squared_reset(_handle.DangerousGetHandle()); @@ -23324,6 +25916,14 @@ public sealed class RangeBars : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_range_bars_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_range_bars_reset(_handle.DangerousGetHandle()); @@ -23372,6 +25972,14 @@ public sealed class RealizedSpread : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_realized_spread_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_realized_spread_reset(_handle.DangerousGetHandle()); @@ -23438,6 +26046,14 @@ public sealed class RealizedVolatility : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_realized_volatility_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_realized_volatility_reset(_handle.DangerousGetHandle()); @@ -23503,6 +26119,14 @@ public sealed class RecoveryFactor : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_recovery_factor_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_recovery_factor_reset(_handle.DangerousGetHandle()); @@ -23593,6 +26217,14 @@ public sealed class RectangleRange : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rectangle_range_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rectangle_range_reset(_handle.DangerousGetHandle()); @@ -23659,6 +26291,14 @@ public sealed class Reflex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_reflex_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_reflex_reset(_handle.DangerousGetHandle()); @@ -23726,6 +26366,14 @@ public sealed class RegimeLabel : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_regime_label_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_regime_label_reset(_handle.DangerousGetHandle()); @@ -23781,6 +26429,14 @@ public sealed class RelativeStrengthAB : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_relative_strength_ab_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_relative_strength_ab_reset(_handle.DangerousGetHandle()); @@ -23833,6 +26489,14 @@ public sealed class RenkoBars : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_renko_bars_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_renko_bars_reset(_handle.DangerousGetHandle()); @@ -23898,6 +26562,14 @@ public sealed class RenkoTrailingStop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_renko_trailing_stop_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_renko_trailing_stop_reset(_handle.DangerousGetHandle()); @@ -23988,6 +26660,14 @@ public sealed class RickshawMan : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rickshaw_man_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rickshaw_man_reset(_handle.DangerousGetHandle()); @@ -24078,6 +26758,14 @@ public sealed class RisingThreeMethods : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rising_three_methods_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rising_three_methods_reset(_handle.DangerousGetHandle()); @@ -24145,6 +26833,14 @@ public sealed class Rmi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rmi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rmi_reset(_handle.DangerousGetHandle()); @@ -24211,6 +26907,14 @@ public sealed class Roc : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_roc_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_roc_reset(_handle.DangerousGetHandle()); @@ -24277,6 +26981,14 @@ public sealed class Rocp : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rocp_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rocp_reset(_handle.DangerousGetHandle()); @@ -24343,6 +27055,14 @@ public sealed class Rocr : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rocr_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rocr_reset(_handle.DangerousGetHandle()); @@ -24409,6 +27129,14 @@ public sealed class Rocr100 : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rocr100_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rocr100_reset(_handle.DangerousGetHandle()); @@ -24501,6 +27229,14 @@ public sealed class RogersSatchellVolatility : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rogers_satchell_volatility_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rogers_satchell_volatility_reset(_handle.DangerousGetHandle()); @@ -24549,6 +27285,14 @@ public sealed class RollMeasure : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_roll_measure_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_roll_measure_reset(_handle.DangerousGetHandle()); @@ -24620,6 +27364,14 @@ public sealed class RollingCorrelation : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rolling_correlation_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rolling_correlation_reset(_handle.DangerousGetHandle()); @@ -24691,6 +27443,14 @@ public sealed class RollingCovariance : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rolling_covariance_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rolling_covariance_reset(_handle.DangerousGetHandle()); @@ -24757,6 +27517,14 @@ public sealed class RollingIqr : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rolling_iqr_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rolling_iqr_reset(_handle.DangerousGetHandle()); @@ -24823,6 +27591,14 @@ public sealed class RollingMinMaxScaler : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rolling_min_max_scaler_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rolling_min_max_scaler_reset(_handle.DangerousGetHandle()); @@ -24889,6 +27665,14 @@ public sealed class RollingPercentileRank : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rolling_percentile_rank_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rolling_percentile_rank_reset(_handle.DangerousGetHandle()); @@ -24955,6 +27739,14 @@ public sealed class RollingQuantile : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rolling_quantile_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rolling_quantile_reset(_handle.DangerousGetHandle()); @@ -25046,6 +27838,14 @@ public sealed class RollingVwap : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rolling_vwap_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rolling_vwap_reset(_handle.DangerousGetHandle()); @@ -25113,6 +27913,14 @@ public sealed class RoofingFilter : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_roofing_filter_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_roofing_filter_reset(_handle.DangerousGetHandle()); @@ -25179,6 +27987,14 @@ public sealed class Rsi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rsi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rsi_reset(_handle.DangerousGetHandle()); @@ -25245,6 +28061,14 @@ public sealed class Rsx : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rsx_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rsx_reset(_handle.DangerousGetHandle()); @@ -25298,6 +28122,14 @@ public sealed class RunBars : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_run_bars_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_run_bars_reset(_handle.DangerousGetHandle()); @@ -25389,6 +28221,14 @@ public sealed class Rvi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rvi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rvi_reset(_handle.DangerousGetHandle()); @@ -25455,6 +28295,14 @@ public sealed class RviVolatility : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rvi_volatility_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rvi_volatility_reset(_handle.DangerousGetHandle()); @@ -25509,6 +28357,14 @@ public sealed class Rwi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_rwi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_rwi_reset(_handle.DangerousGetHandle()); @@ -25576,6 +28432,14 @@ public sealed class SampleEntropy : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_sample_entropy_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_sample_entropy_reset(_handle.DangerousGetHandle()); @@ -25666,6 +28530,14 @@ public sealed class SarExt : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_sar_ext_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_sar_ext_reset(_handle.DangerousGetHandle()); @@ -25756,6 +28628,14 @@ public sealed class SeasonalZScore : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_seasonal_z_score_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_seasonal_z_score_reset(_handle.DangerousGetHandle()); @@ -25846,6 +28726,14 @@ public sealed class SeparatingLines : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_separating_lines_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_separating_lines_reset(_handle.DangerousGetHandle()); @@ -25899,6 +28787,14 @@ public sealed class SessionHighLow : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_session_high_low_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_session_high_low_reset(_handle.DangerousGetHandle()); @@ -25952,6 +28848,14 @@ public sealed class SessionRange : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_session_range_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_session_range_reset(_handle.DangerousGetHandle()); @@ -26042,6 +28946,14 @@ public sealed class SessionVwap : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_session_vwap_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_session_vwap_reset(_handle.DangerousGetHandle()); @@ -26109,6 +29021,14 @@ public sealed class ShannonEntropy : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_shannon_entropy_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_shannon_entropy_reset(_handle.DangerousGetHandle()); @@ -26199,6 +29119,14 @@ public sealed class Shark : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_shark_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_shark_reset(_handle.DangerousGetHandle()); @@ -26265,6 +29193,14 @@ public sealed class SharpeRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_sharpe_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_sharpe_ratio_reset(_handle.DangerousGetHandle()); @@ -26355,6 +29291,14 @@ public sealed class ShootingStar : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_shooting_star_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_shooting_star_reset(_handle.DangerousGetHandle()); @@ -26445,6 +29389,14 @@ public sealed class ShortLine : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_short_line_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_short_line_reset(_handle.DangerousGetHandle()); @@ -26492,6 +29444,14 @@ public sealed class SignedVolume : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_signed_volume_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_signed_volume_reset(_handle.DangerousGetHandle()); @@ -26557,6 +29517,14 @@ public sealed class SineWave : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_sine_wave_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_sine_wave_reset(_handle.DangerousGetHandle()); @@ -26623,6 +29591,14 @@ public sealed class SineWeightedMa : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_sine_weighted_ma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_sine_weighted_ma_reset(_handle.DangerousGetHandle()); @@ -26715,6 +29691,14 @@ public sealed class SinglePrints : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_single_prints_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_single_prints_reset(_handle.DangerousGetHandle()); @@ -26781,6 +29765,14 @@ public sealed class Skewness : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_skewness_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_skewness_reset(_handle.DangerousGetHandle()); @@ -26847,6 +29839,14 @@ public sealed class Sma : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_sma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_sma_reset(_handle.DangerousGetHandle()); @@ -26940,6 +29940,14 @@ public sealed class Smi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_smi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_smi_reset(_handle.DangerousGetHandle()); @@ -27006,6 +30014,14 @@ public sealed class Smma : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_smma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_smma_reset(_handle.DangerousGetHandle()); @@ -27060,6 +30076,14 @@ public sealed class SmoothedHeikinAshi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_smoothed_heikin_ashi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_smoothed_heikin_ashi_reset(_handle.DangerousGetHandle()); @@ -27126,6 +30150,14 @@ public sealed class SortinoRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_sortino_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_sortino_ratio_reset(_handle.DangerousGetHandle()); @@ -27197,6 +30229,14 @@ public sealed class SpearmanCorrelation : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_spearman_correlation_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_spearman_correlation_reset(_handle.DangerousGetHandle()); @@ -27287,6 +30327,14 @@ public sealed class SpinningTop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_spinning_top_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_spinning_top_reset(_handle.DangerousGetHandle()); @@ -27358,6 +30406,14 @@ public sealed class SpreadAr1Coefficient : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_spread_ar1_coefficient_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_spread_ar1_coefficient_reset(_handle.DangerousGetHandle()); @@ -27412,6 +30468,14 @@ public sealed class SpreadBollingerBands : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_spread_bollinger_bands_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_spread_bollinger_bands_reset(_handle.DangerousGetHandle()); @@ -27483,6 +30547,14 @@ public sealed class SpreadHurst : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_spread_hurst_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_spread_hurst_reset(_handle.DangerousGetHandle()); @@ -27573,6 +30645,14 @@ public sealed class StalledPattern : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_stalled_pattern_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_stalled_pattern_reset(_handle.DangerousGetHandle()); @@ -27639,6 +30719,14 @@ public sealed class StandardError : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_standard_error_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_standard_error_reset(_handle.DangerousGetHandle()); @@ -27693,6 +30781,14 @@ public sealed class StandardErrorBands : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_standard_error_bands_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_standard_error_bands_reset(_handle.DangerousGetHandle()); @@ -27748,6 +30844,14 @@ public sealed class StarcBands : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_starc_bands_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_starc_bands_reset(_handle.DangerousGetHandle()); @@ -27816,6 +30920,14 @@ public sealed class Stc : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_stc_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_stc_reset(_handle.DangerousGetHandle()); @@ -27882,6 +30994,14 @@ public sealed class StdDev : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_std_dev_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_std_dev_reset(_handle.DangerousGetHandle()); @@ -27947,6 +31067,14 @@ public sealed class StepTrailingStop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_step_trailing_stop_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_step_trailing_stop_reset(_handle.DangerousGetHandle()); @@ -28013,6 +31141,14 @@ public sealed class SterlingRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_sterling_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_sterling_ratio_reset(_handle.DangerousGetHandle()); @@ -28103,6 +31239,14 @@ public sealed class StickSandwich : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_stick_sandwich_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_stick_sandwich_reset(_handle.DangerousGetHandle()); @@ -28170,6 +31314,14 @@ public sealed class StochRsi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_stoch_rsi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_stoch_rsi_reset(_handle.DangerousGetHandle()); @@ -28225,6 +31377,14 @@ public sealed class Stochastic : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_stochastic_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_stochastic_reset(_handle.DangerousGetHandle()); @@ -28316,6 +31476,14 @@ public sealed class StochasticCci : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_stochastic_cci_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_stochastic_cci_reset(_handle.DangerousGetHandle()); @@ -28382,6 +31550,14 @@ public sealed class SuperSmoother : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_super_smoother_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_super_smoother_reset(_handle.DangerousGetHandle()); @@ -28436,6 +31612,14 @@ public sealed class SuperTrend : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_super_trend_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_super_trend_reset(_handle.DangerousGetHandle()); @@ -28502,6 +31686,14 @@ public sealed class T3 : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_t3_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_t3_reset(_handle.DangerousGetHandle()); @@ -28568,6 +31760,14 @@ public sealed class TailRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tail_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tail_ratio_reset(_handle.DangerousGetHandle()); @@ -28615,6 +31815,14 @@ public sealed class TakerBuySellRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_taker_buy_sell_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_taker_buy_sell_ratio_reset(_handle.DangerousGetHandle()); @@ -28705,6 +31913,14 @@ public sealed class Takuri : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_takuri_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_takuri_reset(_handle.DangerousGetHandle()); @@ -28795,6 +32011,14 @@ public sealed class TasukiGap : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tasuki_gap_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tasuki_gap_reset(_handle.DangerousGetHandle()); @@ -28885,6 +32109,14 @@ public sealed class TdCamouflage : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_camouflage_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_camouflage_reset(_handle.DangerousGetHandle()); @@ -28975,6 +32207,14 @@ public sealed class TdClop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_clop_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_clop_reset(_handle.DangerousGetHandle()); @@ -29065,6 +32305,14 @@ public sealed class TdClopwin : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_clopwin_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_clopwin_reset(_handle.DangerousGetHandle()); @@ -29159,6 +32407,14 @@ public sealed class TdCombo : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_combo_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_combo_reset(_handle.DangerousGetHandle()); @@ -29253,6 +32509,14 @@ public sealed class TdCountdown : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_countdown_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_countdown_reset(_handle.DangerousGetHandle()); @@ -29344,6 +32608,14 @@ public sealed class TdDWave : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_d_wave_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_d_wave_reset(_handle.DangerousGetHandle()); @@ -29435,6 +32707,14 @@ public sealed class TdDeMarker : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_de_marker_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_de_marker_reset(_handle.DangerousGetHandle()); @@ -29525,6 +32805,14 @@ public sealed class TdDifferential : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_differential_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_differential_reset(_handle.DangerousGetHandle()); @@ -29580,6 +32868,14 @@ public sealed class TdLines : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_lines_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_lines_reset(_handle.DangerousGetHandle()); @@ -29635,6 +32931,14 @@ public sealed class TdMovingAverage : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_moving_average_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_moving_average_reset(_handle.DangerousGetHandle()); @@ -29725,6 +33029,14 @@ public sealed class TdOpen : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_open_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_open_reset(_handle.DangerousGetHandle()); @@ -29816,6 +33128,14 @@ public sealed class TdPressure : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_pressure_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_pressure_reset(_handle.DangerousGetHandle()); @@ -29906,6 +33226,14 @@ public sealed class TdPropulsion : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_propulsion_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_propulsion_reset(_handle.DangerousGetHandle()); @@ -29959,6 +33287,14 @@ public sealed class TdRangeProjection : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_range_projection_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_range_projection_reset(_handle.DangerousGetHandle()); @@ -30050,6 +33386,14 @@ public sealed class TdRei : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_rei_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_rei_reset(_handle.DangerousGetHandle()); @@ -30105,6 +33449,14 @@ public sealed class TdRiskLevel : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_risk_level_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_risk_level_reset(_handle.DangerousGetHandle()); @@ -30162,6 +33514,14 @@ public sealed class TdSequential : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_sequential_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_sequential_reset(_handle.DangerousGetHandle()); @@ -30254,6 +33614,14 @@ public sealed class TdSetup : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_setup_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_setup_reset(_handle.DangerousGetHandle()); @@ -30344,6 +33712,14 @@ public sealed class TdTrap : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_td_trap_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_td_trap_reset(_handle.DangerousGetHandle()); @@ -30410,6 +33786,14 @@ public sealed class Tema : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tema_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tema_reset(_handle.DangerousGetHandle()); @@ -30457,6 +33841,14 @@ public sealed class TermStructureBasis : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_term_structure_basis_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_term_structure_basis_reset(_handle.DangerousGetHandle()); @@ -30547,6 +33939,14 @@ public sealed class ThreeDrives : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_three_drives_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_three_drives_reset(_handle.DangerousGetHandle()); @@ -30637,6 +34037,14 @@ public sealed class ThreeInside : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_three_inside_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_three_inside_reset(_handle.DangerousGetHandle()); @@ -30728,6 +34136,14 @@ public sealed class ThreeLineBreak : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_three_line_break_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_three_line_break_reset(_handle.DangerousGetHandle()); @@ -30781,6 +34197,14 @@ public sealed class ThreeLineBreakBars : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_three_line_break_bars_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_three_line_break_bars_reset(_handle.DangerousGetHandle()); @@ -30871,6 +34295,14 @@ public sealed class ThreeLineStrike : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_three_line_strike_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_three_line_strike_reset(_handle.DangerousGetHandle()); @@ -30961,6 +34393,14 @@ public sealed class ThreeOutside : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_three_outside_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_three_outside_reset(_handle.DangerousGetHandle()); @@ -31051,6 +34491,14 @@ public sealed class ThreeSoldiersOrCrows : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_three_soldiers_or_crows_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_three_soldiers_or_crows_reset(_handle.DangerousGetHandle()); @@ -31141,6 +34589,14 @@ public sealed class ThreeStarsInSouth : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_three_stars_in_south_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_three_stars_in_south_reset(_handle.DangerousGetHandle()); @@ -31231,6 +34687,14 @@ public sealed class Thrusting : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_thrusting_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_thrusting_reset(_handle.DangerousGetHandle()); @@ -31284,6 +34748,14 @@ public sealed class TickBars : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tick_bars_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tick_bars_reset(_handle.DangerousGetHandle()); @@ -31365,6 +34837,14 @@ public sealed class TickIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tick_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tick_index_reset(_handle.DangerousGetHandle()); @@ -31432,6 +34912,14 @@ public sealed class Tii : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tii_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tii_reset(_handle.DangerousGetHandle()); @@ -31523,6 +35011,14 @@ public sealed class TimeBasedStop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_time_based_stop_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_time_based_stop_reset(_handle.DangerousGetHandle()); @@ -31592,6 +35088,14 @@ public sealed class TimeOfDayReturnProfile : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_time_of_day_return_profile_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_time_of_day_return_profile_reset(_handle.DangerousGetHandle()); @@ -31682,6 +35186,14 @@ public sealed class TowerTopBottom : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tower_top_bottom_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tower_top_bottom_reset(_handle.DangerousGetHandle()); @@ -31753,6 +35265,14 @@ public sealed class TpoProfile : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tpo_profile_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tpo_profile_reset(_handle.DangerousGetHandle()); @@ -31801,6 +35321,14 @@ public sealed class TradeImbalance : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_trade_imbalance_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_trade_imbalance_reset(_handle.DangerousGetHandle()); @@ -31849,6 +35377,14 @@ public sealed class TradeSignAutocorrelation : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_trade_sign_autocorrelation_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_trade_sign_autocorrelation_reset(_handle.DangerousGetHandle()); @@ -31939,6 +35475,14 @@ public sealed class TradeVolumeIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_trade_volume_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_trade_volume_index_reset(_handle.DangerousGetHandle()); @@ -32005,6 +35549,14 @@ public sealed class TrendLabel : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_trend_label_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_trend_label_reset(_handle.DangerousGetHandle()); @@ -32071,6 +35623,14 @@ public sealed class TrendStrengthIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_trend_strength_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_trend_strength_index_reset(_handle.DangerousGetHandle()); @@ -32137,6 +35697,14 @@ public sealed class Trendflex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_trendflex_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_trendflex_reset(_handle.DangerousGetHandle()); @@ -32208,6 +35776,14 @@ public sealed class TreynorRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_treynor_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_treynor_ratio_reset(_handle.DangerousGetHandle()); @@ -32298,6 +35874,14 @@ public sealed class Triangle : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_triangle_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_triangle_reset(_handle.DangerousGetHandle()); @@ -32364,6 +35948,14 @@ public sealed class Trima : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_trima_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_trima_reset(_handle.DangerousGetHandle()); @@ -32445,6 +36037,14 @@ public sealed class Trin : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_trin_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_trin_reset(_handle.DangerousGetHandle()); @@ -32535,6 +36135,14 @@ public sealed class TripleTopBottom : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_triple_top_bottom_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_triple_top_bottom_reset(_handle.DangerousGetHandle()); @@ -32625,6 +36233,14 @@ public sealed class Tristar : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tristar_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tristar_reset(_handle.DangerousGetHandle()); @@ -32691,6 +36307,14 @@ public sealed class Trix : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_trix_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_trix_reset(_handle.DangerousGetHandle()); @@ -32781,6 +36405,14 @@ public sealed class TrueRange : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_true_range_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_true_range_reset(_handle.DangerousGetHandle()); @@ -32847,6 +36479,14 @@ public sealed class Tsf : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tsf_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tsf_reset(_handle.DangerousGetHandle()); @@ -32913,6 +36553,14 @@ public sealed class TsfOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tsf_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tsf_oscillator_reset(_handle.DangerousGetHandle()); @@ -32980,6 +36628,14 @@ public sealed class Tsi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tsi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tsi_reset(_handle.DangerousGetHandle()); @@ -33071,6 +36727,14 @@ public sealed class Tsv : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tsv_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tsv_reset(_handle.DangerousGetHandle()); @@ -33125,6 +36789,14 @@ public sealed class TtmSqueeze : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ttm_squeeze_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ttm_squeeze_reset(_handle.DangerousGetHandle()); @@ -33216,6 +36888,14 @@ public sealed class TtmTrend : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ttm_trend_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ttm_trend_reset(_handle.DangerousGetHandle()); @@ -33306,6 +36986,14 @@ public sealed class TurnOfMonth : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_turn_of_month_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_turn_of_month_reset(_handle.DangerousGetHandle()); @@ -33396,6 +37084,14 @@ public sealed class Tweezer : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_tweezer_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_tweezer_reset(_handle.DangerousGetHandle()); @@ -33487,6 +37183,14 @@ public sealed class TwiggsMoneyFlow : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_twiggs_money_flow_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_twiggs_money_flow_reset(_handle.DangerousGetHandle()); @@ -33577,6 +37281,14 @@ public sealed class TwoCrows : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_two_crows_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_two_crows_reset(_handle.DangerousGetHandle()); @@ -33667,6 +37379,14 @@ public sealed class TypicalPrice : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_typical_price_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_typical_price_reset(_handle.DangerousGetHandle()); @@ -33733,6 +37453,14 @@ public sealed class UlcerIndex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ulcer_index_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ulcer_index_reset(_handle.DangerousGetHandle()); @@ -33826,6 +37554,14 @@ public sealed class UltimateOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_ultimate_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_ultimate_oscillator_reset(_handle.DangerousGetHandle()); @@ -33916,6 +37652,14 @@ public sealed class UniqueThreeRiver : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_unique_three_river_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_unique_three_river_reset(_handle.DangerousGetHandle()); @@ -33982,6 +37726,14 @@ public sealed class UniversalOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_universal_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_universal_oscillator_reset(_handle.DangerousGetHandle()); @@ -34063,6 +37815,14 @@ public sealed class UpDownVolumeRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_up_down_volume_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_up_down_volume_ratio_reset(_handle.DangerousGetHandle()); @@ -34153,6 +37913,14 @@ public sealed class UpsideGapThreeMethods : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_upside_gap_three_methods_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_upside_gap_three_methods_reset(_handle.DangerousGetHandle()); @@ -34243,6 +38011,14 @@ public sealed class UpsideGapTwoCrows : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_upside_gap_two_crows_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_upside_gap_two_crows_reset(_handle.DangerousGetHandle()); @@ -34309,6 +38085,14 @@ public sealed class UpsidePotentialRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_upside_potential_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_upside_potential_ratio_reset(_handle.DangerousGetHandle()); @@ -34364,6 +38148,14 @@ public sealed class ValueArea : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_value_area_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_value_area_reset(_handle.DangerousGetHandle()); @@ -34430,6 +38222,14 @@ public sealed class ValueAtRisk : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_value_at_risk_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_value_at_risk_reset(_handle.DangerousGetHandle()); @@ -34496,6 +38296,14 @@ public sealed class Variance : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_variance_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_variance_reset(_handle.DangerousGetHandle()); @@ -34568,6 +38376,14 @@ public sealed class VarianceRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_variance_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_variance_ratio_reset(_handle.DangerousGetHandle()); @@ -34634,6 +38450,14 @@ public sealed class VerticalHorizontalFilter : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_vertical_horizontal_filter_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_vertical_horizontal_filter_reset(_handle.DangerousGetHandle()); @@ -34701,6 +38525,14 @@ public sealed class Vidya : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_vidya_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_vidya_reset(_handle.DangerousGetHandle()); @@ -34756,6 +38588,14 @@ public sealed class VolatilityCone : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_volatility_cone_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_volatility_cone_reset(_handle.DangerousGetHandle()); @@ -34823,6 +38663,14 @@ public sealed class VolatilityOfVolatility : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_volatility_of_volatility_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_volatility_of_volatility_reset(_handle.DangerousGetHandle()); @@ -34914,6 +38762,14 @@ public sealed class VolatilityRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_volatility_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_volatility_ratio_reset(_handle.DangerousGetHandle()); @@ -35005,6 +38861,14 @@ public sealed class VoltyStop : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_volty_stop_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_volty_stop_reset(_handle.DangerousGetHandle()); @@ -35057,6 +38921,14 @@ public sealed class VolumeBars : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_volume_bars_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_volume_bars_reset(_handle.DangerousGetHandle()); @@ -35126,6 +38998,14 @@ public sealed class VolumeByTimeProfile : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_volume_by_time_profile_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_volume_by_time_profile_reset(_handle.DangerousGetHandle()); @@ -35218,6 +39098,14 @@ public sealed class VolumeOscillator : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_volume_oscillator_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_volume_oscillator_reset(_handle.DangerousGetHandle()); @@ -35308,6 +39196,14 @@ public sealed class VolumePriceTrend : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_volume_price_trend_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_volume_price_trend_reset(_handle.DangerousGetHandle()); @@ -35379,6 +39275,14 @@ public sealed class VolumeProfile : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_volume_profile_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_volume_profile_reset(_handle.DangerousGetHandle()); @@ -35470,6 +39374,14 @@ public sealed class VolumeRsi : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_volume_rsi_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_volume_rsi_reset(_handle.DangerousGetHandle()); @@ -35526,6 +39438,14 @@ public sealed class VolumeWeightedMacd : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_volume_weighted_macd_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_volume_weighted_macd_reset(_handle.DangerousGetHandle()); @@ -35580,6 +39500,14 @@ public sealed class VolumeWeightedSr : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_volume_weighted_sr_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_volume_weighted_sr_reset(_handle.DangerousGetHandle()); @@ -35634,6 +39562,14 @@ public sealed class Vortex : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_vortex_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_vortex_reset(_handle.DangerousGetHandle()); @@ -35682,6 +39618,14 @@ public sealed class Vpin : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_vpin_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_vpin_reset(_handle.DangerousGetHandle()); @@ -35772,6 +39716,14 @@ public sealed class Vwap : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_vwap_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_vwap_reset(_handle.DangerousGetHandle()); @@ -35825,6 +39777,14 @@ public sealed class VwapStdDevBands : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_vwap_std_dev_bands_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_vwap_std_dev_bands_reset(_handle.DangerousGetHandle()); @@ -35916,6 +39876,14 @@ public sealed class Vwma : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_vwma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_vwma_reset(_handle.DangerousGetHandle()); @@ -36007,6 +39975,14 @@ public sealed class Vzo : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_vzo_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_vzo_reset(_handle.DangerousGetHandle()); @@ -36097,6 +40073,14 @@ public sealed class Wad : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_wad_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_wad_reset(_handle.DangerousGetHandle()); @@ -36164,6 +40148,14 @@ public sealed class WavePm : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_wave_pm_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_wave_pm_reset(_handle.DangerousGetHandle()); @@ -36220,6 +40212,14 @@ public sealed class WaveTrend : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_wave_trend_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_wave_trend_reset(_handle.DangerousGetHandle()); @@ -36310,6 +40310,14 @@ public sealed class Wedge : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_wedge_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_wedge_reset(_handle.DangerousGetHandle()); @@ -36400,6 +40408,14 @@ public sealed class WeightedClose : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_weighted_close_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_weighted_close_reset(_handle.DangerousGetHandle()); @@ -36490,6 +40506,14 @@ public sealed class WickRatio : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_wick_ratio_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_wick_ratio_reset(_handle.DangerousGetHandle()); @@ -36543,6 +40567,14 @@ public sealed class WilliamsFractals : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_williams_fractals_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_williams_fractals_reset(_handle.DangerousGetHandle()); @@ -36634,6 +40666,14 @@ public sealed class WilliamsR : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_williams_r_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_williams_r_reset(_handle.DangerousGetHandle()); @@ -36700,6 +40740,14 @@ public sealed class WinRate : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_win_rate_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_win_rate_reset(_handle.DangerousGetHandle()); @@ -36766,6 +40814,14 @@ public sealed class Wma : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_wma_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_wma_reset(_handle.DangerousGetHandle()); @@ -36819,6 +40875,14 @@ public sealed class WoodiePivots : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_woodie_pivots_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_woodie_pivots_reset(_handle.DangerousGetHandle()); @@ -36911,6 +40975,14 @@ public sealed class YangZhangVolatility : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_yang_zhang_volatility_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_yang_zhang_volatility_reset(_handle.DangerousGetHandle()); @@ -37002,6 +41074,14 @@ public sealed class YoyoExit : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_yoyo_exit_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_yoyo_exit_reset(_handle.DangerousGetHandle()); @@ -37068,6 +41148,14 @@ public sealed class ZScore : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_z_score_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_z_score_reset(_handle.DangerousGetHandle()); @@ -37124,6 +41212,14 @@ public sealed class ZeroLagMacd : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_zero_lag_macd_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_zero_lag_macd_reset(_handle.DangerousGetHandle()); @@ -37177,6 +41273,14 @@ public sealed class ZigZag : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_zig_zag_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_zig_zag_reset(_handle.DangerousGetHandle()); @@ -37243,6 +41347,14 @@ public sealed class Zlema : IDisposable return result; } + /// The indicator's canonical name. + public string Name() + { + var ptr = NativeMethods.wickra_zlema_name(_handle.DangerousGetHandle()); + GC.KeepAlive(_handle); + return System.Runtime.InteropServices.Marshal.PtrToStringUTF8(ptr) ?? string.Empty; + } + public void Reset() { NativeMethods.wickra_zlema_reset(_handle.DangerousGetHandle()); diff --git a/bindings/csharp/Wickra/Generated/NativeMethods.g.cs b/bindings/csharp/Wickra/Generated/NativeMethods.g.cs index c7651a03..6503494e 100644 --- a/bindings/csharp/Wickra/Generated/NativeMethods.g.cs +++ b/bindings/csharp/Wickra/Generated/NativeMethods.g.cs @@ -22,6 +22,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_adaptive_cycle_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_adaptive_cycle_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_adaptive_cycle_reset(nint handle); @@ -44,6 +47,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_adaptive_laguerre_filter_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_adaptive_laguerre_filter_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_adaptive_laguerre_filter_reset(nint handle); @@ -66,6 +72,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_adaptive_rsi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_adaptive_rsi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_adaptive_rsi_reset(nint handle); @@ -88,6 +97,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_alma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_alma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_alma_reset(nint handle); @@ -110,6 +122,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_anchored_rsi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_anchored_rsi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_anchored_rsi_reset(nint handle); @@ -132,6 +147,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_apo_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_apo_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_apo_reset(nint handle); @@ -154,6 +172,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_autocorrelation_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_autocorrelation_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_autocorrelation_reset(nint handle); @@ -176,6 +197,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_autocorrelation_periodogram_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_autocorrelation_periodogram_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_autocorrelation_periodogram_reset(nint handle); @@ -198,6 +222,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_average_drawdown_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_average_drawdown_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_average_drawdown_reset(nint handle); @@ -220,6 +247,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_bandpass_filter_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_bandpass_filter_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_bandpass_filter_reset(nint handle); @@ -242,6 +272,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_bipower_variation_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_bipower_variation_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_bipower_variation_reset(nint handle); @@ -264,6 +297,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_bollinger_bandwidth_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_bollinger_bandwidth_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_bollinger_bandwidth_reset(nint handle); @@ -286,6 +322,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_burke_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_burke_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_burke_ratio_reset(nint handle); @@ -308,6 +347,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_calmar_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_calmar_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_calmar_ratio_reset(nint handle); @@ -330,6 +372,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_center_of_gravity_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_center_of_gravity_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_center_of_gravity_reset(nint handle); @@ -352,6 +397,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_cfo_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_cfo_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_cfo_reset(nint handle); @@ -374,6 +422,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_cmo_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_cmo_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_cmo_reset(nint handle); @@ -396,6 +447,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_coefficient_of_variation_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_coefficient_of_variation_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_coefficient_of_variation_reset(nint handle); @@ -418,6 +472,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_common_sense_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_common_sense_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_common_sense_ratio_reset(nint handle); @@ -440,6 +497,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_conditional_value_at_risk_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_conditional_value_at_risk_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_conditional_value_at_risk_reset(nint handle); @@ -462,6 +522,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_connors_rsi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_connors_rsi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_connors_rsi_reset(nint handle); @@ -484,6 +547,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_coppock_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_coppock_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_coppock_reset(nint handle); @@ -506,6 +572,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_correlation_trend_indicator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_correlation_trend_indicator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_correlation_trend_indicator_reset(nint handle); @@ -528,6 +597,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_cybernetic_cycle_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_cybernetic_cycle_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_cybernetic_cycle_reset(nint handle); @@ -550,6 +622,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_decycler_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_decycler_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_decycler_reset(nint handle); @@ -572,6 +647,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_decycler_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_decycler_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_decycler_oscillator_reset(nint handle); @@ -594,6 +672,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_dema_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_dema_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_dema_reset(nint handle); @@ -616,6 +697,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_derivative_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_derivative_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_derivative_oscillator_reset(nint handle); @@ -638,6 +722,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_detrended_std_dev_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_detrended_std_dev_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_detrended_std_dev_reset(nint handle); @@ -660,6 +747,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_disparity_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_disparity_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_disparity_index_reset(nint handle); @@ -682,6 +772,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_dpo_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_dpo_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_dpo_reset(nint handle); @@ -704,6 +797,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_drawdown_duration_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_drawdown_duration_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_drawdown_duration_reset(nint handle); @@ -726,6 +822,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_dynamic_momentum_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_dynamic_momentum_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_dynamic_momentum_index_reset(nint handle); @@ -748,6 +847,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ehlers_stochastic_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ehlers_stochastic_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ehlers_stochastic_reset(nint handle); @@ -770,6 +872,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ehma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ehma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ehma_reset(nint handle); @@ -792,6 +897,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_elder_impulse_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_elder_impulse_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_elder_impulse_reset(nint handle); @@ -814,6 +922,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ema_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ema_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ema_reset(nint handle); @@ -836,6 +947,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_empirical_mode_decomposition_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_empirical_mode_decomposition_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_empirical_mode_decomposition_reset(nint handle); @@ -858,6 +972,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_even_better_sinewave_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_even_better_sinewave_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_even_better_sinewave_reset(nint handle); @@ -880,6 +997,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ewma_volatility_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ewma_volatility_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ewma_volatility_reset(nint handle); @@ -902,6 +1022,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_expectancy_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_expectancy_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_expectancy_reset(nint handle); @@ -924,6 +1047,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fama_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fama_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fama_reset(nint handle); @@ -946,6 +1072,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fisher_rsi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fisher_rsi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fisher_rsi_reset(nint handle); @@ -968,6 +1097,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fisher_transform_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fisher_transform_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fisher_transform_reset(nint handle); @@ -990,6 +1122,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_frama_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_frama_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_frama_reset(nint handle); @@ -1012,6 +1147,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_gain_loss_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_gain_loss_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_gain_loss_ratio_reset(nint handle); @@ -1034,6 +1172,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_gain_to_pain_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_gain_to_pain_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_gain_to_pain_ratio_reset(nint handle); @@ -1056,6 +1197,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_garch11_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_garch11_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_garch11_reset(nint handle); @@ -1078,6 +1222,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_generalized_dema_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_generalized_dema_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_generalized_dema_reset(nint handle); @@ -1100,6 +1247,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_geometric_ma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_geometric_ma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_geometric_ma_reset(nint handle); @@ -1122,6 +1272,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_highpass_filter_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_highpass_filter_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_highpass_filter_reset(nint handle); @@ -1144,6 +1297,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_hilbert_dominant_cycle_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_hilbert_dominant_cycle_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_hilbert_dominant_cycle_reset(nint handle); @@ -1166,6 +1322,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_historical_volatility_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_historical_volatility_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_historical_volatility_reset(nint handle); @@ -1188,6 +1347,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_hma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_hma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_hma_reset(nint handle); @@ -1210,6 +1372,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_holt_winters_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_holt_winters_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_holt_winters_reset(nint handle); @@ -1232,6 +1397,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ht_dc_phase_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ht_dc_phase_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ht_dc_phase_reset(nint handle); @@ -1254,6 +1422,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ht_trend_mode_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ht_trend_mode_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ht_trend_mode_reset(nint handle); @@ -1276,6 +1447,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_hurst_exponent_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_hurst_exponent_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_hurst_exponent_reset(nint handle); @@ -1298,6 +1472,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_instantaneous_trendline_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_instantaneous_trendline_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_instantaneous_trendline_reset(nint handle); @@ -1320,6 +1497,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_inverse_fisher_transform_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_inverse_fisher_transform_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_inverse_fisher_transform_reset(nint handle); @@ -1342,6 +1522,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_jarque_bera_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_jarque_bera_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_jarque_bera_reset(nint handle); @@ -1364,6 +1547,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_jma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_jma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_jma_reset(nint handle); @@ -1386,6 +1572,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_jump_indicator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_jump_indicator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_jump_indicator_reset(nint handle); @@ -1408,6 +1597,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_k_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_k_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_k_ratio_reset(nint handle); @@ -1430,6 +1622,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_kama_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kama_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kama_reset(nint handle); @@ -1452,6 +1647,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_kelly_criterion_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kelly_criterion_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kelly_criterion_reset(nint handle); @@ -1474,6 +1672,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_kurtosis_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kurtosis_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kurtosis_reset(nint handle); @@ -1496,6 +1697,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_laguerre_rsi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_laguerre_rsi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_laguerre_rsi_reset(nint handle); @@ -1518,6 +1722,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_linear_regression_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_linear_regression_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_linear_regression_reset(nint handle); @@ -1540,6 +1747,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_lin_reg_angle_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_lin_reg_angle_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_lin_reg_angle_reset(nint handle); @@ -1562,6 +1772,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_lin_reg_intercept_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_lin_reg_intercept_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_lin_reg_intercept_reset(nint handle); @@ -1584,6 +1797,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_lin_reg_slope_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_lin_reg_slope_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_lin_reg_slope_reset(nint handle); @@ -1606,6 +1822,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_log_return_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_log_return_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_log_return_reset(nint handle); @@ -1628,6 +1847,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_m2_measure_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_m2_measure_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_m2_measure_reset(nint handle); @@ -1650,6 +1872,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_macd_histogram_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_macd_histogram_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_macd_histogram_reset(nint handle); @@ -1672,6 +1897,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_martin_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_martin_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_martin_ratio_reset(nint handle); @@ -1694,6 +1922,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_max_drawdown_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_max_drawdown_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_max_drawdown_reset(nint handle); @@ -1716,6 +1947,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_mc_ginley_dynamic_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_mc_ginley_dynamic_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_mc_ginley_dynamic_reset(nint handle); @@ -1738,6 +1972,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_median_absolute_deviation_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_median_absolute_deviation_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_median_absolute_deviation_reset(nint handle); @@ -1760,6 +1997,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_median_ma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_median_ma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_median_ma_reset(nint handle); @@ -1782,6 +2022,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_mid_point_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_mid_point_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_mid_point_reset(nint handle); @@ -1804,6 +2047,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_mom_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_mom_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_mom_reset(nint handle); @@ -1826,6 +2072,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_omega_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_omega_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_omega_ratio_reset(nint handle); @@ -1848,6 +2097,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_pain_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_pain_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_pain_index_reset(nint handle); @@ -1870,6 +2122,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_percent_b_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_percent_b_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_percent_b_reset(nint handle); @@ -1892,6 +2147,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_percentage_trailing_stop_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_percentage_trailing_stop_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_percentage_trailing_stop_reset(nint handle); @@ -1914,6 +2172,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_pmo_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_pmo_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_pmo_reset(nint handle); @@ -1936,6 +2197,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_polarized_fractal_efficiency_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_polarized_fractal_efficiency_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_polarized_fractal_efficiency_reset(nint handle); @@ -1958,6 +2222,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ppo_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ppo_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ppo_reset(nint handle); @@ -1980,6 +2247,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ppo_histogram_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ppo_histogram_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ppo_histogram_reset(nint handle); @@ -2002,6 +2272,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_profit_factor_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_profit_factor_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_profit_factor_reset(nint handle); @@ -2024,6 +2297,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_r_squared_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_r_squared_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_r_squared_reset(nint handle); @@ -2046,6 +2322,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_realized_volatility_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_realized_volatility_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_realized_volatility_reset(nint handle); @@ -2068,6 +2347,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_recovery_factor_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_recovery_factor_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_recovery_factor_reset(nint handle); @@ -2090,6 +2372,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_reflex_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_reflex_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_reflex_reset(nint handle); @@ -2112,6 +2397,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_regime_label_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_regime_label_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_regime_label_reset(nint handle); @@ -2134,6 +2422,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_renko_trailing_stop_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_renko_trailing_stop_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_renko_trailing_stop_reset(nint handle); @@ -2156,6 +2447,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rmi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rmi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rmi_reset(nint handle); @@ -2178,6 +2472,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_roc_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_roc_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_roc_reset(nint handle); @@ -2200,6 +2497,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rocp_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rocp_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rocp_reset(nint handle); @@ -2222,6 +2522,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rocr_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rocr_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rocr_reset(nint handle); @@ -2244,6 +2547,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rocr100_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rocr100_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rocr100_reset(nint handle); @@ -2266,6 +2572,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rolling_iqr_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rolling_iqr_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rolling_iqr_reset(nint handle); @@ -2288,6 +2597,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rolling_min_max_scaler_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rolling_min_max_scaler_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rolling_min_max_scaler_reset(nint handle); @@ -2310,6 +2622,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rolling_percentile_rank_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rolling_percentile_rank_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rolling_percentile_rank_reset(nint handle); @@ -2332,6 +2647,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rolling_quantile_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rolling_quantile_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rolling_quantile_reset(nint handle); @@ -2354,6 +2672,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_roofing_filter_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_roofing_filter_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_roofing_filter_reset(nint handle); @@ -2376,6 +2697,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rsi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rsi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rsi_reset(nint handle); @@ -2398,6 +2722,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rsx_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rsx_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rsx_reset(nint handle); @@ -2420,6 +2747,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rvi_volatility_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rvi_volatility_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rvi_volatility_reset(nint handle); @@ -2442,6 +2772,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_sample_entropy_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_sample_entropy_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_sample_entropy_reset(nint handle); @@ -2464,6 +2797,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_shannon_entropy_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_shannon_entropy_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_shannon_entropy_reset(nint handle); @@ -2486,6 +2822,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_sharpe_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_sharpe_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_sharpe_ratio_reset(nint handle); @@ -2508,6 +2847,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_sine_wave_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_sine_wave_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_sine_wave_reset(nint handle); @@ -2530,6 +2872,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_sine_weighted_ma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_sine_weighted_ma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_sine_weighted_ma_reset(nint handle); @@ -2552,6 +2897,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_skewness_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_skewness_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_skewness_reset(nint handle); @@ -2574,6 +2922,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_sma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_sma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_sma_reset(nint handle); @@ -2596,6 +2947,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_smma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_smma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_smma_reset(nint handle); @@ -2618,6 +2972,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_sortino_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_sortino_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_sortino_ratio_reset(nint handle); @@ -2640,6 +2997,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_standard_error_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_standard_error_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_standard_error_reset(nint handle); @@ -2662,6 +3022,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_stc_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_stc_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_stc_reset(nint handle); @@ -2684,6 +3047,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_std_dev_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_std_dev_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_std_dev_reset(nint handle); @@ -2706,6 +3072,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_step_trailing_stop_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_step_trailing_stop_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_step_trailing_stop_reset(nint handle); @@ -2728,6 +3097,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_sterling_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_sterling_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_sterling_ratio_reset(nint handle); @@ -2750,6 +3122,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_stoch_rsi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_stoch_rsi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_stoch_rsi_reset(nint handle); @@ -2772,6 +3147,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_super_smoother_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_super_smoother_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_super_smoother_reset(nint handle); @@ -2794,6 +3172,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_t3_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_t3_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_t3_reset(nint handle); @@ -2816,6 +3197,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tail_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tail_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tail_ratio_reset(nint handle); @@ -2838,6 +3222,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tema_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tema_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tema_reset(nint handle); @@ -2860,6 +3247,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tii_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tii_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tii_reset(nint handle); @@ -2882,6 +3272,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_trend_label_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_trend_label_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_trend_label_reset(nint handle); @@ -2904,6 +3297,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_trend_strength_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_trend_strength_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_trend_strength_index_reset(nint handle); @@ -2926,6 +3322,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_trendflex_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_trendflex_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_trendflex_reset(nint handle); @@ -2948,6 +3347,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_trima_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_trima_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_trima_reset(nint handle); @@ -2970,6 +3372,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_trix_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_trix_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_trix_reset(nint handle); @@ -2992,6 +3397,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tsf_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tsf_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tsf_reset(nint handle); @@ -3014,6 +3422,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tsf_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tsf_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tsf_oscillator_reset(nint handle); @@ -3036,6 +3447,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tsi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tsi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tsi_reset(nint handle); @@ -3058,6 +3472,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ulcer_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ulcer_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ulcer_index_reset(nint handle); @@ -3080,6 +3497,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_universal_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_universal_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_universal_oscillator_reset(nint handle); @@ -3102,6 +3522,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_upside_potential_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_upside_potential_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_upside_potential_ratio_reset(nint handle); @@ -3124,6 +3547,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_value_at_risk_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_value_at_risk_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_value_at_risk_reset(nint handle); @@ -3146,6 +3572,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_variance_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_variance_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_variance_reset(nint handle); @@ -3168,6 +3597,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_vertical_horizontal_filter_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_vertical_horizontal_filter_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_vertical_horizontal_filter_reset(nint handle); @@ -3190,6 +3622,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_vidya_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_vidya_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_vidya_reset(nint handle); @@ -3212,6 +3647,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_volatility_of_volatility_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_volatility_of_volatility_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_volatility_of_volatility_reset(nint handle); @@ -3234,6 +3672,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_wave_pm_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_wave_pm_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_wave_pm_reset(nint handle); @@ -3256,6 +3697,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_win_rate_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_win_rate_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_win_rate_reset(nint handle); @@ -3278,6 +3722,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_wma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_wma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_wma_reset(nint handle); @@ -3300,6 +3747,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_z_score_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_z_score_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_z_score_reset(nint handle); @@ -3322,6 +3772,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_zlema_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_zlema_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_zlema_reset(nint handle); @@ -3344,6 +3797,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_alpha_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_alpha_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_alpha_reset(nint handle); @@ -3366,6 +3822,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_beta_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_beta_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_beta_reset(nint handle); @@ -3388,6 +3847,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_beta_neutral_spread_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_beta_neutral_spread_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_beta_neutral_spread_reset(nint handle); @@ -3410,6 +3872,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_distance_ssd_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_distance_ssd_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_distance_ssd_reset(nint handle); @@ -3432,6 +3897,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_granger_causality_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_granger_causality_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_granger_causality_reset(nint handle); @@ -3454,6 +3922,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_hasbrouck_information_share_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_hasbrouck_information_share_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_hasbrouck_information_share_reset(nint handle); @@ -3476,6 +3947,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_information_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_information_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_information_ratio_reset(nint handle); @@ -3498,6 +3972,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_kendall_tau_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kendall_tau_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kendall_tau_reset(nint handle); @@ -3520,6 +3997,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ou_half_life_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ou_half_life_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ou_half_life_reset(nint handle); @@ -3542,6 +4022,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_pair_spread_z_score_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_pair_spread_z_score_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_pair_spread_z_score_reset(nint handle); @@ -3564,6 +4047,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_pairwise_beta_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_pairwise_beta_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_pairwise_beta_reset(nint handle); @@ -3586,6 +4072,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_pearson_correlation_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_pearson_correlation_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_pearson_correlation_reset(nint handle); @@ -3608,6 +4097,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rolling_correlation_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rolling_correlation_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rolling_correlation_reset(nint handle); @@ -3630,6 +4122,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rolling_covariance_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rolling_covariance_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rolling_covariance_reset(nint handle); @@ -3652,6 +4147,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_spearman_correlation_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_spearman_correlation_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_spearman_correlation_reset(nint handle); @@ -3674,6 +4172,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_spread_ar1_coefficient_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_spread_ar1_coefficient_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_spread_ar1_coefficient_reset(nint handle); @@ -3696,6 +4197,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_spread_hurst_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_spread_hurst_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_spread_hurst_reset(nint handle); @@ -3718,6 +4222,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_treynor_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_treynor_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_treynor_ratio_reset(nint handle); @@ -3740,6 +4247,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_variance_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_variance_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_variance_ratio_reset(nint handle); @@ -3762,6 +4272,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_abandoned_baby_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_abandoned_baby_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_abandoned_baby_reset(nint handle); @@ -3784,6 +4297,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_abcd_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_abcd_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_abcd_reset(nint handle); @@ -3806,6 +4322,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_accelerator_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_accelerator_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_accelerator_oscillator_reset(nint handle); @@ -3828,6 +4347,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ad_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ad_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ad_oscillator_reset(nint handle); @@ -3850,6 +4372,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_adaptive_cci_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_adaptive_cci_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_adaptive_cci_reset(nint handle); @@ -3872,6 +4397,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_adl_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_adl_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_adl_reset(nint handle); @@ -3894,6 +4422,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_advance_block_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_advance_block_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_advance_block_reset(nint handle); @@ -3916,6 +4447,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_adxr_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_adxr_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_adxr_reset(nint handle); @@ -3938,6 +4472,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_anchored_vwap_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_anchored_vwap_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_anchored_vwap_reset(nint handle); @@ -3960,6 +4497,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_aroon_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_aroon_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_aroon_oscillator_reset(nint handle); @@ -3982,6 +4522,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_atr_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_atr_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_atr_reset(nint handle); @@ -4004,6 +4547,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_atr_trailing_stop_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_atr_trailing_stop_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_atr_trailing_stop_reset(nint handle); @@ -4026,6 +4572,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_average_daily_range_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_average_daily_range_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_average_daily_range_reset(nint handle); @@ -4048,6 +4597,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_avg_price_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_avg_price_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_avg_price_reset(nint handle); @@ -4070,6 +4622,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_awesome_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_awesome_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_awesome_oscillator_reset(nint handle); @@ -4077,7 +4632,7 @@ internal static partial class NativeMethods internal static partial void wickra_awesome_oscillator_free(nint handle); [LibraryImport(WickraNative.LibraryName)] - internal static partial nint wickra_awesome_oscillator_histogram_new(nuint fast, nuint slow, nuint smaPeriod); + internal static partial nint wickra_awesome_oscillator_histogram_new(nuint fast, nuint slow, nuint lookback); [LibraryImport(WickraNative.LibraryName)] internal static partial double wickra_awesome_oscillator_histogram_update(nint handle, double open, double high, double low, double close, double volume, long timestamp); @@ -4092,6 +4647,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_awesome_oscillator_histogram_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_awesome_oscillator_histogram_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_awesome_oscillator_histogram_reset(nint handle); @@ -4114,6 +4672,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_balance_of_power_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_balance_of_power_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_balance_of_power_reset(nint handle); @@ -4136,6 +4697,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_bat_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_bat_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_bat_reset(nint handle); @@ -4158,6 +4722,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_belt_hold_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_belt_hold_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_belt_hold_reset(nint handle); @@ -4180,6 +4747,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_better_volume_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_better_volume_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_better_volume_reset(nint handle); @@ -4202,6 +4772,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_body_size_pct_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_body_size_pct_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_body_size_pct_reset(nint handle); @@ -4224,6 +4797,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_breakaway_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_breakaway_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_breakaway_reset(nint handle); @@ -4246,6 +4822,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_butterfly_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_butterfly_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_butterfly_reset(nint handle); @@ -4268,6 +4847,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_cci_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_cci_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_cci_reset(nint handle); @@ -4290,6 +4872,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_chaikin_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_chaikin_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_chaikin_oscillator_reset(nint handle); @@ -4312,6 +4897,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_chaikin_volatility_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_chaikin_volatility_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_chaikin_volatility_reset(nint handle); @@ -4334,6 +4922,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_choppiness_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_choppiness_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_choppiness_index_reset(nint handle); @@ -4356,6 +4947,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_close_vs_open_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_close_vs_open_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_close_vs_open_reset(nint handle); @@ -4378,6 +4972,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_closing_marubozu_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_closing_marubozu_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_closing_marubozu_reset(nint handle); @@ -4400,6 +4997,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_chaikin_money_flow_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_chaikin_money_flow_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_chaikin_money_flow_reset(nint handle); @@ -4422,6 +5022,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_concealing_baby_swallow_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_concealing_baby_swallow_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_concealing_baby_swallow_reset(nint handle); @@ -4444,6 +5047,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_counterattack_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_counterattack_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_counterattack_reset(nint handle); @@ -4466,6 +5072,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_crab_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_crab_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_crab_reset(nint handle); @@ -4488,6 +5097,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_cup_and_handle_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_cup_and_handle_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_cup_and_handle_reset(nint handle); @@ -4510,6 +5122,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_cypher_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_cypher_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_cypher_reset(nint handle); @@ -4532,6 +5147,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_demand_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_demand_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_demand_index_reset(nint handle); @@ -4554,6 +5172,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_doji_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_doji_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_doji_reset(nint handle); @@ -4576,6 +5197,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_doji_star_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_doji_star_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_doji_star_reset(nint handle); @@ -4598,6 +5222,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_double_top_bottom_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_double_top_bottom_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_double_top_bottom_reset(nint handle); @@ -4620,6 +5247,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_downside_gap_three_methods_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_downside_gap_three_methods_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_downside_gap_three_methods_reset(nint handle); @@ -4642,6 +5272,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_dragonfly_doji_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_dragonfly_doji_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_dragonfly_doji_reset(nint handle); @@ -4664,6 +5297,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_dumpling_top_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_dumpling_top_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_dumpling_top_reset(nint handle); @@ -4686,6 +5322,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_dx_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_dx_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_dx_reset(nint handle); @@ -4708,6 +5347,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ease_of_movement_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ease_of_movement_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ease_of_movement_reset(nint handle); @@ -4730,6 +5372,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_engulfing_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_engulfing_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_engulfing_reset(nint handle); @@ -4752,6 +5397,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_evening_doji_star_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_evening_doji_star_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_evening_doji_star_reset(nint handle); @@ -4774,6 +5422,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_evwma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_evwma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_evwma_reset(nint handle); @@ -4796,6 +5447,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_falling_three_methods_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_falling_three_methods_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_falling_three_methods_reset(nint handle); @@ -4818,6 +5472,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_flag_pennant_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_flag_pennant_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_flag_pennant_reset(nint handle); @@ -4840,6 +5497,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_force_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_force_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_force_index_reset(nint handle); @@ -4862,6 +5522,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fry_pan_bottom_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fry_pan_bottom_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fry_pan_bottom_reset(nint handle); @@ -4884,6 +5547,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_gap_side_by_side_white_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_gap_side_by_side_white_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_gap_side_by_side_white_reset(nint handle); @@ -4906,6 +5572,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_garman_klass_volatility_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_garman_klass_volatility_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_garman_klass_volatility_reset(nint handle); @@ -4928,6 +5597,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_gartley_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_gartley_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_gartley_reset(nint handle); @@ -4950,6 +5622,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_gravestone_doji_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_gravestone_doji_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_gravestone_doji_reset(nint handle); @@ -4972,6 +5647,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_hammer_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_hammer_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_hammer_reset(nint handle); @@ -4994,6 +5672,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_hanging_man_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_hanging_man_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_hanging_man_reset(nint handle); @@ -5016,6 +5697,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_harami_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_harami_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_harami_reset(nint handle); @@ -5038,6 +5722,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_harami_cross_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_harami_cross_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_harami_cross_reset(nint handle); @@ -5060,6 +5747,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_head_and_shoulders_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_head_and_shoulders_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_head_and_shoulders_reset(nint handle); @@ -5082,6 +5772,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_heikin_ashi_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_heikin_ashi_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_heikin_ashi_oscillator_reset(nint handle); @@ -5104,6 +5797,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_high_low_range_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_high_low_range_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_high_low_range_reset(nint handle); @@ -5126,6 +5822,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_high_wave_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_high_wave_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_high_wave_reset(nint handle); @@ -5148,6 +5847,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_hikkake_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_hikkake_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_hikkake_reset(nint handle); @@ -5170,6 +5872,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_hikkake_modified_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_hikkake_modified_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_hikkake_modified_reset(nint handle); @@ -5192,6 +5897,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_hi_lo_activator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_hi_lo_activator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_hi_lo_activator_reset(nint handle); @@ -5214,6 +5922,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_homing_pigeon_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_homing_pigeon_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_homing_pigeon_reset(nint handle); @@ -5236,6 +5947,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_identical_three_crows_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_identical_three_crows_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_identical_three_crows_reset(nint handle); @@ -5258,6 +5972,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_in_neck_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_in_neck_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_in_neck_reset(nint handle); @@ -5280,6 +5997,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_inertia_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_inertia_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_inertia_reset(nint handle); @@ -5302,6 +6022,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_intraday_intensity_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_intraday_intensity_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_intraday_intensity_reset(nint handle); @@ -5324,6 +6047,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_intraday_momentum_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_intraday_momentum_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_intraday_momentum_index_reset(nint handle); @@ -5346,6 +6072,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_inverted_hammer_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_inverted_hammer_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_inverted_hammer_reset(nint handle); @@ -5368,6 +6097,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_kicking_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kicking_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kicking_reset(nint handle); @@ -5390,6 +6122,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_kicking_by_length_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kicking_by_length_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kicking_by_length_reset(nint handle); @@ -5412,6 +6147,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_kvo_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kvo_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kvo_reset(nint handle); @@ -5434,6 +6172,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ladder_bottom_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ladder_bottom_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ladder_bottom_reset(nint handle); @@ -5456,6 +6197,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_long_legged_doji_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_long_legged_doji_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_long_legged_doji_reset(nint handle); @@ -5478,6 +6222,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_long_line_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_long_line_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_long_line_reset(nint handle); @@ -5500,6 +6247,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_market_facilitation_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_market_facilitation_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_market_facilitation_index_reset(nint handle); @@ -5522,6 +6272,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_marubozu_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_marubozu_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_marubozu_reset(nint handle); @@ -5544,6 +6297,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_mass_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_mass_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_mass_index_reset(nint handle); @@ -5566,6 +6322,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_mat_hold_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_mat_hold_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_mat_hold_reset(nint handle); @@ -5588,6 +6347,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_matching_low_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_matching_low_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_matching_low_reset(nint handle); @@ -5610,6 +6372,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_median_price_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_median_price_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_median_price_reset(nint handle); @@ -5632,6 +6397,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_mfi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_mfi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_mfi_reset(nint handle); @@ -5654,6 +6422,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_mid_price_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_mid_price_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_mid_price_reset(nint handle); @@ -5676,6 +6447,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_minus_di_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_minus_di_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_minus_di_reset(nint handle); @@ -5698,6 +6472,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_minus_dm_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_minus_dm_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_minus_dm_reset(nint handle); @@ -5720,6 +6497,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_morning_doji_star_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_morning_doji_star_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_morning_doji_star_reset(nint handle); @@ -5742,6 +6522,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_morning_evening_star_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_morning_evening_star_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_morning_evening_star_reset(nint handle); @@ -5764,6 +6547,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_naked_poc_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_naked_poc_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_naked_poc_reset(nint handle); @@ -5786,6 +6572,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_natr_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_natr_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_natr_reset(nint handle); @@ -5808,6 +6597,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_new_price_lines_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_new_price_lines_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_new_price_lines_reset(nint handle); @@ -5830,6 +6622,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_nvi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_nvi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_nvi_reset(nint handle); @@ -5852,6 +6647,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_obv_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_obv_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_obv_reset(nint handle); @@ -5874,6 +6672,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_on_neck_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_on_neck_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_on_neck_reset(nint handle); @@ -5896,6 +6697,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_opening_marubozu_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_opening_marubozu_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_opening_marubozu_reset(nint handle); @@ -5918,6 +6722,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_overnight_gap_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_overnight_gap_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_overnight_gap_reset(nint handle); @@ -5940,6 +6747,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_parkinson_volatility_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_parkinson_volatility_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_parkinson_volatility_reset(nint handle); @@ -5962,6 +6772,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_pgo_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_pgo_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_pgo_reset(nint handle); @@ -5984,6 +6797,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_piercing_dark_cloud_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_piercing_dark_cloud_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_piercing_dark_cloud_reset(nint handle); @@ -6006,6 +6822,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_pivot_reversal_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_pivot_reversal_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_pivot_reversal_reset(nint handle); @@ -6028,6 +6847,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_plus_di_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_plus_di_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_plus_di_reset(nint handle); @@ -6050,6 +6872,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_plus_dm_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_plus_dm_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_plus_dm_reset(nint handle); @@ -6072,6 +6897,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_profile_shape_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_profile_shape_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_profile_shape_reset(nint handle); @@ -6094,6 +6922,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_projection_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_projection_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_projection_oscillator_reset(nint handle); @@ -6116,6 +6947,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_psar_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_psar_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_psar_reset(nint handle); @@ -6138,6 +6972,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_pvi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_pvi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_pvi_reset(nint handle); @@ -6160,6 +6997,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_qstick_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_qstick_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_qstick_reset(nint handle); @@ -6182,6 +7022,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rectangle_range_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rectangle_range_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rectangle_range_reset(nint handle); @@ -6204,6 +7047,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rickshaw_man_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rickshaw_man_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rickshaw_man_reset(nint handle); @@ -6226,6 +7072,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rising_three_methods_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rising_three_methods_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rising_three_methods_reset(nint handle); @@ -6248,6 +7097,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rogers_satchell_volatility_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rogers_satchell_volatility_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rogers_satchell_volatility_reset(nint handle); @@ -6270,6 +7122,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rvi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rvi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rvi_reset(nint handle); @@ -6292,6 +7147,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_sar_ext_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_sar_ext_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_sar_ext_reset(nint handle); @@ -6314,6 +7172,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_seasonal_z_score_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_seasonal_z_score_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_seasonal_z_score_reset(nint handle); @@ -6336,6 +7197,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_separating_lines_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_separating_lines_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_separating_lines_reset(nint handle); @@ -6358,6 +7222,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_session_vwap_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_session_vwap_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_session_vwap_reset(nint handle); @@ -6380,6 +7247,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_shark_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_shark_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_shark_reset(nint handle); @@ -6402,6 +7272,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_shooting_star_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_shooting_star_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_shooting_star_reset(nint handle); @@ -6424,6 +7297,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_short_line_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_short_line_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_short_line_reset(nint handle); @@ -6446,6 +7322,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_single_prints_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_single_prints_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_single_prints_reset(nint handle); @@ -6468,6 +7347,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_smi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_smi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_smi_reset(nint handle); @@ -6490,6 +7372,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_spinning_top_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_spinning_top_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_spinning_top_reset(nint handle); @@ -6512,6 +7397,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_stalled_pattern_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_stalled_pattern_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_stalled_pattern_reset(nint handle); @@ -6534,6 +7422,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_stick_sandwich_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_stick_sandwich_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_stick_sandwich_reset(nint handle); @@ -6556,6 +7447,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_stochastic_cci_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_stochastic_cci_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_stochastic_cci_reset(nint handle); @@ -6578,6 +7472,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_takuri_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_takuri_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_takuri_reset(nint handle); @@ -6600,6 +7497,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tasuki_gap_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tasuki_gap_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tasuki_gap_reset(nint handle); @@ -6622,6 +7522,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_camouflage_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_camouflage_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_camouflage_reset(nint handle); @@ -6644,6 +7547,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_clop_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_clop_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_clop_reset(nint handle); @@ -6666,6 +7572,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_clopwin_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_clopwin_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_clopwin_reset(nint handle); @@ -6688,6 +7597,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_combo_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_combo_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_combo_reset(nint handle); @@ -6710,6 +7622,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_countdown_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_countdown_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_countdown_reset(nint handle); @@ -6732,6 +7647,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_de_marker_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_de_marker_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_de_marker_reset(nint handle); @@ -6754,6 +7672,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_differential_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_differential_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_differential_reset(nint handle); @@ -6776,6 +7697,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_d_wave_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_d_wave_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_d_wave_reset(nint handle); @@ -6798,6 +7722,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_open_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_open_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_open_reset(nint handle); @@ -6820,6 +7747,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_pressure_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_pressure_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_pressure_reset(nint handle); @@ -6842,6 +7772,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_propulsion_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_propulsion_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_propulsion_reset(nint handle); @@ -6864,6 +7797,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_rei_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_rei_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_rei_reset(nint handle); @@ -6886,6 +7822,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_setup_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_setup_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_setup_reset(nint handle); @@ -6908,6 +7847,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_trap_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_trap_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_trap_reset(nint handle); @@ -6930,6 +7872,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_three_drives_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_three_drives_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_three_drives_reset(nint handle); @@ -6952,6 +7897,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_three_inside_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_three_inside_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_three_inside_reset(nint handle); @@ -6974,6 +7922,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_three_line_break_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_three_line_break_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_three_line_break_reset(nint handle); @@ -6996,6 +7947,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_three_line_strike_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_three_line_strike_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_three_line_strike_reset(nint handle); @@ -7018,6 +7972,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_three_outside_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_three_outside_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_three_outside_reset(nint handle); @@ -7040,6 +7997,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_three_soldiers_or_crows_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_three_soldiers_or_crows_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_three_soldiers_or_crows_reset(nint handle); @@ -7062,6 +8022,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_three_stars_in_south_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_three_stars_in_south_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_three_stars_in_south_reset(nint handle); @@ -7084,6 +8047,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_thrusting_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_thrusting_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_thrusting_reset(nint handle); @@ -7106,6 +8072,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_time_based_stop_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_time_based_stop_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_time_based_stop_reset(nint handle); @@ -7128,6 +8097,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tower_top_bottom_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tower_top_bottom_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tower_top_bottom_reset(nint handle); @@ -7150,6 +8122,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_trade_volume_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_trade_volume_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_trade_volume_index_reset(nint handle); @@ -7172,6 +8147,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_triangle_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_triangle_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_triangle_reset(nint handle); @@ -7194,6 +8172,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_triple_top_bottom_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_triple_top_bottom_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_triple_top_bottom_reset(nint handle); @@ -7216,6 +8197,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tristar_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tristar_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tristar_reset(nint handle); @@ -7238,6 +8222,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_true_range_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_true_range_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_true_range_reset(nint handle); @@ -7260,6 +8247,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tsv_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tsv_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tsv_reset(nint handle); @@ -7282,6 +8272,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ttm_trend_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ttm_trend_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ttm_trend_reset(nint handle); @@ -7304,6 +8297,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_turn_of_month_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_turn_of_month_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_turn_of_month_reset(nint handle); @@ -7326,6 +8322,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tweezer_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tweezer_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tweezer_reset(nint handle); @@ -7348,6 +8347,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_twiggs_money_flow_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_twiggs_money_flow_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_twiggs_money_flow_reset(nint handle); @@ -7370,6 +8372,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_two_crows_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_two_crows_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_two_crows_reset(nint handle); @@ -7392,6 +8397,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_typical_price_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_typical_price_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_typical_price_reset(nint handle); @@ -7414,6 +8422,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ultimate_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ultimate_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ultimate_oscillator_reset(nint handle); @@ -7436,6 +8447,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_unique_three_river_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_unique_three_river_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_unique_three_river_reset(nint handle); @@ -7458,6 +8472,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_upside_gap_three_methods_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_upside_gap_three_methods_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_upside_gap_three_methods_reset(nint handle); @@ -7480,6 +8497,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_upside_gap_two_crows_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_upside_gap_two_crows_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_upside_gap_two_crows_reset(nint handle); @@ -7502,6 +8522,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_volatility_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_volatility_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_volatility_ratio_reset(nint handle); @@ -7524,6 +8547,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_volty_stop_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_volty_stop_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_volty_stop_reset(nint handle); @@ -7546,6 +8572,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_volume_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_volume_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_volume_oscillator_reset(nint handle); @@ -7568,6 +8597,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_volume_rsi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_volume_rsi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_volume_rsi_reset(nint handle); @@ -7590,6 +8622,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_volume_price_trend_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_volume_price_trend_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_volume_price_trend_reset(nint handle); @@ -7612,6 +8647,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_vwap_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_vwap_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_vwap_reset(nint handle); @@ -7634,6 +8672,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rolling_vwap_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rolling_vwap_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rolling_vwap_reset(nint handle); @@ -7656,6 +8697,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_vwma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_vwma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_vwma_reset(nint handle); @@ -7678,6 +8722,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_vzo_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_vzo_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_vzo_reset(nint handle); @@ -7700,6 +8747,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_wad_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_wad_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_wad_reset(nint handle); @@ -7722,6 +8772,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_wedge_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_wedge_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_wedge_reset(nint handle); @@ -7744,6 +8797,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_weighted_close_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_weighted_close_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_weighted_close_reset(nint handle); @@ -7766,6 +8822,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_wick_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_wick_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_wick_ratio_reset(nint handle); @@ -7788,6 +8847,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_williams_r_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_williams_r_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_williams_r_reset(nint handle); @@ -7810,6 +8872,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_yang_zhang_volatility_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_yang_zhang_volatility_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_yang_zhang_volatility_reset(nint handle); @@ -7832,6 +8897,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_yoyo_exit_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_yoyo_exit_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_yoyo_exit_reset(nint handle); @@ -7851,6 +8919,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_amihud_illiquidity_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_amihud_illiquidity_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_amihud_illiquidity_reset(nint handle); @@ -7870,6 +8941,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_cumulative_volume_delta_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_cumulative_volume_delta_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_cumulative_volume_delta_reset(nint handle); @@ -7889,6 +8963,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_pin_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_pin_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_pin_reset(nint handle); @@ -7908,6 +8985,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_roll_measure_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_roll_measure_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_roll_measure_reset(nint handle); @@ -7927,6 +9007,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_signed_volume_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_signed_volume_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_signed_volume_reset(nint handle); @@ -7946,6 +9029,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_trade_imbalance_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_trade_imbalance_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_trade_imbalance_reset(nint handle); @@ -7965,6 +9051,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_trade_sign_autocorrelation_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_trade_sign_autocorrelation_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_trade_sign_autocorrelation_reset(nint handle); @@ -7984,6 +9073,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_vpin_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_vpin_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_vpin_reset(nint handle); @@ -8003,6 +9095,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_effective_spread_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_effective_spread_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_effective_spread_reset(nint handle); @@ -8022,6 +9117,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_kyles_lambda_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kyles_lambda_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kyles_lambda_reset(nint handle); @@ -8041,6 +9139,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_realized_spread_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_realized_spread_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_realized_spread_reset(nint handle); @@ -8060,6 +9161,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_calendar_spread_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_calendar_spread_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_calendar_spread_reset(nint handle); @@ -8079,6 +9183,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_estimated_leverage_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_estimated_leverage_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_estimated_leverage_ratio_reset(nint handle); @@ -8098,6 +9205,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_funding_basis_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_funding_basis_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_funding_basis_reset(nint handle); @@ -8117,6 +9227,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_funding_implied_apr_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_funding_implied_apr_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_funding_implied_apr_reset(nint handle); @@ -8136,6 +9249,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_funding_rate_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_funding_rate_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_funding_rate_reset(nint handle); @@ -8155,6 +9271,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_funding_rate_mean_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_funding_rate_mean_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_funding_rate_mean_reset(nint handle); @@ -8174,6 +9293,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_funding_rate_z_score_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_funding_rate_z_score_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_funding_rate_z_score_reset(nint handle); @@ -8193,6 +9315,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_long_short_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_long_short_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_long_short_ratio_reset(nint handle); @@ -8212,6 +9337,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_open_interest_delta_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_open_interest_delta_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_open_interest_delta_reset(nint handle); @@ -8231,6 +9359,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_oi_price_divergence_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_oi_price_divergence_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_oi_price_divergence_reset(nint handle); @@ -8250,6 +9381,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_oi_to_volume_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_oi_to_volume_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_oi_to_volume_ratio_reset(nint handle); @@ -8269,6 +9403,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_oi_weighted_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_oi_weighted_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_oi_weighted_reset(nint handle); @@ -8288,6 +9425,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_open_interest_momentum_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_open_interest_momentum_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_open_interest_momentum_reset(nint handle); @@ -8307,6 +9447,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_perpetual_premium_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_perpetual_premium_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_perpetual_premium_index_reset(nint handle); @@ -8326,6 +9469,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_taker_buy_sell_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_taker_buy_sell_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_taker_buy_sell_ratio_reset(nint handle); @@ -8345,6 +9491,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_term_structure_basis_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_term_structure_basis_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_term_structure_basis_reset(nint handle); @@ -8364,6 +9513,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_depth_slope_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_depth_slope_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_depth_slope_reset(nint handle); @@ -8383,6 +9535,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_microprice_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_microprice_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_microprice_reset(nint handle); @@ -8402,6 +9557,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_order_book_imbalance_full_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_order_book_imbalance_full_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_order_book_imbalance_full_reset(nint handle); @@ -8421,6 +9579,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_order_book_imbalance_top1_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_order_book_imbalance_top1_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_order_book_imbalance_top1_reset(nint handle); @@ -8440,6 +9601,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_order_book_imbalance_top_n_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_order_book_imbalance_top_n_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_order_book_imbalance_top_n_reset(nint handle); @@ -8459,6 +9623,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_order_flow_imbalance_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_order_flow_imbalance_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_order_flow_imbalance_reset(nint handle); @@ -8478,6 +9645,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_quoted_spread_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_quoted_spread_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_quoted_spread_reset(nint handle); @@ -8497,6 +9667,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_absolute_breadth_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_absolute_breadth_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_absolute_breadth_index_reset(nint handle); @@ -8516,6 +9689,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ad_volume_line_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ad_volume_line_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ad_volume_line_reset(nint handle); @@ -8535,6 +9711,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_advance_decline_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_advance_decline_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_advance_decline_reset(nint handle); @@ -8554,6 +9733,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_advance_decline_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_advance_decline_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_advance_decline_ratio_reset(nint handle); @@ -8573,6 +9755,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_breadth_thrust_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_breadth_thrust_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_breadth_thrust_reset(nint handle); @@ -8592,6 +9777,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_bullish_percent_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_bullish_percent_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_bullish_percent_index_reset(nint handle); @@ -8611,6 +9799,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_cumulative_volume_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_cumulative_volume_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_cumulative_volume_index_reset(nint handle); @@ -8630,6 +9821,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_high_low_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_high_low_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_high_low_index_reset(nint handle); @@ -8649,6 +9843,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_mc_clellan_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_mc_clellan_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_mc_clellan_oscillator_reset(nint handle); @@ -8668,6 +9865,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_mc_clellan_summation_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_mc_clellan_summation_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_mc_clellan_summation_index_reset(nint handle); @@ -8687,6 +9887,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_new_highs_new_lows_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_new_highs_new_lows_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_new_highs_new_lows_reset(nint handle); @@ -8706,6 +9909,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_percent_above_ma_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_percent_above_ma_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_percent_above_ma_reset(nint handle); @@ -8725,6 +9931,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tick_index_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tick_index_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tick_index_reset(nint handle); @@ -8744,6 +9953,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_trin_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_trin_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_trin_reset(nint handle); @@ -8763,6 +9975,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_up_down_volume_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_up_down_volume_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_up_down_volume_ratio_reset(nint handle); @@ -8783,6 +9998,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_acceleration_bands_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_acceleration_bands_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_acceleration_bands_reset(nint handle); @@ -8803,6 +10021,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_adx_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_adx_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_adx_reset(nint handle); @@ -8823,6 +10044,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_alligator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_alligator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_alligator_reset(nint handle); @@ -8843,6 +10067,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_andrews_pitchfork_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_andrews_pitchfork_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_andrews_pitchfork_reset(nint handle); @@ -8863,6 +10090,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_aroon_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_aroon_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_aroon_reset(nint handle); @@ -8883,6 +10113,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_atr_bands_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_atr_bands_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_atr_bands_reset(nint handle); @@ -8903,6 +10136,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_atr_ratchet_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_atr_ratchet_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_atr_ratchet_reset(nint handle); @@ -8923,6 +10159,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_auto_fib_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_auto_fib_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_auto_fib_reset(nint handle); @@ -8943,6 +10182,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_bollinger_bands_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_bollinger_bands_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_bollinger_bands_reset(nint handle); @@ -8963,6 +10205,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_bomar_bands_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_bomar_bands_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_bomar_bands_reset(nint handle); @@ -8983,6 +10228,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_camarilla_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_camarilla_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_camarilla_reset(nint handle); @@ -9003,6 +10251,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_candle_volume_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_candle_volume_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_candle_volume_reset(nint handle); @@ -9023,6 +10274,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_central_pivot_range_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_central_pivot_range_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_central_pivot_range_reset(nint handle); @@ -9043,6 +10297,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_chande_kroll_stop_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_chande_kroll_stop_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_chande_kroll_stop_reset(nint handle); @@ -9063,6 +10320,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_chandelier_exit_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_chandelier_exit_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_chandelier_exit_reset(nint handle); @@ -9083,6 +10343,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_classic_pivots_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_classic_pivots_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_classic_pivots_reset(nint handle); @@ -9103,6 +10366,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_cointegration_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_cointegration_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_cointegration_reset(nint handle); @@ -9123,6 +10389,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_composite_profile_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_composite_profile_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_composite_profile_reset(nint handle); @@ -9143,6 +10412,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_demark_pivots_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_demark_pivots_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_demark_pivots_reset(nint handle); @@ -9163,6 +10435,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_donchian_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_donchian_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_donchian_reset(nint handle); @@ -9183,6 +10458,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_donchian_stop_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_donchian_stop_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_donchian_stop_reset(nint handle); @@ -9203,6 +10481,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_double_bollinger_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_double_bollinger_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_double_bollinger_reset(nint handle); @@ -9223,6 +10504,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_elder_ray_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_elder_ray_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_elder_ray_reset(nint handle); @@ -9243,6 +10527,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_elder_safe_zone_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_elder_safe_zone_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_elder_safe_zone_reset(nint handle); @@ -9263,6 +10550,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_equivolume_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_equivolume_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_equivolume_reset(nint handle); @@ -9283,6 +10573,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fib_arcs_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fib_arcs_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fib_arcs_reset(nint handle); @@ -9303,6 +10596,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fib_channel_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fib_channel_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fib_channel_reset(nint handle); @@ -9323,6 +10619,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fib_confluence_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fib_confluence_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fib_confluence_reset(nint handle); @@ -9343,6 +10642,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fib_extension_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fib_extension_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fib_extension_reset(nint handle); @@ -9363,6 +10665,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fib_fan_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fib_fan_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fib_fan_reset(nint handle); @@ -9383,6 +10688,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fib_projection_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fib_projection_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fib_projection_reset(nint handle); @@ -9403,6 +10711,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fib_retracement_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fib_retracement_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fib_retracement_reset(nint handle); @@ -9423,6 +10734,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fib_time_zones_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fib_time_zones_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fib_time_zones_reset(nint handle); @@ -9443,6 +10757,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fibonacci_pivots_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fibonacci_pivots_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fibonacci_pivots_reset(nint handle); @@ -9463,6 +10780,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_fractal_chaos_bands_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_fractal_chaos_bands_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_fractal_chaos_bands_reset(nint handle); @@ -9483,6 +10803,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_gator_oscillator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_gator_oscillator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_gator_oscillator_reset(nint handle); @@ -9503,6 +10826,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_golden_pocket_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_golden_pocket_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_golden_pocket_reset(nint handle); @@ -9523,6 +10849,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_heikin_ashi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_heikin_ashi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_heikin_ashi_reset(nint handle); @@ -9543,6 +10872,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_high_low_volume_nodes_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_high_low_volume_nodes_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_high_low_volume_nodes_reset(nint handle); @@ -9563,6 +10895,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ht_phasor_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ht_phasor_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ht_phasor_reset(nint handle); @@ -9583,6 +10918,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_hurst_channel_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_hurst_channel_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_hurst_channel_reset(nint handle); @@ -9603,6 +10941,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ichimoku_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ichimoku_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ichimoku_reset(nint handle); @@ -9623,6 +10964,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_initial_balance_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_initial_balance_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_initial_balance_reset(nint handle); @@ -9643,6 +10987,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_kalman_hedge_ratio_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kalman_hedge_ratio_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kalman_hedge_ratio_reset(nint handle); @@ -9663,6 +11010,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_kase_dev_stop_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kase_dev_stop_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kase_dev_stop_reset(nint handle); @@ -9683,6 +11033,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_kase_permission_stochastic_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kase_permission_stochastic_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kase_permission_stochastic_reset(nint handle); @@ -9703,6 +11056,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_keltner_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_keltner_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_keltner_reset(nint handle); @@ -9723,6 +11079,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_kst_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kst_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kst_reset(nint handle); @@ -9743,6 +11102,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_lead_lag_cross_correlation_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_lead_lag_cross_correlation_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_lead_lag_cross_correlation_reset(nint handle); @@ -9763,6 +11125,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_lin_reg_channel_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_lin_reg_channel_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_lin_reg_channel_reset(nint handle); @@ -9783,6 +11148,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_liquidation_features_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_liquidation_features_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_liquidation_features_reset(nint handle); @@ -9803,6 +11171,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ma_envelope_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ma_envelope_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ma_envelope_reset(nint handle); @@ -9823,6 +11194,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_macd_indicator_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_macd_indicator_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_macd_indicator_reset(nint handle); @@ -9843,6 +11217,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_macd_fix_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_macd_fix_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_macd_fix_reset(nint handle); @@ -9863,6 +11240,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_mama_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_mama_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_mama_reset(nint handle); @@ -9883,6 +11263,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_median_channel_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_median_channel_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_median_channel_reset(nint handle); @@ -9903,6 +11286,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_modified_ma_stop_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_modified_ma_stop_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_modified_ma_stop_reset(nint handle); @@ -9923,6 +11309,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_murrey_math_lines_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_murrey_math_lines_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_murrey_math_lines_reset(nint handle); @@ -9943,6 +11332,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_nrtr_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_nrtr_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_nrtr_reset(nint handle); @@ -9963,6 +11355,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_opening_range_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_opening_range_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_opening_range_reset(nint handle); @@ -9983,6 +11378,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_overnight_intraday_return_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_overnight_intraday_return_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_overnight_intraday_return_reset(nint handle); @@ -10003,6 +11401,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_projection_bands_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_projection_bands_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_projection_bands_reset(nint handle); @@ -10023,6 +11424,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_qqe_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_qqe_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_qqe_reset(nint handle); @@ -10043,6 +11447,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_quartile_bands_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_quartile_bands_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_quartile_bands_reset(nint handle); @@ -10063,6 +11470,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_relative_strength_ab_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_relative_strength_ab_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_relative_strength_ab_reset(nint handle); @@ -10083,6 +11493,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_rwi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_rwi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_rwi_reset(nint handle); @@ -10103,6 +11516,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_session_high_low_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_session_high_low_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_session_high_low_reset(nint handle); @@ -10123,6 +11539,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_session_range_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_session_range_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_session_range_reset(nint handle); @@ -10143,6 +11562,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_smoothed_heikin_ashi_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_smoothed_heikin_ashi_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_smoothed_heikin_ashi_reset(nint handle); @@ -10163,6 +11585,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_spread_bollinger_bands_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_spread_bollinger_bands_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_spread_bollinger_bands_reset(nint handle); @@ -10183,6 +11608,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_standard_error_bands_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_standard_error_bands_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_standard_error_bands_reset(nint handle); @@ -10203,6 +11631,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_starc_bands_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_starc_bands_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_starc_bands_reset(nint handle); @@ -10223,6 +11654,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_stochastic_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_stochastic_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_stochastic_reset(nint handle); @@ -10243,6 +11677,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_super_trend_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_super_trend_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_super_trend_reset(nint handle); @@ -10263,6 +11700,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_lines_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_lines_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_lines_reset(nint handle); @@ -10283,6 +11723,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_moving_average_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_moving_average_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_moving_average_reset(nint handle); @@ -10303,6 +11746,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_range_projection_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_range_projection_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_range_projection_reset(nint handle); @@ -10323,6 +11769,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_risk_level_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_risk_level_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_risk_level_reset(nint handle); @@ -10343,6 +11792,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_td_sequential_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_td_sequential_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_td_sequential_reset(nint handle); @@ -10363,6 +11815,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_ttm_squeeze_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_ttm_squeeze_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_ttm_squeeze_reset(nint handle); @@ -10383,6 +11838,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_value_area_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_value_area_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_value_area_reset(nint handle); @@ -10403,6 +11861,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_volatility_cone_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_volatility_cone_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_volatility_cone_reset(nint handle); @@ -10423,6 +11884,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_volume_weighted_macd_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_volume_weighted_macd_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_volume_weighted_macd_reset(nint handle); @@ -10443,6 +11907,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_volume_weighted_sr_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_volume_weighted_sr_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_volume_weighted_sr_reset(nint handle); @@ -10463,6 +11930,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_vortex_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_vortex_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_vortex_reset(nint handle); @@ -10483,6 +11953,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_vwap_std_dev_bands_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_vwap_std_dev_bands_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_vwap_std_dev_bands_reset(nint handle); @@ -10503,6 +11976,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_wave_trend_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_wave_trend_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_wave_trend_reset(nint handle); @@ -10523,6 +11999,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_williams_fractals_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_williams_fractals_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_williams_fractals_reset(nint handle); @@ -10543,6 +12022,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_woodie_pivots_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_woodie_pivots_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_woodie_pivots_reset(nint handle); @@ -10563,6 +12045,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_zero_lag_macd_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_zero_lag_macd_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_zero_lag_macd_reset(nint handle); @@ -10583,6 +12068,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_zig_zag_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_zig_zag_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_zig_zag_reset(nint handle); @@ -10602,6 +12090,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_day_of_week_profile_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_day_of_week_profile_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_day_of_week_profile_reset(nint handle); @@ -10621,6 +12112,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_intraday_volatility_profile_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_intraday_volatility_profile_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_intraday_volatility_profile_reset(nint handle); @@ -10640,6 +12134,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_time_of_day_return_profile_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_time_of_day_return_profile_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_time_of_day_return_profile_reset(nint handle); @@ -10659,6 +12156,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_tpo_profile_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tpo_profile_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tpo_profile_reset(nint handle); @@ -10678,6 +12178,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_volume_by_time_profile_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_volume_by_time_profile_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_volume_by_time_profile_reset(nint handle); @@ -10697,6 +12200,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_volume_profile_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_volume_profile_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_volume_profile_reset(nint handle); @@ -10709,6 +12215,9 @@ internal static partial class NativeMethods [LibraryImport(WickraNative.LibraryName)] internal static unsafe partial nuint wickra_dollar_bars_update(nint handle, double open, double high, double low, double close, double volume, long timestamp, WickraDollarBar* @out, nuint cap); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_dollar_bars_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_dollar_bars_reset(nint handle); @@ -10721,6 +12230,9 @@ internal static partial class NativeMethods [LibraryImport(WickraNative.LibraryName)] internal static unsafe partial nuint wickra_imbalance_bars_update(nint handle, double open, double high, double low, double close, double volume, long timestamp, WickraImbalanceBar* @out, nuint cap); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_imbalance_bars_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_imbalance_bars_reset(nint handle); @@ -10733,6 +12245,9 @@ internal static partial class NativeMethods [LibraryImport(WickraNative.LibraryName)] internal static unsafe partial nuint wickra_kagi_bars_update(nint handle, double open, double high, double low, double close, double volume, long timestamp, WickraKagiBar* @out, nuint cap); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_kagi_bars_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_kagi_bars_reset(nint handle); @@ -10745,6 +12260,9 @@ internal static partial class NativeMethods [LibraryImport(WickraNative.LibraryName)] internal static unsafe partial nuint wickra_point_and_figure_bars_update(nint handle, double open, double high, double low, double close, double volume, long timestamp, WickraPnfColumn* @out, nuint cap); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_point_and_figure_bars_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_point_and_figure_bars_reset(nint handle); @@ -10757,6 +12275,9 @@ internal static partial class NativeMethods [LibraryImport(WickraNative.LibraryName)] internal static unsafe partial nuint wickra_range_bars_update(nint handle, double open, double high, double low, double close, double volume, long timestamp, WickraRangeBar* @out, nuint cap); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_range_bars_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_range_bars_reset(nint handle); @@ -10769,6 +12290,9 @@ internal static partial class NativeMethods [LibraryImport(WickraNative.LibraryName)] internal static unsafe partial nuint wickra_renko_bars_update(nint handle, double open, double high, double low, double close, double volume, long timestamp, WickraRenkoBrick* @out, nuint cap); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_renko_bars_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_renko_bars_reset(nint handle); @@ -10781,6 +12305,9 @@ internal static partial class NativeMethods [LibraryImport(WickraNative.LibraryName)] internal static unsafe partial nuint wickra_run_bars_update(nint handle, double open, double high, double low, double close, double volume, long timestamp, WickraRunBar* @out, nuint cap); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_run_bars_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_run_bars_reset(nint handle); @@ -10793,6 +12320,9 @@ internal static partial class NativeMethods [LibraryImport(WickraNative.LibraryName)] internal static unsafe partial nuint wickra_three_line_break_bars_update(nint handle, double open, double high, double low, double close, double volume, long timestamp, WickraLineBreakBar* @out, nuint cap); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_three_line_break_bars_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_three_line_break_bars_reset(nint handle); @@ -10805,6 +12335,9 @@ internal static partial class NativeMethods [LibraryImport(WickraNative.LibraryName)] internal static unsafe partial nuint wickra_tick_bars_update(nint handle, double open, double high, double low, double close, double volume, long timestamp, WickraTickBar* @out, nuint cap); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_tick_bars_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_tick_bars_reset(nint handle); @@ -10817,6 +12350,9 @@ internal static partial class NativeMethods [LibraryImport(WickraNative.LibraryName)] internal static unsafe partial nuint wickra_volume_bars_update(nint handle, double open, double high, double low, double close, double volume, long timestamp, WickraVolumeBar* @out, nuint cap); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_volume_bars_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_volume_bars_reset(nint handle); @@ -10837,6 +12373,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_macd_ext_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_macd_ext_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_macd_ext_reset(nint handle); @@ -10856,6 +12395,9 @@ internal static partial class NativeMethods [return: MarshalAs(UnmanagedType.U1)] internal static partial bool wickra_footprint_is_ready(nint handle); + [LibraryImport(WickraNative.LibraryName)] + internal static partial nint wickra_footprint_name(nint handle); + [LibraryImport(WickraNative.LibraryName)] internal static partial void wickra_footprint_reset(nint handle); diff --git a/bindings/csharp/gen_golden_test.py b/bindings/csharp/gen_golden_test.py index 39564684..bea84048 100644 --- a/bindings/csharp/gen_golden_test.py +++ b/bindings/csharp/gen_golden_test.py @@ -13,6 +13,9 @@ ROOT = os.path.normpath(os.path.join(os.path.dirname(__file__), "..", "..")) G = os.path.join(ROOT, "testdata", "golden") GEN = open(os.path.join(ROOT, "bindings", "csharp", "Wickra", "Generated", "Indicators.g.cs"), encoding="utf-8").read() +# Canonical core Indicator::name() per indicator, shared across every binding. +NAMES = json.load(open(os.path.join(G, "names.json"))) + # C# constructor parameter types per class. ctor_types = {} cur = None @@ -81,6 +84,7 @@ def block(canon): a = s["arch"] L = [f" [Fact]", f" public void Golden_{canon}()", " {"] L.append(f" using var ind = {ctor_call(canon)};") + L.append(f" Assert.Equal({json.dumps(NAMES[canon])}, ind.Name());") L.append(" var got = new List();") L.append(" for (var i = 0; i < Rows.Length; i++)") L.append(" {") diff --git a/bindings/go/gen_golden_test.py b/bindings/go/gen_golden_test.py index 6343310f..c75f0e02 100644 --- a/bindings/go/gen_golden_test.py +++ b/bindings/go/gen_golden_test.py @@ -13,6 +13,9 @@ ROOT = os.path.normpath(os.path.join(os.path.dirname(__file__), "..", "..")) G = os.path.join(ROOT, "testdata", "golden") GEN = open(os.path.join(ROOT, "bindings", "go", "indicators_gen.go"), encoding="utf-8").read() +# Canonical core Indicator::name() per indicator, shared across every binding. +NAMES = json.load(open(os.path.join(G, "names.json"))) + # Go constructor parameter types, keyed by canonical (== Go type name). ctor_types = {} for m in re.finditer(r"func New(\w+)\(([^)]*)\)\s*\(\*\w+, error\)", GEN): @@ -81,6 +84,9 @@ def block(canon): lines.append('\t\tif err != nil {') lines.append(f'\t\t\tt.Fatalf("new {canon}: %v", err)') lines.append("\t\t}") + lines.append(f'\t\tif n := ind.Name(); n != {json.dumps(NAMES[canon])} {{') + lines.append(f'\t\t\tt.Errorf("name: got %q want %q", n, {json.dumps(NAMES[canon])})') + lines.append("\t\t}") lines.append("\t\tgot := make([][]float64, len(rows))") lines.append("\t\tfor i, r := range rows {") if a == "scalar_f64": diff --git a/bindings/go/golden_all_test.go b/bindings/go/golden_all_test.go index 91f83286..02a8252d 100644 --- a/bindings/go/golden_all_test.go +++ b/bindings/go/golden_all_test.go @@ -191,6 +191,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AbandonedBaby: %v", err) } + if n := ind.Name(); n != "AbandonedBaby" { + t.Errorf("name: got %q want %q", n, "AbandonedBaby") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -202,6 +205,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Abcd: %v", err) } + if n := ind.Name(); n != "Abcd" { + t.Errorf("name: got %q want %q", n, "Abcd") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -213,6 +219,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AbsoluteBreadthIndex: %v", err) } + if n := ind.Name(); n != "AbsoluteBreadthIndex" { + t.Errorf("name: got %q want %q", n, "AbsoluteBreadthIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -225,6 +234,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AccelerationBands: %v", err) } + if n := ind.Name(); n != "AccelerationBands" { + t.Errorf("name: got %q want %q", n, "AccelerationBands") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -237,6 +249,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AcceleratorOscillator: %v", err) } + if n := ind.Name(); n != "AcceleratorOscillator" { + t.Errorf("name: got %q want %q", n, "AcceleratorOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -248,6 +263,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AdOscillator: %v", err) } + if n := ind.Name(); n != "ADOSC" { + t.Errorf("name: got %q want %q", n, "ADOSC") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -259,6 +277,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AdVolumeLine: %v", err) } + if n := ind.Name(); n != "AdVolumeLine" { + t.Errorf("name: got %q want %q", n, "AdVolumeLine") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -271,6 +292,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AdaptiveCci: %v", err) } + if n := ind.Name(); n != "AdaptiveCci" { + t.Errorf("name: got %q want %q", n, "AdaptiveCci") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -282,6 +306,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AdaptiveCycle: %v", err) } + if n := ind.Name(); n != "AdaptiveCycle" { + t.Errorf("name: got %q want %q", n, "AdaptiveCycle") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -293,6 +320,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AdaptiveLaguerreFilter: %v", err) } + if n := ind.Name(); n != "AdaptiveLaguerre" { + t.Errorf("name: got %q want %q", n, "AdaptiveLaguerre") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -304,6 +334,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AdaptiveRsi: %v", err) } + if n := ind.Name(); n != "AdaptiveRsi" { + t.Errorf("name: got %q want %q", n, "AdaptiveRsi") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -315,6 +348,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Adl: %v", err) } + if n := ind.Name(); n != "ADL" { + t.Errorf("name: got %q want %q", n, "ADL") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -326,6 +362,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AdvanceBlock: %v", err) } + if n := ind.Name(); n != "AdvanceBlock" { + t.Errorf("name: got %q want %q", n, "AdvanceBlock") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -337,6 +376,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AdvanceDecline: %v", err) } + if n := ind.Name(); n != "AdvanceDecline" { + t.Errorf("name: got %q want %q", n, "AdvanceDecline") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -349,6 +391,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AdvanceDeclineRatio: %v", err) } + if n := ind.Name(); n != "AdvanceDeclineRatio" { + t.Errorf("name: got %q want %q", n, "AdvanceDeclineRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -361,6 +406,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Adx: %v", err) } + if n := ind.Name(); n != "ADX" { + t.Errorf("name: got %q want %q", n, "ADX") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -373,6 +421,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Adxr: %v", err) } + if n := ind.Name(); n != "ADXR" { + t.Errorf("name: got %q want %q", n, "ADXR") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -384,6 +435,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Alligator: %v", err) } + if n := ind.Name(); n != "Alligator" { + t.Errorf("name: got %q want %q", n, "Alligator") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -396,6 +450,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Alma: %v", err) } + if n := ind.Name(); n != "ALMA" { + t.Errorf("name: got %q want %q", n, "ALMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -407,6 +464,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Alpha: %v", err) } + if n := ind.Name(); n != "Alpha" { + t.Errorf("name: got %q want %q", n, "Alpha") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -418,6 +478,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AmihudIlliquidity: %v", err) } + if n := ind.Name(); n != "AmihudIlliquidity" { + t.Errorf("name: got %q want %q", n, "AmihudIlliquidity") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[4], r[3] >= r[0], int64(i))} @@ -429,6 +492,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AnchoredRsi: %v", err) } + if n := ind.Name(); n != "AnchoredRSI" { + t.Errorf("name: got %q want %q", n, "AnchoredRSI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -440,6 +506,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AnchoredVwap: %v", err) } + if n := ind.Name(); n != "AnchoredVWAP" { + t.Errorf("name: got %q want %q", n, "AnchoredVWAP") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -451,6 +520,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AndrewsPitchfork: %v", err) } + if n := ind.Name(); n != "AndrewsPitchfork" { + t.Errorf("name: got %q want %q", n, "AndrewsPitchfork") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -463,6 +535,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Apo: %v", err) } + if n := ind.Name(); n != "APO" { + t.Errorf("name: got %q want %q", n, "APO") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -474,6 +549,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Aroon: %v", err) } + if n := ind.Name(); n != "Aroon" { + t.Errorf("name: got %q want %q", n, "Aroon") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -486,6 +564,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AroonOscillator: %v", err) } + if n := ind.Name(); n != "AroonOscillator" { + t.Errorf("name: got %q want %q", n, "AroonOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -497,6 +578,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Atr: %v", err) } + if n := ind.Name(); n != "ATR" { + t.Errorf("name: got %q want %q", n, "ATR") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -508,6 +592,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AtrBands: %v", err) } + if n := ind.Name(); n != "AtrBands" { + t.Errorf("name: got %q want %q", n, "AtrBands") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -520,6 +607,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AtrRatchet: %v", err) } + if n := ind.Name(); n != "AtrRatchet" { + t.Errorf("name: got %q want %q", n, "AtrRatchet") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -532,6 +622,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AtrTrailingStop: %v", err) } + if n := ind.Name(); n != "AtrTrailingStop" { + t.Errorf("name: got %q want %q", n, "AtrTrailingStop") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -543,6 +636,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AutoFib: %v", err) } + if n := ind.Name(); n != "AutoFib" { + t.Errorf("name: got %q want %q", n, "AutoFib") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -555,6 +651,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Autocorrelation: %v", err) } + if n := ind.Name(); n != "Autocorrelation" { + t.Errorf("name: got %q want %q", n, "Autocorrelation") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -566,6 +665,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AutocorrelationPeriodogram: %v", err) } + if n := ind.Name(); n != "AutocorrelationPeriodogram" { + t.Errorf("name: got %q want %q", n, "AutocorrelationPeriodogram") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -577,6 +679,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AverageDailyRange: %v", err) } + if n := ind.Name(); n != "AverageDailyRange" { + t.Errorf("name: got %q want %q", n, "AverageDailyRange") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -588,6 +693,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AverageDrawdown: %v", err) } + if n := ind.Name(); n != "AverageDrawdown" { + t.Errorf("name: got %q want %q", n, "AverageDrawdown") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -599,6 +707,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AvgPrice: %v", err) } + if n := ind.Name(); n != "AVGPRICE" { + t.Errorf("name: got %q want %q", n, "AVGPRICE") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -610,6 +721,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AwesomeOscillator: %v", err) } + if n := ind.Name(); n != "AwesomeOscillator" { + t.Errorf("name: got %q want %q", n, "AwesomeOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -621,6 +735,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new AwesomeOscillatorHistogram: %v", err) } + if n := ind.Name(); n != "AwesomeOscillatorHistogram" { + t.Errorf("name: got %q want %q", n, "AwesomeOscillatorHistogram") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -632,6 +749,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BalanceOfPower: %v", err) } + if n := ind.Name(); n != "BalanceOfPower" { + t.Errorf("name: got %q want %q", n, "BalanceOfPower") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -643,6 +763,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BandpassFilter: %v", err) } + if n := ind.Name(); n != "BandpassFilter" { + t.Errorf("name: got %q want %q", n, "BandpassFilter") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -654,6 +777,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Bat: %v", err) } + if n := ind.Name(); n != "Bat" { + t.Errorf("name: got %q want %q", n, "Bat") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -665,6 +791,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BeltHold: %v", err) } + if n := ind.Name(); n != "BeltHold" { + t.Errorf("name: got %q want %q", n, "BeltHold") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -676,6 +805,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Beta: %v", err) } + if n := ind.Name(); n != "Beta" { + t.Errorf("name: got %q want %q", n, "Beta") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -687,6 +819,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BetaNeutralSpread: %v", err) } + if n := ind.Name(); n != "BetaNeutralSpread" { + t.Errorf("name: got %q want %q", n, "BetaNeutralSpread") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -698,6 +833,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BetterVolume: %v", err) } + if n := ind.Name(); n != "BetterVolume" { + t.Errorf("name: got %q want %q", n, "BetterVolume") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -709,6 +847,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BipowerVariation: %v", err) } + if n := ind.Name(); n != "BipowerVariation" { + t.Errorf("name: got %q want %q", n, "BipowerVariation") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -720,6 +861,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BodySizePct: %v", err) } + if n := ind.Name(); n != "BodySizePct" { + t.Errorf("name: got %q want %q", n, "BodySizePct") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -731,6 +875,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BollingerBands: %v", err) } + if n := ind.Name(); n != "BollingerBands" { + t.Errorf("name: got %q want %q", n, "BollingerBands") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -743,6 +890,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BollingerBandwidth: %v", err) } + if n := ind.Name(); n != "BollingerBandwidth" { + t.Errorf("name: got %q want %q", n, "BollingerBandwidth") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -754,6 +904,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BomarBands: %v", err) } + if n := ind.Name(); n != "BomarBands" { + t.Errorf("name: got %q want %q", n, "BomarBands") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -766,6 +919,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BreadthThrust: %v", err) } + if n := ind.Name(); n != "BreadthThrust" { + t.Errorf("name: got %q want %q", n, "BreadthThrust") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -778,6 +934,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Breakaway: %v", err) } + if n := ind.Name(); n != "Breakaway" { + t.Errorf("name: got %q want %q", n, "Breakaway") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -789,6 +948,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BullishPercentIndex: %v", err) } + if n := ind.Name(); n != "BullishPercentIndex" { + t.Errorf("name: got %q want %q", n, "BullishPercentIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -801,6 +963,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new BurkeRatio: %v", err) } + if n := ind.Name(); n != "BurkeRatio" { + t.Errorf("name: got %q want %q", n, "BurkeRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -812,6 +977,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Butterfly: %v", err) } + if n := ind.Name(); n != "Butterfly" { + t.Errorf("name: got %q want %q", n, "Butterfly") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -823,6 +991,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CalendarSpread: %v", err) } + if n := ind.Name(); n != "CalendarSpread" { + t.Errorf("name: got %q want %q", n, "CalendarSpread") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -835,6 +1006,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CalmarRatio: %v", err) } + if n := ind.Name(); n != "CalmarRatio" { + t.Errorf("name: got %q want %q", n, "CalmarRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -846,6 +1020,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Camarilla: %v", err) } + if n := ind.Name(); n != "Camarilla" { + t.Errorf("name: got %q want %q", n, "Camarilla") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -858,6 +1035,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CandleVolume: %v", err) } + if n := ind.Name(); n != "CandleVolume" { + t.Errorf("name: got %q want %q", n, "CandleVolume") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -870,6 +1050,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Cci: %v", err) } + if n := ind.Name(); n != "CCI" { + t.Errorf("name: got %q want %q", n, "CCI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -881,6 +1064,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CenterOfGravity: %v", err) } + if n := ind.Name(); n != "CenterOfGravity" { + t.Errorf("name: got %q want %q", n, "CenterOfGravity") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -892,6 +1078,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CentralPivotRange: %v", err) } + if n := ind.Name(); n != "CentralPivotRange" { + t.Errorf("name: got %q want %q", n, "CentralPivotRange") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -904,6 +1093,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Cfo: %v", err) } + if n := ind.Name(); n != "CFO" { + t.Errorf("name: got %q want %q", n, "CFO") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -915,6 +1107,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ChaikinMoneyFlow: %v", err) } + if n := ind.Name(); n != "CMF" { + t.Errorf("name: got %q want %q", n, "CMF") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -926,6 +1121,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ChaikinOscillator: %v", err) } + if n := ind.Name(); n != "ChaikinOscillator" { + t.Errorf("name: got %q want %q", n, "ChaikinOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -937,6 +1135,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ChaikinVolatility: %v", err) } + if n := ind.Name(); n != "ChaikinVolatility" { + t.Errorf("name: got %q want %q", n, "ChaikinVolatility") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -948,6 +1149,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ChandeKrollStop: %v", err) } + if n := ind.Name(); n != "ChandeKrollStop" { + t.Errorf("name: got %q want %q", n, "ChandeKrollStop") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -960,6 +1164,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ChandelierExit: %v", err) } + if n := ind.Name(); n != "ChandelierExit" { + t.Errorf("name: got %q want %q", n, "ChandelierExit") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -972,6 +1179,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ChoppinessIndex: %v", err) } + if n := ind.Name(); n != "ChoppinessIndex" { + t.Errorf("name: got %q want %q", n, "ChoppinessIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -983,6 +1193,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ClassicPivots: %v", err) } + if n := ind.Name(); n != "ClassicPivots" { + t.Errorf("name: got %q want %q", n, "ClassicPivots") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -995,6 +1208,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CloseVsOpen: %v", err) } + if n := ind.Name(); n != "CloseVsOpen" { + t.Errorf("name: got %q want %q", n, "CloseVsOpen") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1006,6 +1222,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ClosingMarubozu: %v", err) } + if n := ind.Name(); n != "ClosingMarubozu" { + t.Errorf("name: got %q want %q", n, "ClosingMarubozu") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1017,6 +1236,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Cmo: %v", err) } + if n := ind.Name(); n != "CMO" { + t.Errorf("name: got %q want %q", n, "CMO") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1028,6 +1250,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CoefficientOfVariation: %v", err) } + if n := ind.Name(); n != "CoefficientOfVariation" { + t.Errorf("name: got %q want %q", n, "CoefficientOfVariation") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1039,6 +1264,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Cointegration: %v", err) } + if n := ind.Name(); n != "Cointegration" { + t.Errorf("name: got %q want %q", n, "Cointegration") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3], r[0]) @@ -1051,6 +1279,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CommonSenseRatio: %v", err) } + if n := ind.Name(); n != "CommonSenseRatio" { + t.Errorf("name: got %q want %q", n, "CommonSenseRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1062,6 +1293,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CompositeProfile: %v", err) } + if n := ind.Name(); n != "CompositeProfile" { + t.Errorf("name: got %q want %q", n, "CompositeProfile") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1074,6 +1308,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ConcealingBabySwallow: %v", err) } + if n := ind.Name(); n != "ConcealingBabySwallow" { + t.Errorf("name: got %q want %q", n, "ConcealingBabySwallow") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1085,6 +1322,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ConditionalValueAtRisk: %v", err) } + if n := ind.Name(); n != "ConditionalValueAtRisk" { + t.Errorf("name: got %q want %q", n, "ConditionalValueAtRisk") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1096,6 +1336,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ConnorsRsi: %v", err) } + if n := ind.Name(); n != "ConnorsRSI" { + t.Errorf("name: got %q want %q", n, "ConnorsRSI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1107,6 +1350,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Coppock: %v", err) } + if n := ind.Name(); n != "Coppock" { + t.Errorf("name: got %q want %q", n, "Coppock") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1118,6 +1364,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CorrelationTrendIndicator: %v", err) } + if n := ind.Name(); n != "CorrelationTrendIndicator" { + t.Errorf("name: got %q want %q", n, "CorrelationTrendIndicator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1129,6 +1378,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Counterattack: %v", err) } + if n := ind.Name(); n != "Counterattack" { + t.Errorf("name: got %q want %q", n, "Counterattack") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1140,6 +1392,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Crab: %v", err) } + if n := ind.Name(); n != "Crab" { + t.Errorf("name: got %q want %q", n, "Crab") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1151,6 +1406,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CumulativeVolumeDelta: %v", err) } + if n := ind.Name(); n != "CumulativeVolumeDelta" { + t.Errorf("name: got %q want %q", n, "CumulativeVolumeDelta") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[4], r[3] >= r[0], int64(i))} @@ -1162,6 +1420,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CumulativeVolumeIndex: %v", err) } + if n := ind.Name(); n != "CumulativeVolumeIndex" { + t.Errorf("name: got %q want %q", n, "CumulativeVolumeIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -1174,6 +1435,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CupAndHandle: %v", err) } + if n := ind.Name(); n != "CupAndHandle" { + t.Errorf("name: got %q want %q", n, "CupAndHandle") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1185,6 +1449,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new CyberneticCycle: %v", err) } + if n := ind.Name(); n != "CyberneticCycle" { + t.Errorf("name: got %q want %q", n, "CyberneticCycle") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1196,6 +1463,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Cypher: %v", err) } + if n := ind.Name(); n != "Cypher" { + t.Errorf("name: got %q want %q", n, "Cypher") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1207,6 +1477,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DayOfWeekProfile: %v", err) } + if n := ind.Name(); n != "DayOfWeekProfile" { + t.Errorf("name: got %q want %q", n, "DayOfWeekProfile") + } got := make([][]float64, len(rows)) for i, r := range rows { bins, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1223,6 +1496,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Decycler: %v", err) } + if n := ind.Name(); n != "Decycler" { + t.Errorf("name: got %q want %q", n, "Decycler") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1234,6 +1510,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DecyclerOscillator: %v", err) } + if n := ind.Name(); n != "DecyclerOscillator" { + t.Errorf("name: got %q want %q", n, "DecyclerOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1245,6 +1524,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Dema: %v", err) } + if n := ind.Name(); n != "DEMA" { + t.Errorf("name: got %q want %q", n, "DEMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1256,6 +1538,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DemandIndex: %v", err) } + if n := ind.Name(); n != "DemandIndex" { + t.Errorf("name: got %q want %q", n, "DemandIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1267,6 +1552,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DemarkPivots: %v", err) } + if n := ind.Name(); n != "DemarkPivots" { + t.Errorf("name: got %q want %q", n, "DemarkPivots") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1279,6 +1567,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DepthSlope: %v", err) } + if n := ind.Name(); n != "DepthSlope" { + t.Errorf("name: got %q want %q", n, "DepthSlope") + } got := make([][]float64, len(rows)) for i, r := range rows { bp, bs, ap, as_ := obLists(r) @@ -1291,6 +1582,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DerivativeOscillator: %v", err) } + if n := ind.Name(); n != "DerivativeOscillator" { + t.Errorf("name: got %q want %q", n, "DerivativeOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1302,6 +1596,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DetrendedStdDev: %v", err) } + if n := ind.Name(); n != "DetrendedStdDev" { + t.Errorf("name: got %q want %q", n, "DetrendedStdDev") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1313,6 +1610,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DisparityIndex: %v", err) } + if n := ind.Name(); n != "DisparityIndex" { + t.Errorf("name: got %q want %q", n, "DisparityIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1324,6 +1624,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DistanceSsd: %v", err) } + if n := ind.Name(); n != "DistanceSsd" { + t.Errorf("name: got %q want %q", n, "DistanceSsd") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -1335,6 +1638,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Doji: %v", err) } + if n := ind.Name(); n != "Doji" { + t.Errorf("name: got %q want %q", n, "Doji") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1346,6 +1652,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DojiStar: %v", err) } + if n := ind.Name(); n != "DojiStar" { + t.Errorf("name: got %q want %q", n, "DojiStar") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1357,6 +1666,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DollarBars: %v", err) } + if n := ind.Name(); n != "DollarBars" { + t.Errorf("name: got %q want %q", n, "DollarBars") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = flattenBars(ind.Update(r[0], r[1], r[2], r[3], r[4], 0)) @@ -1368,6 +1680,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Donchian: %v", err) } + if n := ind.Name(); n != "DonchianChannels" { + t.Errorf("name: got %q want %q", n, "DonchianChannels") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1380,6 +1695,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DonchianStop: %v", err) } + if n := ind.Name(); n != "DonchianStop" { + t.Errorf("name: got %q want %q", n, "DonchianStop") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1392,6 +1710,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DoubleBollinger: %v", err) } + if n := ind.Name(); n != "DoubleBollinger" { + t.Errorf("name: got %q want %q", n, "DoubleBollinger") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -1404,6 +1725,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DoubleTopBottom: %v", err) } + if n := ind.Name(); n != "DoubleTopBottom" { + t.Errorf("name: got %q want %q", n, "DoubleTopBottom") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1415,6 +1739,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DownsideGapThreeMethods: %v", err) } + if n := ind.Name(); n != "DownsideGapThreeMethods" { + t.Errorf("name: got %q want %q", n, "DownsideGapThreeMethods") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1426,6 +1753,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Dpo: %v", err) } + if n := ind.Name(); n != "DPO" { + t.Errorf("name: got %q want %q", n, "DPO") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1437,6 +1767,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DragonflyDoji: %v", err) } + if n := ind.Name(); n != "DragonflyDoji" { + t.Errorf("name: got %q want %q", n, "DragonflyDoji") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1448,6 +1781,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DrawdownDuration: %v", err) } + if n := ind.Name(); n != "DrawdownDuration" { + t.Errorf("name: got %q want %q", n, "DrawdownDuration") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1459,6 +1795,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DumplingTop: %v", err) } + if n := ind.Name(); n != "DumplingTop" { + t.Errorf("name: got %q want %q", n, "DumplingTop") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1470,6 +1809,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Dx: %v", err) } + if n := ind.Name(); n != "DX" { + t.Errorf("name: got %q want %q", n, "DX") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1481,6 +1823,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new DynamicMomentumIndex: %v", err) } + if n := ind.Name(); n != "DynamicMomentumIndex" { + t.Errorf("name: got %q want %q", n, "DynamicMomentumIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1492,6 +1837,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new EaseOfMovement: %v", err) } + if n := ind.Name(); n != "EaseOfMovement" { + t.Errorf("name: got %q want %q", n, "EaseOfMovement") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1503,6 +1851,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new EffectiveSpread: %v", err) } + if n := ind.Name(); n != "EffectiveSpread" { + t.Errorf("name: got %q want %q", n, "EffectiveSpread") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[4], r[3] >= r[0], int64(i), (r[1]+r[2])/2)} @@ -1514,6 +1865,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new EhlersStochastic: %v", err) } + if n := ind.Name(); n != "EhlersStochastic" { + t.Errorf("name: got %q want %q", n, "EhlersStochastic") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1525,6 +1879,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Ehma: %v", err) } + if n := ind.Name(); n != "EHMA" { + t.Errorf("name: got %q want %q", n, "EHMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1536,6 +1893,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ElderImpulse: %v", err) } + if n := ind.Name(); n != "ElderImpulse" { + t.Errorf("name: got %q want %q", n, "ElderImpulse") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1547,6 +1907,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ElderRay: %v", err) } + if n := ind.Name(); n != "ElderRay" { + t.Errorf("name: got %q want %q", n, "ElderRay") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1559,6 +1922,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ElderSafeZone: %v", err) } + if n := ind.Name(); n != "ElderSafeZone" { + t.Errorf("name: got %q want %q", n, "ElderSafeZone") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1571,6 +1937,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Ema: %v", err) } + if n := ind.Name(); n != "EMA" { + t.Errorf("name: got %q want %q", n, "EMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1582,6 +1951,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new EmpiricalModeDecomposition: %v", err) } + if n := ind.Name(); n != "EmpiricalModeDecomposition" { + t.Errorf("name: got %q want %q", n, "EmpiricalModeDecomposition") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1593,6 +1965,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Engulfing: %v", err) } + if n := ind.Name(); n != "Engulfing" { + t.Errorf("name: got %q want %q", n, "Engulfing") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1604,6 +1979,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Equivolume: %v", err) } + if n := ind.Name(); n != "Equivolume" { + t.Errorf("name: got %q want %q", n, "Equivolume") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1616,6 +1994,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new EstimatedLeverageRatio: %v", err) } + if n := ind.Name(); n != "EstimatedLeverageRatio" { + t.Errorf("name: got %q want %q", n, "EstimatedLeverageRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -1628,6 +2009,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new EvenBetterSinewave: %v", err) } + if n := ind.Name(); n != "EvenBetterSinewave" { + t.Errorf("name: got %q want %q", n, "EvenBetterSinewave") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1639,6 +2023,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new EveningDojiStar: %v", err) } + if n := ind.Name(); n != "EveningDojiStar" { + t.Errorf("name: got %q want %q", n, "EveningDojiStar") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1650,6 +2037,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Evwma: %v", err) } + if n := ind.Name(); n != "EVWMA" { + t.Errorf("name: got %q want %q", n, "EVWMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1661,6 +2051,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new EwmaVolatility: %v", err) } + if n := ind.Name(); n != "EwmaVolatility" { + t.Errorf("name: got %q want %q", n, "EwmaVolatility") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1672,6 +2065,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Expectancy: %v", err) } + if n := ind.Name(); n != "Expectancy" { + t.Errorf("name: got %q want %q", n, "Expectancy") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1683,6 +2079,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FallingThreeMethods: %v", err) } + if n := ind.Name(); n != "FallingThreeMethods" { + t.Errorf("name: got %q want %q", n, "FallingThreeMethods") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1694,6 +2093,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Fama: %v", err) } + if n := ind.Name(); n != "FAMA" { + t.Errorf("name: got %q want %q", n, "FAMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1705,6 +2107,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FibArcs: %v", err) } + if n := ind.Name(); n != "FibArcs" { + t.Errorf("name: got %q want %q", n, "FibArcs") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1717,6 +2122,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FibChannel: %v", err) } + if n := ind.Name(); n != "FibChannel" { + t.Errorf("name: got %q want %q", n, "FibChannel") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1729,6 +2137,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FibConfluence: %v", err) } + if n := ind.Name(); n != "FibConfluence" { + t.Errorf("name: got %q want %q", n, "FibConfluence") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1741,6 +2152,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FibExtension: %v", err) } + if n := ind.Name(); n != "FibExtension" { + t.Errorf("name: got %q want %q", n, "FibExtension") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1753,6 +2167,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FibFan: %v", err) } + if n := ind.Name(); n != "FibFan" { + t.Errorf("name: got %q want %q", n, "FibFan") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1765,6 +2182,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FibProjection: %v", err) } + if n := ind.Name(); n != "FibProjection" { + t.Errorf("name: got %q want %q", n, "FibProjection") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1777,6 +2197,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FibRetracement: %v", err) } + if n := ind.Name(); n != "FibRetracement" { + t.Errorf("name: got %q want %q", n, "FibRetracement") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1789,6 +2212,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FibTimeZones: %v", err) } + if n := ind.Name(); n != "FibTimeZones" { + t.Errorf("name: got %q want %q", n, "FibTimeZones") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1801,6 +2227,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FibonacciPivots: %v", err) } + if n := ind.Name(); n != "FibonacciPivots" { + t.Errorf("name: got %q want %q", n, "FibonacciPivots") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1813,6 +2242,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FisherRsi: %v", err) } + if n := ind.Name(); n != "FisherRSI" { + t.Errorf("name: got %q want %q", n, "FisherRSI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1824,6 +2256,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FisherTransform: %v", err) } + if n := ind.Name(); n != "FisherTransform" { + t.Errorf("name: got %q want %q", n, "FisherTransform") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1835,6 +2270,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FlagPennant: %v", err) } + if n := ind.Name(); n != "FlagPennant" { + t.Errorf("name: got %q want %q", n, "FlagPennant") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1846,6 +2284,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Footprint: %v", err) } + if n := ind.Name(); n != "Footprint" { + t.Errorf("name: got %q want %q", n, "Footprint") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = flattenBars(ind.Update(r[3], r[4], r[3] >= r[0], int64(i))) @@ -1857,6 +2298,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ForceIndex: %v", err) } + if n := ind.Name(); n != "ForceIndex" { + t.Errorf("name: got %q want %q", n, "ForceIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1868,6 +2312,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FractalChaosBands: %v", err) } + if n := ind.Name(); n != "FractalChaosBands" { + t.Errorf("name: got %q want %q", n, "FractalChaosBands") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -1880,6 +2327,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Frama: %v", err) } + if n := ind.Name(); n != "FRAMA" { + t.Errorf("name: got %q want %q", n, "FRAMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1891,6 +2341,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FryPanBottom: %v", err) } + if n := ind.Name(); n != "FryPanBottom" { + t.Errorf("name: got %q want %q", n, "FryPanBottom") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1902,6 +2355,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FundingBasis: %v", err) } + if n := ind.Name(); n != "FundingBasis" { + t.Errorf("name: got %q want %q", n, "FundingBasis") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -1914,6 +2370,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FundingImpliedApr: %v", err) } + if n := ind.Name(); n != "FundingImpliedApr" { + t.Errorf("name: got %q want %q", n, "FundingImpliedApr") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -1926,6 +2385,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FundingRate: %v", err) } + if n := ind.Name(); n != "FundingRate" { + t.Errorf("name: got %q want %q", n, "FundingRate") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -1938,6 +2400,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FundingRateMean: %v", err) } + if n := ind.Name(); n != "FundingRateMean" { + t.Errorf("name: got %q want %q", n, "FundingRateMean") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -1950,6 +2415,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new FundingRateZScore: %v", err) } + if n := ind.Name(); n != "FundingRateZScore" { + t.Errorf("name: got %q want %q", n, "FundingRateZScore") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -1962,6 +2430,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new GainLossRatio: %v", err) } + if n := ind.Name(); n != "GainLossRatio" { + t.Errorf("name: got %q want %q", n, "GainLossRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1973,6 +2444,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new GainToPainRatio: %v", err) } + if n := ind.Name(); n != "GainToPainRatio" { + t.Errorf("name: got %q want %q", n, "GainToPainRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -1984,6 +2458,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new GapSideBySideWhite: %v", err) } + if n := ind.Name(); n != "GapSideBySideWhite" { + t.Errorf("name: got %q want %q", n, "GapSideBySideWhite") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -1995,6 +2472,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Garch11: %v", err) } + if n := ind.Name(); n != "Garch11" { + t.Errorf("name: got %q want %q", n, "Garch11") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2006,6 +2486,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new GarmanKlassVolatility: %v", err) } + if n := ind.Name(); n != "GarmanKlassVolatility" { + t.Errorf("name: got %q want %q", n, "GarmanKlassVolatility") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2017,6 +2500,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Gartley: %v", err) } + if n := ind.Name(); n != "Gartley" { + t.Errorf("name: got %q want %q", n, "Gartley") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2028,6 +2514,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new GatorOscillator: %v", err) } + if n := ind.Name(); n != "GatorOscillator" { + t.Errorf("name: got %q want %q", n, "GatorOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -2040,6 +2529,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new GeneralizedDema: %v", err) } + if n := ind.Name(); n != "GD" { + t.Errorf("name: got %q want %q", n, "GD") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2051,6 +2543,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new GeometricMa: %v", err) } + if n := ind.Name(); n != "GMA" { + t.Errorf("name: got %q want %q", n, "GMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2062,6 +2557,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new GoldenPocket: %v", err) } + if n := ind.Name(); n != "GoldenPocket" { + t.Errorf("name: got %q want %q", n, "GoldenPocket") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -2074,6 +2572,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new GrangerCausality: %v", err) } + if n := ind.Name(); n != "GrangerCausality" { + t.Errorf("name: got %q want %q", n, "GrangerCausality") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -2085,6 +2586,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new GravestoneDoji: %v", err) } + if n := ind.Name(); n != "GravestoneDoji" { + t.Errorf("name: got %q want %q", n, "GravestoneDoji") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2096,6 +2600,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Hammer: %v", err) } + if n := ind.Name(); n != "Hammer" { + t.Errorf("name: got %q want %q", n, "Hammer") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2107,6 +2614,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HangingMan: %v", err) } + if n := ind.Name(); n != "HangingMan" { + t.Errorf("name: got %q want %q", n, "HangingMan") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2118,6 +2628,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Harami: %v", err) } + if n := ind.Name(); n != "Harami" { + t.Errorf("name: got %q want %q", n, "Harami") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2129,6 +2642,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HaramiCross: %v", err) } + if n := ind.Name(); n != "HaramiCross" { + t.Errorf("name: got %q want %q", n, "HaramiCross") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2140,6 +2656,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HasbrouckInformationShare: %v", err) } + if n := ind.Name(); n != "HasbrouckInformationShare" { + t.Errorf("name: got %q want %q", n, "HasbrouckInformationShare") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -2151,6 +2670,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HeadAndShoulders: %v", err) } + if n := ind.Name(); n != "HeadAndShoulders" { + t.Errorf("name: got %q want %q", n, "HeadAndShoulders") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2162,6 +2684,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HeikinAshi: %v", err) } + if n := ind.Name(); n != "HeikinAshi" { + t.Errorf("name: got %q want %q", n, "HeikinAshi") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -2174,6 +2699,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HeikinAshiOscillator: %v", err) } + if n := ind.Name(); n != "HeikinAshiOscillator" { + t.Errorf("name: got %q want %q", n, "HeikinAshiOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2185,6 +2713,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HiLoActivator: %v", err) } + if n := ind.Name(); n != "HiLoActivator" { + t.Errorf("name: got %q want %q", n, "HiLoActivator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2196,6 +2727,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HighLowIndex: %v", err) } + if n := ind.Name(); n != "HighLowIndex" { + t.Errorf("name: got %q want %q", n, "HighLowIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -2208,6 +2742,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HighLowRange: %v", err) } + if n := ind.Name(); n != "HighLowRange" { + t.Errorf("name: got %q want %q", n, "HighLowRange") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2219,6 +2756,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HighLowVolumeNodes: %v", err) } + if n := ind.Name(); n != "HighLowVolumeNodes" { + t.Errorf("name: got %q want %q", n, "HighLowVolumeNodes") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -2231,6 +2771,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HighWave: %v", err) } + if n := ind.Name(); n != "HighWave" { + t.Errorf("name: got %q want %q", n, "HighWave") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2242,6 +2785,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HighpassFilter: %v", err) } + if n := ind.Name(); n != "HighpassFilter" { + t.Errorf("name: got %q want %q", n, "HighpassFilter") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2253,6 +2799,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Hikkake: %v", err) } + if n := ind.Name(); n != "Hikkake" { + t.Errorf("name: got %q want %q", n, "Hikkake") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2264,6 +2813,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HikkakeModified: %v", err) } + if n := ind.Name(); n != "HikkakeModified" { + t.Errorf("name: got %q want %q", n, "HikkakeModified") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2275,6 +2827,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HilbertDominantCycle: %v", err) } + if n := ind.Name(); n != "HilbertDominantCycle" { + t.Errorf("name: got %q want %q", n, "HilbertDominantCycle") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2286,6 +2841,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HistoricalVolatility: %v", err) } + if n := ind.Name(); n != "HistoricalVolatility" { + t.Errorf("name: got %q want %q", n, "HistoricalVolatility") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2297,6 +2855,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Hma: %v", err) } + if n := ind.Name(); n != "HMA" { + t.Errorf("name: got %q want %q", n, "HMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2308,6 +2869,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HoltWinters: %v", err) } + if n := ind.Name(); n != "HoltWinters" { + t.Errorf("name: got %q want %q", n, "HoltWinters") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2319,6 +2883,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HomingPigeon: %v", err) } + if n := ind.Name(); n != "HomingPigeon" { + t.Errorf("name: got %q want %q", n, "HomingPigeon") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2330,6 +2897,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HtDcPhase: %v", err) } + if n := ind.Name(); n != "HT_DCPHASE" { + t.Errorf("name: got %q want %q", n, "HT_DCPHASE") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2341,6 +2911,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HtPhasor: %v", err) } + if n := ind.Name(); n != "HT_PHASOR" { + t.Errorf("name: got %q want %q", n, "HT_PHASOR") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -2353,6 +2926,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HtTrendMode: %v", err) } + if n := ind.Name(); n != "HT_TRENDMODE" { + t.Errorf("name: got %q want %q", n, "HT_TRENDMODE") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2364,6 +2940,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HurstChannel: %v", err) } + if n := ind.Name(); n != "HurstChannel" { + t.Errorf("name: got %q want %q", n, "HurstChannel") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -2376,6 +2955,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new HurstExponent: %v", err) } + if n := ind.Name(); n != "HurstExponent" { + t.Errorf("name: got %q want %q", n, "HurstExponent") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2387,6 +2969,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Ichimoku: %v", err) } + if n := ind.Name(); n != "Ichimoku" { + t.Errorf("name: got %q want %q", n, "Ichimoku") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -2399,6 +2984,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new IdenticalThreeCrows: %v", err) } + if n := ind.Name(); n != "IdenticalThreeCrows" { + t.Errorf("name: got %q want %q", n, "IdenticalThreeCrows") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2410,6 +2998,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ImbalanceBars: %v", err) } + if n := ind.Name(); n != "ImbalanceBars" { + t.Errorf("name: got %q want %q", n, "ImbalanceBars") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = flattenBars(ind.Update(r[0], r[1], r[2], r[3], 1.0, 0)) @@ -2421,6 +3012,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new InNeck: %v", err) } + if n := ind.Name(); n != "InNeck" { + t.Errorf("name: got %q want %q", n, "InNeck") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2432,6 +3026,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Inertia: %v", err) } + if n := ind.Name(); n != "Inertia" { + t.Errorf("name: got %q want %q", n, "Inertia") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2443,6 +3040,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new InformationRatio: %v", err) } + if n := ind.Name(); n != "InformationRatio" { + t.Errorf("name: got %q want %q", n, "InformationRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -2454,6 +3054,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new InitialBalance: %v", err) } + if n := ind.Name(); n != "InitialBalance" { + t.Errorf("name: got %q want %q", n, "InitialBalance") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -2466,6 +3069,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new InstantaneousTrendline: %v", err) } + if n := ind.Name(); n != "InstantaneousTrendline" { + t.Errorf("name: got %q want %q", n, "InstantaneousTrendline") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2477,6 +3083,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new IntradayIntensity: %v", err) } + if n := ind.Name(); n != "IntradayIntensity" { + t.Errorf("name: got %q want %q", n, "IntradayIntensity") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2488,6 +3097,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new IntradayMomentumIndex: %v", err) } + if n := ind.Name(); n != "IMI" { + t.Errorf("name: got %q want %q", n, "IMI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2499,6 +3111,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new IntradayVolatilityProfile: %v", err) } + if n := ind.Name(); n != "IntradayVolatilityProfile" { + t.Errorf("name: got %q want %q", n, "IntradayVolatilityProfile") + } got := make([][]float64, len(rows)) for i, r := range rows { bins, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -2515,6 +3130,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new InverseFisherTransform: %v", err) } + if n := ind.Name(); n != "InverseFisherTransform" { + t.Errorf("name: got %q want %q", n, "InverseFisherTransform") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2526,6 +3144,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new InvertedHammer: %v", err) } + if n := ind.Name(); n != "InvertedHammer" { + t.Errorf("name: got %q want %q", n, "InvertedHammer") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2537,6 +3158,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new JarqueBera: %v", err) } + if n := ind.Name(); n != "JarqueBera" { + t.Errorf("name: got %q want %q", n, "JarqueBera") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2548,6 +3172,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Jma: %v", err) } + if n := ind.Name(); n != "JMA" { + t.Errorf("name: got %q want %q", n, "JMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2559,6 +3186,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new JumpIndicator: %v", err) } + if n := ind.Name(); n != "JumpIndicator" { + t.Errorf("name: got %q want %q", n, "JumpIndicator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2570,6 +3200,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new KRatio: %v", err) } + if n := ind.Name(); n != "KRatio" { + t.Errorf("name: got %q want %q", n, "KRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2581,6 +3214,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new KagiBars: %v", err) } + if n := ind.Name(); n != "KagiBars" { + t.Errorf("name: got %q want %q", n, "KagiBars") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = flattenBars(ind.Update(r[3], r[3], r[3], r[3], 1.0, 0)) @@ -2592,6 +3228,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new KalmanHedgeRatio: %v", err) } + if n := ind.Name(); n != "KalmanHedgeRatio" { + t.Errorf("name: got %q want %q", n, "KalmanHedgeRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3], r[0]) @@ -2604,6 +3243,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Kama: %v", err) } + if n := ind.Name(); n != "KAMA" { + t.Errorf("name: got %q want %q", n, "KAMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2615,6 +3257,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new KaseDevStop: %v", err) } + if n := ind.Name(); n != "KaseDevStop" { + t.Errorf("name: got %q want %q", n, "KaseDevStop") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -2627,6 +3272,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new KasePermissionStochastic: %v", err) } + if n := ind.Name(); n != "KasePermissionStochastic" { + t.Errorf("name: got %q want %q", n, "KasePermissionStochastic") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -2639,6 +3287,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new KellyCriterion: %v", err) } + if n := ind.Name(); n != "KellyCriterion" { + t.Errorf("name: got %q want %q", n, "KellyCriterion") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2650,6 +3301,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Keltner: %v", err) } + if n := ind.Name(); n != "KeltnerChannels" { + t.Errorf("name: got %q want %q", n, "KeltnerChannels") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -2662,6 +3316,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new KendallTau: %v", err) } + if n := ind.Name(); n != "KendallTau" { + t.Errorf("name: got %q want %q", n, "KendallTau") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -2673,6 +3330,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Kicking: %v", err) } + if n := ind.Name(); n != "Kicking" { + t.Errorf("name: got %q want %q", n, "Kicking") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2684,6 +3344,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new KickingByLength: %v", err) } + if n := ind.Name(); n != "KickingByLength" { + t.Errorf("name: got %q want %q", n, "KickingByLength") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2695,6 +3358,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Kst: %v", err) } + if n := ind.Name(); n != "KST" { + t.Errorf("name: got %q want %q", n, "KST") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -2707,6 +3373,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Kurtosis: %v", err) } + if n := ind.Name(); n != "Kurtosis" { + t.Errorf("name: got %q want %q", n, "Kurtosis") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2718,6 +3387,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Kvo: %v", err) } + if n := ind.Name(); n != "KVO" { + t.Errorf("name: got %q want %q", n, "KVO") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2729,6 +3401,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new KylesLambda: %v", err) } + if n := ind.Name(); n != "KylesLambda" { + t.Errorf("name: got %q want %q", n, "KylesLambda") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[4], r[3] >= r[0], int64(i), (r[1]+r[2])/2)} @@ -2740,6 +3415,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LadderBottom: %v", err) } + if n := ind.Name(); n != "LadderBottom" { + t.Errorf("name: got %q want %q", n, "LadderBottom") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2751,6 +3429,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LaguerreRsi: %v", err) } + if n := ind.Name(); n != "LaguerreRSI" { + t.Errorf("name: got %q want %q", n, "LaguerreRSI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2762,6 +3443,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LeadLagCrossCorrelation: %v", err) } + if n := ind.Name(); n != "LeadLagCrossCorrelation" { + t.Errorf("name: got %q want %q", n, "LeadLagCrossCorrelation") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3], r[0]) @@ -2774,6 +3458,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LinRegAngle: %v", err) } + if n := ind.Name(); n != "LinRegAngle" { + t.Errorf("name: got %q want %q", n, "LinRegAngle") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2785,6 +3472,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LinRegChannel: %v", err) } + if n := ind.Name(); n != "LinRegChannel" { + t.Errorf("name: got %q want %q", n, "LinRegChannel") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -2797,6 +3487,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LinRegIntercept: %v", err) } + if n := ind.Name(); n != "LINEARREG_INTERCEPT" { + t.Errorf("name: got %q want %q", n, "LINEARREG_INTERCEPT") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2808,6 +3501,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LinRegSlope: %v", err) } + if n := ind.Name(); n != "LinRegSlope" { + t.Errorf("name: got %q want %q", n, "LinRegSlope") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2819,6 +3515,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LinearRegression: %v", err) } + if n := ind.Name(); n != "LinearRegression" { + t.Errorf("name: got %q want %q", n, "LinearRegression") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2830,6 +3529,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LiquidationFeatures: %v", err) } + if n := ind.Name(); n != "LiquidationFeatures" { + t.Errorf("name: got %q want %q", n, "LiquidationFeatures") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -2843,6 +3545,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LogReturn: %v", err) } + if n := ind.Name(); n != "LogReturn" { + t.Errorf("name: got %q want %q", n, "LogReturn") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2854,6 +3559,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LongLeggedDoji: %v", err) } + if n := ind.Name(); n != "LongLeggedDoji" { + t.Errorf("name: got %q want %q", n, "LongLeggedDoji") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2865,6 +3573,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LongLine: %v", err) } + if n := ind.Name(); n != "LongLine" { + t.Errorf("name: got %q want %q", n, "LongLine") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2876,6 +3587,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new LongShortRatio: %v", err) } + if n := ind.Name(); n != "LongShortRatio" { + t.Errorf("name: got %q want %q", n, "LongShortRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -2888,6 +3602,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new M2Measure: %v", err) } + if n := ind.Name(); n != "M2Measure" { + t.Errorf("name: got %q want %q", n, "M2Measure") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2899,6 +3616,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MaEnvelope: %v", err) } + if n := ind.Name(); n != "MaEnvelope" { + t.Errorf("name: got %q want %q", n, "MaEnvelope") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -2911,6 +3631,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MacdExt: %v", err) } + if n := ind.Name(); n != "MACDEXT" { + t.Errorf("name: got %q want %q", n, "MACDEXT") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -2923,6 +3646,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MacdFix: %v", err) } + if n := ind.Name(); n != "MACDFIX" { + t.Errorf("name: got %q want %q", n, "MACDFIX") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -2935,6 +3661,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MacdHistogram: %v", err) } + if n := ind.Name(); n != "MacdHistogram" { + t.Errorf("name: got %q want %q", n, "MacdHistogram") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2946,6 +3675,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MacdIndicator: %v", err) } + if n := ind.Name(); n != "MACD" { + t.Errorf("name: got %q want %q", n, "MACD") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -2958,6 +3690,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Mama: %v", err) } + if n := ind.Name(); n != "MAMA" { + t.Errorf("name: got %q want %q", n, "MAMA") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -2970,6 +3705,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MarketFacilitationIndex: %v", err) } + if n := ind.Name(); n != "MarketFacilitationIndex" { + t.Errorf("name: got %q want %q", n, "MarketFacilitationIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -2981,6 +3719,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MartinRatio: %v", err) } + if n := ind.Name(); n != "MartinRatio" { + t.Errorf("name: got %q want %q", n, "MartinRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -2992,6 +3733,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Marubozu: %v", err) } + if n := ind.Name(); n != "Marubozu" { + t.Errorf("name: got %q want %q", n, "Marubozu") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3003,6 +3747,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MassIndex: %v", err) } + if n := ind.Name(); n != "MassIndex" { + t.Errorf("name: got %q want %q", n, "MassIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3014,6 +3761,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MatHold: %v", err) } + if n := ind.Name(); n != "MatHold" { + t.Errorf("name: got %q want %q", n, "MatHold") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3025,6 +3775,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MatchingLow: %v", err) } + if n := ind.Name(); n != "MatchingLow" { + t.Errorf("name: got %q want %q", n, "MatchingLow") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3036,6 +3789,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MaxDrawdown: %v", err) } + if n := ind.Name(); n != "MaxDrawdown" { + t.Errorf("name: got %q want %q", n, "MaxDrawdown") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3047,6 +3803,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new McClellanOscillator: %v", err) } + if n := ind.Name(); n != "McClellanOscillator" { + t.Errorf("name: got %q want %q", n, "McClellanOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -3059,6 +3818,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new McClellanSummationIndex: %v", err) } + if n := ind.Name(); n != "McClellanSummationIndex" { + t.Errorf("name: got %q want %q", n, "McClellanSummationIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -3071,6 +3833,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new McGinleyDynamic: %v", err) } + if n := ind.Name(); n != "McGinleyDynamic" { + t.Errorf("name: got %q want %q", n, "McGinleyDynamic") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3082,6 +3847,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MedianAbsoluteDeviation: %v", err) } + if n := ind.Name(); n != "MedianAbsoluteDeviation" { + t.Errorf("name: got %q want %q", n, "MedianAbsoluteDeviation") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3093,6 +3861,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MedianChannel: %v", err) } + if n := ind.Name(); n != "MedianChannel" { + t.Errorf("name: got %q want %q", n, "MedianChannel") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -3105,6 +3876,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MedianMa: %v", err) } + if n := ind.Name(); n != "MedianMA" { + t.Errorf("name: got %q want %q", n, "MedianMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3116,6 +3890,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MedianPrice: %v", err) } + if n := ind.Name(); n != "MedianPrice" { + t.Errorf("name: got %q want %q", n, "MedianPrice") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3127,6 +3904,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Mfi: %v", err) } + if n := ind.Name(); n != "MFI" { + t.Errorf("name: got %q want %q", n, "MFI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3138,6 +3918,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Microprice: %v", err) } + if n := ind.Name(); n != "Microprice" { + t.Errorf("name: got %q want %q", n, "Microprice") + } got := make([][]float64, len(rows)) for i, r := range rows { bp, bs, ap, as_ := obLists(r) @@ -3150,6 +3933,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MidPoint: %v", err) } + if n := ind.Name(); n != "MIDPOINT" { + t.Errorf("name: got %q want %q", n, "MIDPOINT") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3161,6 +3947,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MidPrice: %v", err) } + if n := ind.Name(); n != "MIDPRICE" { + t.Errorf("name: got %q want %q", n, "MIDPRICE") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3172,6 +3961,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MinusDi: %v", err) } + if n := ind.Name(); n != "MINUS_DI" { + t.Errorf("name: got %q want %q", n, "MINUS_DI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3183,6 +3975,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MinusDm: %v", err) } + if n := ind.Name(); n != "MINUS_DM" { + t.Errorf("name: got %q want %q", n, "MINUS_DM") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3194,6 +3989,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ModifiedMaStop: %v", err) } + if n := ind.Name(); n != "ModifiedMaStop" { + t.Errorf("name: got %q want %q", n, "ModifiedMaStop") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -3206,6 +4004,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Mom: %v", err) } + if n := ind.Name(); n != "MOM" { + t.Errorf("name: got %q want %q", n, "MOM") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3217,6 +4018,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MorningDojiStar: %v", err) } + if n := ind.Name(); n != "MorningDojiStar" { + t.Errorf("name: got %q want %q", n, "MorningDojiStar") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3228,6 +4032,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MorningEveningStar: %v", err) } + if n := ind.Name(); n != "MorningEveningStar" { + t.Errorf("name: got %q want %q", n, "MorningEveningStar") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3239,6 +4046,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new MurreyMathLines: %v", err) } + if n := ind.Name(); n != "MurreyMathLines" { + t.Errorf("name: got %q want %q", n, "MurreyMathLines") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -3251,6 +4061,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new NakedPoc: %v", err) } + if n := ind.Name(); n != "NakedPoc" { + t.Errorf("name: got %q want %q", n, "NakedPoc") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3262,6 +4075,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Natr: %v", err) } + if n := ind.Name(); n != "NATR" { + t.Errorf("name: got %q want %q", n, "NATR") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3273,6 +4089,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new NewHighsNewLows: %v", err) } + if n := ind.Name(); n != "NewHighsNewLows" { + t.Errorf("name: got %q want %q", n, "NewHighsNewLows") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -3285,6 +4104,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new NewPriceLines: %v", err) } + if n := ind.Name(); n != "NewPriceLines" { + t.Errorf("name: got %q want %q", n, "NewPriceLines") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3296,6 +4118,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Nrtr: %v", err) } + if n := ind.Name(); n != "Nrtr" { + t.Errorf("name: got %q want %q", n, "Nrtr") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -3308,6 +4133,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Nvi: %v", err) } + if n := ind.Name(); n != "NVI" { + t.Errorf("name: got %q want %q", n, "NVI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3319,6 +4147,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OIPriceDivergence: %v", err) } + if n := ind.Name(); n != "OIPriceDivergence" { + t.Errorf("name: got %q want %q", n, "OIPriceDivergence") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -3331,6 +4162,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OIWeighted: %v", err) } + if n := ind.Name(); n != "OIWeighted" { + t.Errorf("name: got %q want %q", n, "OIWeighted") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -3343,6 +4177,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Obv: %v", err) } + if n := ind.Name(); n != "OBV" { + t.Errorf("name: got %q want %q", n, "OBV") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3354,6 +4191,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OiToVolumeRatio: %v", err) } + if n := ind.Name(); n != "OiToVolumeRatio" { + t.Errorf("name: got %q want %q", n, "OiToVolumeRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -3366,6 +4206,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OmegaRatio: %v", err) } + if n := ind.Name(); n != "OmegaRatio" { + t.Errorf("name: got %q want %q", n, "OmegaRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3377,6 +4220,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OnNeck: %v", err) } + if n := ind.Name(); n != "OnNeck" { + t.Errorf("name: got %q want %q", n, "OnNeck") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3388,6 +4234,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OpenInterestDelta: %v", err) } + if n := ind.Name(); n != "OpenInterestDelta" { + t.Errorf("name: got %q want %q", n, "OpenInterestDelta") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -3400,6 +4249,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OpenInterestMomentum: %v", err) } + if n := ind.Name(); n != "OpenInterestMomentum" { + t.Errorf("name: got %q want %q", n, "OpenInterestMomentum") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -3412,6 +4264,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OpeningMarubozu: %v", err) } + if n := ind.Name(); n != "OpeningMarubozu" { + t.Errorf("name: got %q want %q", n, "OpeningMarubozu") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3423,6 +4278,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OpeningRange: %v", err) } + if n := ind.Name(); n != "OpeningRange" { + t.Errorf("name: got %q want %q", n, "OpeningRange") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -3435,6 +4293,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OrderBookImbalanceFull: %v", err) } + if n := ind.Name(); n != "OrderBookImbalanceFull" { + t.Errorf("name: got %q want %q", n, "OrderBookImbalanceFull") + } got := make([][]float64, len(rows)) for i, r := range rows { bp, bs, ap, as_ := obLists(r) @@ -3447,6 +4308,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OrderBookImbalanceTop1: %v", err) } + if n := ind.Name(); n != "OrderBookImbalanceTop1" { + t.Errorf("name: got %q want %q", n, "OrderBookImbalanceTop1") + } got := make([][]float64, len(rows)) for i, r := range rows { bp, bs, ap, as_ := obLists(r) @@ -3459,6 +4323,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OrderBookImbalanceTopN: %v", err) } + if n := ind.Name(); n != "OrderBookImbalanceTopN" { + t.Errorf("name: got %q want %q", n, "OrderBookImbalanceTopN") + } got := make([][]float64, len(rows)) for i, r := range rows { bp, bs, ap, as_ := obLists(r) @@ -3471,6 +4338,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OrderFlowImbalance: %v", err) } + if n := ind.Name(); n != "OrderFlowImbalance" { + t.Errorf("name: got %q want %q", n, "OrderFlowImbalance") + } got := make([][]float64, len(rows)) for i, r := range rows { bp, bs, ap, as_ := obLists(r) @@ -3483,6 +4353,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OuHalfLife: %v", err) } + if n := ind.Name(); n != "OuHalfLife" { + t.Errorf("name: got %q want %q", n, "OuHalfLife") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -3494,6 +4367,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OvernightGap: %v", err) } + if n := ind.Name(); n != "OvernightGap" { + t.Errorf("name: got %q want %q", n, "OvernightGap") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3505,6 +4381,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new OvernightIntradayReturn: %v", err) } + if n := ind.Name(); n != "OvernightIntradayReturn" { + t.Errorf("name: got %q want %q", n, "OvernightIntradayReturn") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -3517,6 +4396,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PainIndex: %v", err) } + if n := ind.Name(); n != "PainIndex" { + t.Errorf("name: got %q want %q", n, "PainIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3528,6 +4410,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PairSpreadZScore: %v", err) } + if n := ind.Name(); n != "PairSpreadZScore" { + t.Errorf("name: got %q want %q", n, "PairSpreadZScore") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -3539,6 +4424,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PairwiseBeta: %v", err) } + if n := ind.Name(); n != "PairwiseBeta" { + t.Errorf("name: got %q want %q", n, "PairwiseBeta") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -3550,6 +4438,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ParkinsonVolatility: %v", err) } + if n := ind.Name(); n != "ParkinsonVolatility" { + t.Errorf("name: got %q want %q", n, "ParkinsonVolatility") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3561,6 +4452,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PearsonCorrelation: %v", err) } + if n := ind.Name(); n != "PearsonCorrelation" { + t.Errorf("name: got %q want %q", n, "PearsonCorrelation") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -3572,6 +4466,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PercentAboveMa: %v", err) } + if n := ind.Name(); n != "PercentAboveMa" { + t.Errorf("name: got %q want %q", n, "PercentAboveMa") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -3584,6 +4481,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PercentB: %v", err) } + if n := ind.Name(); n != "PercentB" { + t.Errorf("name: got %q want %q", n, "PercentB") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3595,6 +4495,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PercentageTrailingStop: %v", err) } + if n := ind.Name(); n != "PercentageTrailingStop" { + t.Errorf("name: got %q want %q", n, "PercentageTrailingStop") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3606,6 +4509,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PerpetualPremiumIndex: %v", err) } + if n := ind.Name(); n != "PerpetualPremiumIndex" { + t.Errorf("name: got %q want %q", n, "PerpetualPremiumIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -3618,6 +4524,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Pgo: %v", err) } + if n := ind.Name(); n != "PGO" { + t.Errorf("name: got %q want %q", n, "PGO") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3629,6 +4538,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PiercingDarkCloud: %v", err) } + if n := ind.Name(); n != "PiercingDarkCloud" { + t.Errorf("name: got %q want %q", n, "PiercingDarkCloud") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3640,6 +4552,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Pin: %v", err) } + if n := ind.Name(); n != "PIN" { + t.Errorf("name: got %q want %q", n, "PIN") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[4], r[3] >= r[0], int64(i))} @@ -3651,6 +4566,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PivotReversal: %v", err) } + if n := ind.Name(); n != "PivotReversal" { + t.Errorf("name: got %q want %q", n, "PivotReversal") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3662,6 +4580,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PlusDi: %v", err) } + if n := ind.Name(); n != "PLUS_DI" { + t.Errorf("name: got %q want %q", n, "PLUS_DI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3673,6 +4594,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PlusDm: %v", err) } + if n := ind.Name(); n != "PLUS_DM" { + t.Errorf("name: got %q want %q", n, "PLUS_DM") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3684,6 +4608,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Pmo: %v", err) } + if n := ind.Name(); n != "PMO" { + t.Errorf("name: got %q want %q", n, "PMO") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3695,6 +4622,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PointAndFigureBars: %v", err) } + if n := ind.Name(); n != "PointAndFigureBars" { + t.Errorf("name: got %q want %q", n, "PointAndFigureBars") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = flattenBars(ind.Update(r[3], r[3], r[3], r[3], 1.0, 0)) @@ -3706,6 +4636,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PolarizedFractalEfficiency: %v", err) } + if n := ind.Name(); n != "PolarizedFractalEfficiency" { + t.Errorf("name: got %q want %q", n, "PolarizedFractalEfficiency") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3717,6 +4650,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Ppo: %v", err) } + if n := ind.Name(); n != "PPO" { + t.Errorf("name: got %q want %q", n, "PPO") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3728,6 +4664,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new PpoHistogram: %v", err) } + if n := ind.Name(); n != "PpoHistogram" { + t.Errorf("name: got %q want %q", n, "PpoHistogram") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3739,6 +4678,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ProfileShape: %v", err) } + if n := ind.Name(); n != "ProfileShape" { + t.Errorf("name: got %q want %q", n, "ProfileShape") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3750,6 +4692,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ProfitFactor: %v", err) } + if n := ind.Name(); n != "ProfitFactor" { + t.Errorf("name: got %q want %q", n, "ProfitFactor") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3761,6 +4706,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ProjectionBands: %v", err) } + if n := ind.Name(); n != "ProjectionBands" { + t.Errorf("name: got %q want %q", n, "ProjectionBands") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -3773,6 +4721,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ProjectionOscillator: %v", err) } + if n := ind.Name(); n != "ProjectionOscillator" { + t.Errorf("name: got %q want %q", n, "ProjectionOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3784,6 +4735,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Psar: %v", err) } + if n := ind.Name(); n != "PSAR" { + t.Errorf("name: got %q want %q", n, "PSAR") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3795,6 +4749,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Pvi: %v", err) } + if n := ind.Name(); n != "PVI" { + t.Errorf("name: got %q want %q", n, "PVI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3806,6 +4763,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Qqe: %v", err) } + if n := ind.Name(); n != "QQE" { + t.Errorf("name: got %q want %q", n, "QQE") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -3818,6 +4778,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Qstick: %v", err) } + if n := ind.Name(); n != "Qstick" { + t.Errorf("name: got %q want %q", n, "Qstick") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3829,6 +4792,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new QuartileBands: %v", err) } + if n := ind.Name(); n != "QuartileBands" { + t.Errorf("name: got %q want %q", n, "QuartileBands") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -3841,6 +4807,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new QuotedSpread: %v", err) } + if n := ind.Name(); n != "QuotedSpread" { + t.Errorf("name: got %q want %q", n, "QuotedSpread") + } got := make([][]float64, len(rows)) for i, r := range rows { bp, bs, ap, as_ := obLists(r) @@ -3853,6 +4822,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RSquared: %v", err) } + if n := ind.Name(); n != "RSquared" { + t.Errorf("name: got %q want %q", n, "RSquared") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3864,6 +4836,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RangeBars: %v", err) } + if n := ind.Name(); n != "RangeBars" { + t.Errorf("name: got %q want %q", n, "RangeBars") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = flattenBars(ind.Update(r[3], r[3], r[3], r[3], 1.0, 0)) @@ -3875,6 +4850,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RealizedSpread: %v", err) } + if n := ind.Name(); n != "RealizedSpread" { + t.Errorf("name: got %q want %q", n, "RealizedSpread") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[4], r[3] >= r[0], int64(i), (r[1]+r[2])/2)} @@ -3886,6 +4864,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RealizedVolatility: %v", err) } + if n := ind.Name(); n != "RealizedVolatility" { + t.Errorf("name: got %q want %q", n, "RealizedVolatility") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3897,6 +4878,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RecoveryFactor: %v", err) } + if n := ind.Name(); n != "RecoveryFactor" { + t.Errorf("name: got %q want %q", n, "RecoveryFactor") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3908,6 +4892,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RectangleRange: %v", err) } + if n := ind.Name(); n != "RectangleRange" { + t.Errorf("name: got %q want %q", n, "RectangleRange") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3919,6 +4906,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Reflex: %v", err) } + if n := ind.Name(); n != "Reflex" { + t.Errorf("name: got %q want %q", n, "Reflex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3930,6 +4920,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RegimeLabel: %v", err) } + if n := ind.Name(); n != "RegimeLabel" { + t.Errorf("name: got %q want %q", n, "RegimeLabel") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3941,6 +4934,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RelativeStrengthAB: %v", err) } + if n := ind.Name(); n != "RelativeStrengthAB" { + t.Errorf("name: got %q want %q", n, "RelativeStrengthAB") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3], r[0]) @@ -3953,6 +4949,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RenkoBars: %v", err) } + if n := ind.Name(); n != "RenkoBars" { + t.Errorf("name: got %q want %q", n, "RenkoBars") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = flattenBars(ind.Update(r[3], r[3], r[3], r[3], 1.0, 0)) @@ -3964,6 +4963,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RenkoTrailingStop: %v", err) } + if n := ind.Name(); n != "RenkoTrailingStop" { + t.Errorf("name: got %q want %q", n, "RenkoTrailingStop") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -3975,6 +4977,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RickshawMan: %v", err) } + if n := ind.Name(); n != "RickshawMan" { + t.Errorf("name: got %q want %q", n, "RickshawMan") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3986,6 +4991,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RisingThreeMethods: %v", err) } + if n := ind.Name(); n != "RisingThreeMethods" { + t.Errorf("name: got %q want %q", n, "RisingThreeMethods") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -3997,6 +5005,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Rmi: %v", err) } + if n := ind.Name(); n != "RMI" { + t.Errorf("name: got %q want %q", n, "RMI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4008,6 +5019,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Roc: %v", err) } + if n := ind.Name(); n != "ROC" { + t.Errorf("name: got %q want %q", n, "ROC") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4019,6 +5033,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Rocp: %v", err) } + if n := ind.Name(); n != "ROCP" { + t.Errorf("name: got %q want %q", n, "ROCP") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4030,6 +5047,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Rocr: %v", err) } + if n := ind.Name(); n != "ROCR" { + t.Errorf("name: got %q want %q", n, "ROCR") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4041,6 +5061,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Rocr100: %v", err) } + if n := ind.Name(); n != "ROCR100" { + t.Errorf("name: got %q want %q", n, "ROCR100") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4052,6 +5075,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RogersSatchellVolatility: %v", err) } + if n := ind.Name(); n != "RogersSatchellVolatility" { + t.Errorf("name: got %q want %q", n, "RogersSatchellVolatility") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4063,6 +5089,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RollMeasure: %v", err) } + if n := ind.Name(); n != "RollMeasure" { + t.Errorf("name: got %q want %q", n, "RollMeasure") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[4], r[3] >= r[0], int64(i))} @@ -4074,6 +5103,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RollingCorrelation: %v", err) } + if n := ind.Name(); n != "RollingCorrelation" { + t.Errorf("name: got %q want %q", n, "RollingCorrelation") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -4085,6 +5117,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RollingCovariance: %v", err) } + if n := ind.Name(); n != "RollingCovariance" { + t.Errorf("name: got %q want %q", n, "RollingCovariance") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -4096,6 +5131,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RollingIqr: %v", err) } + if n := ind.Name(); n != "RollingIqr" { + t.Errorf("name: got %q want %q", n, "RollingIqr") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4107,6 +5145,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RollingMinMaxScaler: %v", err) } + if n := ind.Name(); n != "RollingMinMaxScaler" { + t.Errorf("name: got %q want %q", n, "RollingMinMaxScaler") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4118,6 +5159,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RollingPercentileRank: %v", err) } + if n := ind.Name(); n != "RollingPercentileRank" { + t.Errorf("name: got %q want %q", n, "RollingPercentileRank") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4129,6 +5173,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RollingQuantile: %v", err) } + if n := ind.Name(); n != "RollingQuantile" { + t.Errorf("name: got %q want %q", n, "RollingQuantile") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4140,6 +5187,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RollingVwap: %v", err) } + if n := ind.Name(); n != "RollingVWAP" { + t.Errorf("name: got %q want %q", n, "RollingVWAP") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4151,6 +5201,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RoofingFilter: %v", err) } + if n := ind.Name(); n != "RoofingFilter" { + t.Errorf("name: got %q want %q", n, "RoofingFilter") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4162,6 +5215,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Rsi: %v", err) } + if n := ind.Name(); n != "RSI" { + t.Errorf("name: got %q want %q", n, "RSI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4173,6 +5229,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Rsx: %v", err) } + if n := ind.Name(); n != "RSX" { + t.Errorf("name: got %q want %q", n, "RSX") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4184,6 +5243,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RunBars: %v", err) } + if n := ind.Name(); n != "RunBars" { + t.Errorf("name: got %q want %q", n, "RunBars") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = flattenBars(ind.Update(r[0], r[1], r[2], r[3], 1.0, 0)) @@ -4195,6 +5257,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Rvi: %v", err) } + if n := ind.Name(); n != "RVI" { + t.Errorf("name: got %q want %q", n, "RVI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4206,6 +5271,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new RviVolatility: %v", err) } + if n := ind.Name(); n != "RVIVolatility" { + t.Errorf("name: got %q want %q", n, "RVIVolatility") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4217,6 +5285,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Rwi: %v", err) } + if n := ind.Name(); n != "RWI" { + t.Errorf("name: got %q want %q", n, "RWI") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -4229,6 +5300,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SampleEntropy: %v", err) } + if n := ind.Name(); n != "SampleEntropy" { + t.Errorf("name: got %q want %q", n, "SampleEntropy") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4240,6 +5314,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SarExt: %v", err) } + if n := ind.Name(); n != "SAREXT" { + t.Errorf("name: got %q want %q", n, "SAREXT") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4251,6 +5328,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SeasonalZScore: %v", err) } + if n := ind.Name(); n != "SeasonalZScore" { + t.Errorf("name: got %q want %q", n, "SeasonalZScore") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4262,6 +5342,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SeparatingLines: %v", err) } + if n := ind.Name(); n != "SeparatingLines" { + t.Errorf("name: got %q want %q", n, "SeparatingLines") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4273,6 +5356,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SessionHighLow: %v", err) } + if n := ind.Name(); n != "SessionHighLow" { + t.Errorf("name: got %q want %q", n, "SessionHighLow") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -4285,6 +5371,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SessionRange: %v", err) } + if n := ind.Name(); n != "SessionRange" { + t.Errorf("name: got %q want %q", n, "SessionRange") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -4297,6 +5386,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SessionVwap: %v", err) } + if n := ind.Name(); n != "SessionVwap" { + t.Errorf("name: got %q want %q", n, "SessionVwap") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4308,6 +5400,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ShannonEntropy: %v", err) } + if n := ind.Name(); n != "ShannonEntropy" { + t.Errorf("name: got %q want %q", n, "ShannonEntropy") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4319,6 +5414,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Shark: %v", err) } + if n := ind.Name(); n != "Shark" { + t.Errorf("name: got %q want %q", n, "Shark") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4330,6 +5428,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SharpeRatio: %v", err) } + if n := ind.Name(); n != "SharpeRatio" { + t.Errorf("name: got %q want %q", n, "SharpeRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4341,6 +5442,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ShootingStar: %v", err) } + if n := ind.Name(); n != "ShootingStar" { + t.Errorf("name: got %q want %q", n, "ShootingStar") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4352,6 +5456,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ShortLine: %v", err) } + if n := ind.Name(); n != "ShortLine" { + t.Errorf("name: got %q want %q", n, "ShortLine") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4363,6 +5470,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SignedVolume: %v", err) } + if n := ind.Name(); n != "SignedVolume" { + t.Errorf("name: got %q want %q", n, "SignedVolume") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[4], r[3] >= r[0], int64(i))} @@ -4374,6 +5484,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SineWave: %v", err) } + if n := ind.Name(); n != "SineWave" { + t.Errorf("name: got %q want %q", n, "SineWave") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4385,6 +5498,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SineWeightedMa: %v", err) } + if n := ind.Name(); n != "SWMA" { + t.Errorf("name: got %q want %q", n, "SWMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4396,6 +5512,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SinglePrints: %v", err) } + if n := ind.Name(); n != "SinglePrints" { + t.Errorf("name: got %q want %q", n, "SinglePrints") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4407,6 +5526,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Skewness: %v", err) } + if n := ind.Name(); n != "Skewness" { + t.Errorf("name: got %q want %q", n, "Skewness") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4418,6 +5540,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Sma: %v", err) } + if n := ind.Name(); n != "SMA" { + t.Errorf("name: got %q want %q", n, "SMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4429,6 +5554,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Smi: %v", err) } + if n := ind.Name(); n != "SMI" { + t.Errorf("name: got %q want %q", n, "SMI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4440,6 +5568,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Smma: %v", err) } + if n := ind.Name(); n != "SMMA" { + t.Errorf("name: got %q want %q", n, "SMMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4451,6 +5582,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SmoothedHeikinAshi: %v", err) } + if n := ind.Name(); n != "SmoothedHeikinAshi" { + t.Errorf("name: got %q want %q", n, "SmoothedHeikinAshi") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -4463,6 +5597,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SortinoRatio: %v", err) } + if n := ind.Name(); n != "SortinoRatio" { + t.Errorf("name: got %q want %q", n, "SortinoRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4474,6 +5611,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SpearmanCorrelation: %v", err) } + if n := ind.Name(); n != "SpearmanCorrelation" { + t.Errorf("name: got %q want %q", n, "SpearmanCorrelation") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -4485,6 +5625,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SpinningTop: %v", err) } + if n := ind.Name(); n != "SpinningTop" { + t.Errorf("name: got %q want %q", n, "SpinningTop") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4496,6 +5639,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SpreadAr1Coefficient: %v", err) } + if n := ind.Name(); n != "SpreadAr1Coefficient" { + t.Errorf("name: got %q want %q", n, "SpreadAr1Coefficient") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -4507,6 +5653,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SpreadBollingerBands: %v", err) } + if n := ind.Name(); n != "SpreadBollingerBands" { + t.Errorf("name: got %q want %q", n, "SpreadBollingerBands") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3], r[0]) @@ -4519,6 +5668,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SpreadHurst: %v", err) } + if n := ind.Name(); n != "SpreadHurst" { + t.Errorf("name: got %q want %q", n, "SpreadHurst") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -4530,6 +5682,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new StalledPattern: %v", err) } + if n := ind.Name(); n != "StalledPattern" { + t.Errorf("name: got %q want %q", n, "StalledPattern") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4541,6 +5696,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new StandardError: %v", err) } + if n := ind.Name(); n != "StandardError" { + t.Errorf("name: got %q want %q", n, "StandardError") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4552,6 +5710,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new StandardErrorBands: %v", err) } + if n := ind.Name(); n != "StandardErrorBands" { + t.Errorf("name: got %q want %q", n, "StandardErrorBands") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -4564,6 +5725,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new StarcBands: %v", err) } + if n := ind.Name(); n != "StarcBands" { + t.Errorf("name: got %q want %q", n, "StarcBands") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -4576,6 +5740,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Stc: %v", err) } + if n := ind.Name(); n != "STC" { + t.Errorf("name: got %q want %q", n, "STC") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4587,6 +5754,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new StdDev: %v", err) } + if n := ind.Name(); n != "StdDev" { + t.Errorf("name: got %q want %q", n, "StdDev") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4598,6 +5768,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new StepTrailingStop: %v", err) } + if n := ind.Name(); n != "StepTrailingStop" { + t.Errorf("name: got %q want %q", n, "StepTrailingStop") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4609,6 +5782,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SterlingRatio: %v", err) } + if n := ind.Name(); n != "SterlingRatio" { + t.Errorf("name: got %q want %q", n, "SterlingRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4620,6 +5796,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new StickSandwich: %v", err) } + if n := ind.Name(); n != "StickSandwich" { + t.Errorf("name: got %q want %q", n, "StickSandwich") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4631,6 +5810,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new StochRsi: %v", err) } + if n := ind.Name(); n != "StochRSI" { + t.Errorf("name: got %q want %q", n, "StochRSI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4642,6 +5824,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Stochastic: %v", err) } + if n := ind.Name(); n != "Stochastic" { + t.Errorf("name: got %q want %q", n, "Stochastic") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -4654,6 +5839,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new StochasticCci: %v", err) } + if n := ind.Name(); n != "StochasticCCI" { + t.Errorf("name: got %q want %q", n, "StochasticCCI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4665,6 +5853,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SuperSmoother: %v", err) } + if n := ind.Name(); n != "SuperSmoother" { + t.Errorf("name: got %q want %q", n, "SuperSmoother") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4676,6 +5867,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new SuperTrend: %v", err) } + if n := ind.Name(); n != "SuperTrend" { + t.Errorf("name: got %q want %q", n, "SuperTrend") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -4688,6 +5882,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new T3: %v", err) } + if n := ind.Name(); n != "T3" { + t.Errorf("name: got %q want %q", n, "T3") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4699,6 +5896,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TailRatio: %v", err) } + if n := ind.Name(); n != "TailRatio" { + t.Errorf("name: got %q want %q", n, "TailRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4710,6 +5910,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TakerBuySellRatio: %v", err) } + if n := ind.Name(); n != "TakerBuySellRatio" { + t.Errorf("name: got %q want %q", n, "TakerBuySellRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -4722,6 +5925,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Takuri: %v", err) } + if n := ind.Name(); n != "Takuri" { + t.Errorf("name: got %q want %q", n, "Takuri") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4733,6 +5939,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TasukiGap: %v", err) } + if n := ind.Name(); n != "TasukiGap" { + t.Errorf("name: got %q want %q", n, "TasukiGap") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4744,6 +5953,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdCamouflage: %v", err) } + if n := ind.Name(); n != "TDCamouflage" { + t.Errorf("name: got %q want %q", n, "TDCamouflage") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4755,6 +5967,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdClop: %v", err) } + if n := ind.Name(); n != "TDClop" { + t.Errorf("name: got %q want %q", n, "TDClop") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4766,6 +5981,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdClopwin: %v", err) } + if n := ind.Name(); n != "TDClopwin" { + t.Errorf("name: got %q want %q", n, "TDClopwin") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4777,6 +5995,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdCombo: %v", err) } + if n := ind.Name(); n != "TDCombo" { + t.Errorf("name: got %q want %q", n, "TDCombo") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4788,6 +6009,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdCountdown: %v", err) } + if n := ind.Name(); n != "TDCountdown" { + t.Errorf("name: got %q want %q", n, "TDCountdown") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4799,6 +6023,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdDWave: %v", err) } + if n := ind.Name(); n != "TDDWave" { + t.Errorf("name: got %q want %q", n, "TDDWave") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4810,6 +6037,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdDeMarker: %v", err) } + if n := ind.Name(); n != "TDDeMarker" { + t.Errorf("name: got %q want %q", n, "TDDeMarker") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4821,6 +6051,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdDifferential: %v", err) } + if n := ind.Name(); n != "TDDifferential" { + t.Errorf("name: got %q want %q", n, "TDDifferential") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4832,6 +6065,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdLines: %v", err) } + if n := ind.Name(); n != "TDLines" { + t.Errorf("name: got %q want %q", n, "TDLines") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -4844,6 +6080,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdMovingAverage: %v", err) } + if n := ind.Name(); n != "TDMovingAverage" { + t.Errorf("name: got %q want %q", n, "TDMovingAverage") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -4856,6 +6095,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdOpen: %v", err) } + if n := ind.Name(); n != "TDOpen" { + t.Errorf("name: got %q want %q", n, "TDOpen") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4867,6 +6109,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdPressure: %v", err) } + if n := ind.Name(); n != "TDPressure" { + t.Errorf("name: got %q want %q", n, "TDPressure") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4878,6 +6123,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdPropulsion: %v", err) } + if n := ind.Name(); n != "TDPropulsion" { + t.Errorf("name: got %q want %q", n, "TDPropulsion") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4889,6 +6137,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdRangeProjection: %v", err) } + if n := ind.Name(); n != "TDRangeProjection" { + t.Errorf("name: got %q want %q", n, "TDRangeProjection") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -4901,6 +6152,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdRei: %v", err) } + if n := ind.Name(); n != "TDREI" { + t.Errorf("name: got %q want %q", n, "TDREI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4912,6 +6166,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdRiskLevel: %v", err) } + if n := ind.Name(); n != "TDRiskLevel" { + t.Errorf("name: got %q want %q", n, "TDRiskLevel") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -4924,6 +6181,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdSequential: %v", err) } + if n := ind.Name(); n != "TDSequential" { + t.Errorf("name: got %q want %q", n, "TDSequential") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -4936,6 +6196,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdSetup: %v", err) } + if n := ind.Name(); n != "TDSetup" { + t.Errorf("name: got %q want %q", n, "TDSetup") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4947,6 +6210,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TdTrap: %v", err) } + if n := ind.Name(); n != "TDTrap" { + t.Errorf("name: got %q want %q", n, "TDTrap") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4958,6 +6224,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Tema: %v", err) } + if n := ind.Name(); n != "TEMA" { + t.Errorf("name: got %q want %q", n, "TEMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -4969,6 +6238,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TermStructureBasis: %v", err) } + if n := ind.Name(); n != "TermStructureBasis" { + t.Errorf("name: got %q want %q", n, "TermStructureBasis") + } got := make([][]float64, len(rows)) for i, r := range rows { d := derivFields(r) @@ -4981,6 +6253,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ThreeDrives: %v", err) } + if n := ind.Name(); n != "ThreeDrives" { + t.Errorf("name: got %q want %q", n, "ThreeDrives") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -4992,6 +6267,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ThreeInside: %v", err) } + if n := ind.Name(); n != "ThreeInside" { + t.Errorf("name: got %q want %q", n, "ThreeInside") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5003,6 +6281,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ThreeLineBreak: %v", err) } + if n := ind.Name(); n != "ThreeLineBreak" { + t.Errorf("name: got %q want %q", n, "ThreeLineBreak") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5014,6 +6295,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ThreeLineBreakBars: %v", err) } + if n := ind.Name(); n != "ThreeLineBreakBars" { + t.Errorf("name: got %q want %q", n, "ThreeLineBreakBars") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = flattenBars(ind.Update(r[3], r[3], r[3], r[3], 1.0, 0)) @@ -5025,6 +6309,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ThreeLineStrike: %v", err) } + if n := ind.Name(); n != "ThreeLineStrike" { + t.Errorf("name: got %q want %q", n, "ThreeLineStrike") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5036,6 +6323,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ThreeOutside: %v", err) } + if n := ind.Name(); n != "ThreeOutside" { + t.Errorf("name: got %q want %q", n, "ThreeOutside") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5047,6 +6337,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ThreeSoldiersOrCrows: %v", err) } + if n := ind.Name(); n != "ThreeSoldiersOrCrows" { + t.Errorf("name: got %q want %q", n, "ThreeSoldiersOrCrows") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5058,6 +6351,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ThreeStarsInSouth: %v", err) } + if n := ind.Name(); n != "ThreeStarsInSouth" { + t.Errorf("name: got %q want %q", n, "ThreeStarsInSouth") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5069,6 +6365,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Thrusting: %v", err) } + if n := ind.Name(); n != "Thrusting" { + t.Errorf("name: got %q want %q", n, "Thrusting") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5080,6 +6379,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TickBars: %v", err) } + if n := ind.Name(); n != "TickBars" { + t.Errorf("name: got %q want %q", n, "TickBars") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = flattenBars(ind.Update(r[0], r[1], r[2], r[3], r[4], 0)) @@ -5091,6 +6393,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TickIndex: %v", err) } + if n := ind.Name(); n != "TickIndex" { + t.Errorf("name: got %q want %q", n, "TickIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -5103,6 +6408,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Tii: %v", err) } + if n := ind.Name(); n != "TII" { + t.Errorf("name: got %q want %q", n, "TII") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5114,6 +6422,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TimeBasedStop: %v", err) } + if n := ind.Name(); n != "TimeBasedStop" { + t.Errorf("name: got %q want %q", n, "TimeBasedStop") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5125,6 +6436,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TimeOfDayReturnProfile: %v", err) } + if n := ind.Name(); n != "TimeOfDayReturnProfile" { + t.Errorf("name: got %q want %q", n, "TimeOfDayReturnProfile") + } got := make([][]float64, len(rows)) for i, r := range rows { bins, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5141,6 +6455,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TowerTopBottom: %v", err) } + if n := ind.Name(); n != "TowerTopBottom" { + t.Errorf("name: got %q want %q", n, "TowerTopBottom") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5152,6 +6469,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TpoProfile: %v", err) } + if n := ind.Name(); n != "TpoProfile" { + t.Errorf("name: got %q want %q", n, "TpoProfile") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5164,6 +6484,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TradeImbalance: %v", err) } + if n := ind.Name(); n != "TradeImbalance" { + t.Errorf("name: got %q want %q", n, "TradeImbalance") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[4], r[3] >= r[0], int64(i))} @@ -5175,6 +6498,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TradeSignAutocorrelation: %v", err) } + if n := ind.Name(); n != "TradeSignAutocorrelation" { + t.Errorf("name: got %q want %q", n, "TradeSignAutocorrelation") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[4], r[3] >= r[0], int64(i))} @@ -5186,6 +6512,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TradeVolumeIndex: %v", err) } + if n := ind.Name(); n != "TradeVolumeIndex" { + t.Errorf("name: got %q want %q", n, "TradeVolumeIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5197,6 +6526,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TrendLabel: %v", err) } + if n := ind.Name(); n != "TrendLabel" { + t.Errorf("name: got %q want %q", n, "TrendLabel") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5208,6 +6540,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TrendStrengthIndex: %v", err) } + if n := ind.Name(); n != "TrendStrengthIndex" { + t.Errorf("name: got %q want %q", n, "TrendStrengthIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5219,6 +6554,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Trendflex: %v", err) } + if n := ind.Name(); n != "Trendflex" { + t.Errorf("name: got %q want %q", n, "Trendflex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5230,6 +6568,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TreynorRatio: %v", err) } + if n := ind.Name(); n != "TreynorRatio" { + t.Errorf("name: got %q want %q", n, "TreynorRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -5241,6 +6582,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Triangle: %v", err) } + if n := ind.Name(); n != "Triangle" { + t.Errorf("name: got %q want %q", n, "Triangle") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5252,6 +6596,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Trima: %v", err) } + if n := ind.Name(); n != "TRIMA" { + t.Errorf("name: got %q want %q", n, "TRIMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5263,6 +6610,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Trin: %v", err) } + if n := ind.Name(); n != "Trin" { + t.Errorf("name: got %q want %q", n, "Trin") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -5275,6 +6625,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TripleTopBottom: %v", err) } + if n := ind.Name(); n != "TripleTopBottom" { + t.Errorf("name: got %q want %q", n, "TripleTopBottom") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5286,6 +6639,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Tristar: %v", err) } + if n := ind.Name(); n != "Tristar" { + t.Errorf("name: got %q want %q", n, "Tristar") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5297,6 +6653,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Trix: %v", err) } + if n := ind.Name(); n != "TRIX" { + t.Errorf("name: got %q want %q", n, "TRIX") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5308,6 +6667,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TrueRange: %v", err) } + if n := ind.Name(); n != "TrueRange" { + t.Errorf("name: got %q want %q", n, "TrueRange") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5319,6 +6681,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Tsf: %v", err) } + if n := ind.Name(); n != "TSF" { + t.Errorf("name: got %q want %q", n, "TSF") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5330,6 +6695,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TsfOscillator: %v", err) } + if n := ind.Name(); n != "TsfOscillator" { + t.Errorf("name: got %q want %q", n, "TsfOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5341,6 +6709,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Tsi: %v", err) } + if n := ind.Name(); n != "TSI" { + t.Errorf("name: got %q want %q", n, "TSI") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5352,6 +6723,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Tsv: %v", err) } + if n := ind.Name(); n != "TSV" { + t.Errorf("name: got %q want %q", n, "TSV") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5363,6 +6737,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TtmSqueeze: %v", err) } + if n := ind.Name(); n != "TtmSqueeze" { + t.Errorf("name: got %q want %q", n, "TtmSqueeze") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5375,6 +6752,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TtmTrend: %v", err) } + if n := ind.Name(); n != "TtmTrend" { + t.Errorf("name: got %q want %q", n, "TtmTrend") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5386,6 +6766,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TurnOfMonth: %v", err) } + if n := ind.Name(); n != "TurnOfMonth" { + t.Errorf("name: got %q want %q", n, "TurnOfMonth") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5397,6 +6780,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Tweezer: %v", err) } + if n := ind.Name(); n != "Tweezer" { + t.Errorf("name: got %q want %q", n, "Tweezer") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5408,6 +6794,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TwiggsMoneyFlow: %v", err) } + if n := ind.Name(); n != "TwiggsMoneyFlow" { + t.Errorf("name: got %q want %q", n, "TwiggsMoneyFlow") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5419,6 +6808,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TwoCrows: %v", err) } + if n := ind.Name(); n != "TwoCrows" { + t.Errorf("name: got %q want %q", n, "TwoCrows") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5430,6 +6822,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new TypicalPrice: %v", err) } + if n := ind.Name(); n != "TypicalPrice" { + t.Errorf("name: got %q want %q", n, "TypicalPrice") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5441,6 +6836,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new UlcerIndex: %v", err) } + if n := ind.Name(); n != "UlcerIndex" { + t.Errorf("name: got %q want %q", n, "UlcerIndex") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5452,6 +6850,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new UltimateOscillator: %v", err) } + if n := ind.Name(); n != "UltimateOscillator" { + t.Errorf("name: got %q want %q", n, "UltimateOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5463,6 +6864,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new UniqueThreeRiver: %v", err) } + if n := ind.Name(); n != "UniqueThreeRiver" { + t.Errorf("name: got %q want %q", n, "UniqueThreeRiver") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5474,6 +6878,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new UniversalOscillator: %v", err) } + if n := ind.Name(); n != "UniversalOscillator" { + t.Errorf("name: got %q want %q", n, "UniversalOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5485,6 +6892,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new UpDownVolumeRatio: %v", err) } + if n := ind.Name(); n != "UpDownVolumeRatio" { + t.Errorf("name: got %q want %q", n, "UpDownVolumeRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { ch, vo, nh, nl, am, ob_ := crossLists(r) @@ -5497,6 +6907,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new UpsideGapThreeMethods: %v", err) } + if n := ind.Name(); n != "UpsideGapThreeMethods" { + t.Errorf("name: got %q want %q", n, "UpsideGapThreeMethods") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5508,6 +6921,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new UpsideGapTwoCrows: %v", err) } + if n := ind.Name(); n != "UpsideGapTwoCrows" { + t.Errorf("name: got %q want %q", n, "UpsideGapTwoCrows") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5519,6 +6935,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new UpsidePotentialRatio: %v", err) } + if n := ind.Name(); n != "UpsidePotentialRatio" { + t.Errorf("name: got %q want %q", n, "UpsidePotentialRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5530,6 +6949,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ValueArea: %v", err) } + if n := ind.Name(); n != "ValueArea" { + t.Errorf("name: got %q want %q", n, "ValueArea") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5542,6 +6964,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ValueAtRisk: %v", err) } + if n := ind.Name(); n != "ValueAtRisk" { + t.Errorf("name: got %q want %q", n, "ValueAtRisk") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5553,6 +6978,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Variance: %v", err) } + if n := ind.Name(); n != "Variance" { + t.Errorf("name: got %q want %q", n, "Variance") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5564,6 +6992,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VarianceRatio: %v", err) } + if n := ind.Name(); n != "VarianceRatio" { + t.Errorf("name: got %q want %q", n, "VarianceRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[0])} @@ -5575,6 +7006,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VerticalHorizontalFilter: %v", err) } + if n := ind.Name(); n != "VerticalHorizontalFilter" { + t.Errorf("name: got %q want %q", n, "VerticalHorizontalFilter") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5586,6 +7020,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Vidya: %v", err) } + if n := ind.Name(); n != "VIDYA" { + t.Errorf("name: got %q want %q", n, "VIDYA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5597,6 +7034,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VolatilityCone: %v", err) } + if n := ind.Name(); n != "VolatilityCone" { + t.Errorf("name: got %q want %q", n, "VolatilityCone") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5609,6 +7049,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VolatilityOfVolatility: %v", err) } + if n := ind.Name(); n != "VolatilityOfVolatility" { + t.Errorf("name: got %q want %q", n, "VolatilityOfVolatility") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5620,6 +7063,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VolatilityRatio: %v", err) } + if n := ind.Name(); n != "VolatilityRatio" { + t.Errorf("name: got %q want %q", n, "VolatilityRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5631,6 +7077,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VoltyStop: %v", err) } + if n := ind.Name(); n != "VoltyStop" { + t.Errorf("name: got %q want %q", n, "VoltyStop") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5642,6 +7091,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VolumeBars: %v", err) } + if n := ind.Name(); n != "VolumeBars" { + t.Errorf("name: got %q want %q", n, "VolumeBars") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = flattenBars(ind.Update(r[0], r[1], r[2], r[3], r[4], 0)) @@ -5653,6 +7105,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VolumeByTimeProfile: %v", err) } + if n := ind.Name(); n != "VolumeByTimeProfile" { + t.Errorf("name: got %q want %q", n, "VolumeByTimeProfile") + } got := make([][]float64, len(rows)) for i, r := range rows { bins, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5669,6 +7124,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VolumeOscillator: %v", err) } + if n := ind.Name(); n != "VolumeOscillator" { + t.Errorf("name: got %q want %q", n, "VolumeOscillator") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5680,6 +7138,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VolumePriceTrend: %v", err) } + if n := ind.Name(); n != "VPT" { + t.Errorf("name: got %q want %q", n, "VPT") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5691,6 +7152,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VolumeProfile: %v", err) } + if n := ind.Name(); n != "VolumeProfile" { + t.Errorf("name: got %q want %q", n, "VolumeProfile") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5703,6 +7167,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VolumeRsi: %v", err) } + if n := ind.Name(); n != "VolumeRsi" { + t.Errorf("name: got %q want %q", n, "VolumeRsi") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5714,6 +7181,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VolumeWeightedMacd: %v", err) } + if n := ind.Name(); n != "VolumeWeightedMacd" { + t.Errorf("name: got %q want %q", n, "VolumeWeightedMacd") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5726,6 +7196,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VolumeWeightedSr: %v", err) } + if n := ind.Name(); n != "VolumeWeightedSr" { + t.Errorf("name: got %q want %q", n, "VolumeWeightedSr") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5738,6 +7211,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Vortex: %v", err) } + if n := ind.Name(); n != "Vortex" { + t.Errorf("name: got %q want %q", n, "Vortex") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5750,6 +7226,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Vpin: %v", err) } + if n := ind.Name(); n != "Vpin" { + t.Errorf("name: got %q want %q", n, "Vpin") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3], r[4], r[3] >= r[0], int64(i))} @@ -5761,6 +7240,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Vwap: %v", err) } + if n := ind.Name(); n != "VWAP" { + t.Errorf("name: got %q want %q", n, "VWAP") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5772,6 +7254,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new VwapStdDevBands: %v", err) } + if n := ind.Name(); n != "VwapStdDevBands" { + t.Errorf("name: got %q want %q", n, "VwapStdDevBands") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5784,6 +7269,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Vwma: %v", err) } + if n := ind.Name(); n != "VWMA" { + t.Errorf("name: got %q want %q", n, "VWMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5795,6 +7283,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Vzo: %v", err) } + if n := ind.Name(); n != "VZO" { + t.Errorf("name: got %q want %q", n, "VZO") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5806,6 +7297,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Wad: %v", err) } + if n := ind.Name(); n != "Wad" { + t.Errorf("name: got %q want %q", n, "Wad") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5817,6 +7311,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new WavePm: %v", err) } + if n := ind.Name(); n != "WavePm" { + t.Errorf("name: got %q want %q", n, "WavePm") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5828,6 +7325,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new WaveTrend: %v", err) } + if n := ind.Name(); n != "WaveTrend" { + t.Errorf("name: got %q want %q", n, "WaveTrend") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5840,6 +7340,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Wedge: %v", err) } + if n := ind.Name(); n != "Wedge" { + t.Errorf("name: got %q want %q", n, "Wedge") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5851,6 +7354,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new WeightedClose: %v", err) } + if n := ind.Name(); n != "WeightedClose" { + t.Errorf("name: got %q want %q", n, "WeightedClose") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5862,6 +7368,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new WickRatio: %v", err) } + if n := ind.Name(); n != "WickRatio" { + t.Errorf("name: got %q want %q", n, "WickRatio") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5873,6 +7382,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new WilliamsFractals: %v", err) } + if n := ind.Name(); n != "WilliamsFractals" { + t.Errorf("name: got %q want %q", n, "WilliamsFractals") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5885,6 +7397,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new WilliamsR: %v", err) } + if n := ind.Name(); n != "WilliamsR" { + t.Errorf("name: got %q want %q", n, "WilliamsR") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5896,6 +7411,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new WinRate: %v", err) } + if n := ind.Name(); n != "WinRate" { + t.Errorf("name: got %q want %q", n, "WinRate") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5907,6 +7425,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Wma: %v", err) } + if n := ind.Name(); n != "WMA" { + t.Errorf("name: got %q want %q", n, "WMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5918,6 +7439,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new WoodiePivots: %v", err) } + if n := ind.Name(); n != "WoodiePivots" { + t.Errorf("name: got %q want %q", n, "WoodiePivots") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5930,6 +7454,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new YangZhangVolatility: %v", err) } + if n := ind.Name(); n != "YangZhangVolatility" { + t.Errorf("name: got %q want %q", n, "YangZhangVolatility") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5941,6 +7468,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new YoyoExit: %v", err) } + if n := ind.Name(); n != "YoyoExit" { + t.Errorf("name: got %q want %q", n, "YoyoExit") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i))} @@ -5952,6 +7482,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ZScore: %v", err) } + if n := ind.Name(); n != "ZScore" { + t.Errorf("name: got %q want %q", n, "ZScore") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} @@ -5963,6 +7496,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ZeroLagMacd: %v", err) } + if n := ind.Name(); n != "ZeroLagMACD" { + t.Errorf("name: got %q want %q", n, "ZeroLagMACD") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[3]) @@ -5975,6 +7511,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new ZigZag: %v", err) } + if n := ind.Name(); n != "ZigZag" { + t.Errorf("name: got %q want %q", n, "ZigZag") + } got := make([][]float64, len(rows)) for i, r := range rows { out, ok := ind.Update(r[0], r[1], r[2], r[3], r[4], int64(i)) @@ -5987,6 +7526,9 @@ func TestGoldenAll(t *testing.T) { if err != nil { t.Fatalf("new Zlema: %v", err) } + if n := ind.Name(); n != "ZLEMA" { + t.Errorf("name: got %q want %q", n, "ZLEMA") + } got := make([][]float64, len(rows)) for i, r := range rows { got[i] = []float64{ind.Update(r[3])} diff --git a/bindings/go/include/wickra.h b/bindings/go/include/wickra.h index e8589bda..4b057fed 100644 --- a/bindings/go/include/wickra.h +++ b/bindings/go/include/wickra.h @@ -1692,6 +1692,8 @@ uintptr_t wickra_adaptive_cycle_warmup_period(struct AdaptiveCycle *handle); bool wickra_adaptive_cycle_is_ready(struct AdaptiveCycle *handle); +const char *wickra_adaptive_cycle_name(struct AdaptiveCycle *handle); + void wickra_adaptive_cycle_reset(struct AdaptiveCycle *handle); void wickra_adaptive_cycle_free(struct AdaptiveCycle *handle); @@ -1709,6 +1711,8 @@ uintptr_t wickra_adaptive_laguerre_filter_warmup_period(struct AdaptiveLaguerreF bool wickra_adaptive_laguerre_filter_is_ready(struct AdaptiveLaguerreFilter *handle); +const char *wickra_adaptive_laguerre_filter_name(struct AdaptiveLaguerreFilter *handle); + void wickra_adaptive_laguerre_filter_reset(struct AdaptiveLaguerreFilter *handle); void wickra_adaptive_laguerre_filter_free(struct AdaptiveLaguerreFilter *handle); @@ -1726,6 +1730,8 @@ uintptr_t wickra_adaptive_rsi_warmup_period(struct AdaptiveRsi *handle); bool wickra_adaptive_rsi_is_ready(struct AdaptiveRsi *handle); +const char *wickra_adaptive_rsi_name(struct AdaptiveRsi *handle); + void wickra_adaptive_rsi_reset(struct AdaptiveRsi *handle); void wickra_adaptive_rsi_free(struct AdaptiveRsi *handle); @@ -1740,6 +1746,8 @@ uintptr_t wickra_alma_warmup_period(struct Alma *handle); bool wickra_alma_is_ready(struct Alma *handle); +const char *wickra_alma_name(struct Alma *handle); + void wickra_alma_reset(struct Alma *handle); void wickra_alma_free(struct Alma *handle); @@ -1757,6 +1765,8 @@ uintptr_t wickra_anchored_rsi_warmup_period(struct AnchoredRsi *handle); bool wickra_anchored_rsi_is_ready(struct AnchoredRsi *handle); +const char *wickra_anchored_rsi_name(struct AnchoredRsi *handle); + void wickra_anchored_rsi_reset(struct AnchoredRsi *handle); void wickra_anchored_rsi_free(struct AnchoredRsi *handle); @@ -1771,6 +1781,8 @@ uintptr_t wickra_apo_warmup_period(struct Apo *handle); bool wickra_apo_is_ready(struct Apo *handle); +const char *wickra_apo_name(struct Apo *handle); + void wickra_apo_reset(struct Apo *handle); void wickra_apo_free(struct Apo *handle); @@ -1788,6 +1800,8 @@ uintptr_t wickra_autocorrelation_warmup_period(struct Autocorrelation *handle); bool wickra_autocorrelation_is_ready(struct Autocorrelation *handle); +const char *wickra_autocorrelation_name(struct Autocorrelation *handle); + void wickra_autocorrelation_reset(struct Autocorrelation *handle); void wickra_autocorrelation_free(struct Autocorrelation *handle); @@ -1807,6 +1821,8 @@ uintptr_t wickra_autocorrelation_periodogram_warmup_period(struct Autocorrelatio bool wickra_autocorrelation_periodogram_is_ready(struct AutocorrelationPeriodogram *handle); +const char *wickra_autocorrelation_periodogram_name(struct AutocorrelationPeriodogram *handle); + void wickra_autocorrelation_periodogram_reset(struct AutocorrelationPeriodogram *handle); void wickra_autocorrelation_periodogram_free(struct AutocorrelationPeriodogram *handle); @@ -1824,6 +1840,8 @@ uintptr_t wickra_average_drawdown_warmup_period(struct AverageDrawdown *handle); bool wickra_average_drawdown_is_ready(struct AverageDrawdown *handle); +const char *wickra_average_drawdown_name(struct AverageDrawdown *handle); + void wickra_average_drawdown_reset(struct AverageDrawdown *handle); void wickra_average_drawdown_free(struct AverageDrawdown *handle); @@ -1841,6 +1859,8 @@ uintptr_t wickra_bandpass_filter_warmup_period(struct BandpassFilter *handle); bool wickra_bandpass_filter_is_ready(struct BandpassFilter *handle); +const char *wickra_bandpass_filter_name(struct BandpassFilter *handle); + void wickra_bandpass_filter_reset(struct BandpassFilter *handle); void wickra_bandpass_filter_free(struct BandpassFilter *handle); @@ -1858,6 +1878,8 @@ uintptr_t wickra_bipower_variation_warmup_period(struct BipowerVariation *handle bool wickra_bipower_variation_is_ready(struct BipowerVariation *handle); +const char *wickra_bipower_variation_name(struct BipowerVariation *handle); + void wickra_bipower_variation_reset(struct BipowerVariation *handle); void wickra_bipower_variation_free(struct BipowerVariation *handle); @@ -1875,6 +1897,8 @@ uintptr_t wickra_bollinger_bandwidth_warmup_period(struct BollingerBandwidth *ha bool wickra_bollinger_bandwidth_is_ready(struct BollingerBandwidth *handle); +const char *wickra_bollinger_bandwidth_name(struct BollingerBandwidth *handle); + void wickra_bollinger_bandwidth_reset(struct BollingerBandwidth *handle); void wickra_bollinger_bandwidth_free(struct BollingerBandwidth *handle); @@ -1892,6 +1916,8 @@ uintptr_t wickra_burke_ratio_warmup_period(struct BurkeRatio *handle); bool wickra_burke_ratio_is_ready(struct BurkeRatio *handle); +const char *wickra_burke_ratio_name(struct BurkeRatio *handle); + void wickra_burke_ratio_reset(struct BurkeRatio *handle); void wickra_burke_ratio_free(struct BurkeRatio *handle); @@ -1909,6 +1935,8 @@ uintptr_t wickra_calmar_ratio_warmup_period(struct CalmarRatio *handle); bool wickra_calmar_ratio_is_ready(struct CalmarRatio *handle); +const char *wickra_calmar_ratio_name(struct CalmarRatio *handle); + void wickra_calmar_ratio_reset(struct CalmarRatio *handle); void wickra_calmar_ratio_free(struct CalmarRatio *handle); @@ -1926,6 +1954,8 @@ uintptr_t wickra_center_of_gravity_warmup_period(struct CenterOfGravity *handle) bool wickra_center_of_gravity_is_ready(struct CenterOfGravity *handle); +const char *wickra_center_of_gravity_name(struct CenterOfGravity *handle); + void wickra_center_of_gravity_reset(struct CenterOfGravity *handle); void wickra_center_of_gravity_free(struct CenterOfGravity *handle); @@ -1940,6 +1970,8 @@ uintptr_t wickra_cfo_warmup_period(struct Cfo *handle); bool wickra_cfo_is_ready(struct Cfo *handle); +const char *wickra_cfo_name(struct Cfo *handle); + void wickra_cfo_reset(struct Cfo *handle); void wickra_cfo_free(struct Cfo *handle); @@ -1954,6 +1986,8 @@ uintptr_t wickra_cmo_warmup_period(struct Cmo *handle); bool wickra_cmo_is_ready(struct Cmo *handle); +const char *wickra_cmo_name(struct Cmo *handle); + void wickra_cmo_reset(struct Cmo *handle); void wickra_cmo_free(struct Cmo *handle); @@ -1971,6 +2005,8 @@ uintptr_t wickra_coefficient_of_variation_warmup_period(struct CoefficientOfVari bool wickra_coefficient_of_variation_is_ready(struct CoefficientOfVariation *handle); +const char *wickra_coefficient_of_variation_name(struct CoefficientOfVariation *handle); + void wickra_coefficient_of_variation_reset(struct CoefficientOfVariation *handle); void wickra_coefficient_of_variation_free(struct CoefficientOfVariation *handle); @@ -1988,6 +2024,8 @@ uintptr_t wickra_common_sense_ratio_warmup_period(struct CommonSenseRatio *handl bool wickra_common_sense_ratio_is_ready(struct CommonSenseRatio *handle); +const char *wickra_common_sense_ratio_name(struct CommonSenseRatio *handle); + void wickra_common_sense_ratio_reset(struct CommonSenseRatio *handle); void wickra_common_sense_ratio_free(struct CommonSenseRatio *handle); @@ -2006,6 +2044,8 @@ uintptr_t wickra_conditional_value_at_risk_warmup_period(struct ConditionalValue bool wickra_conditional_value_at_risk_is_ready(struct ConditionalValueAtRisk *handle); +const char *wickra_conditional_value_at_risk_name(struct ConditionalValueAtRisk *handle); + void wickra_conditional_value_at_risk_reset(struct ConditionalValueAtRisk *handle); void wickra_conditional_value_at_risk_free(struct ConditionalValueAtRisk *handle); @@ -2025,6 +2065,8 @@ uintptr_t wickra_connors_rsi_warmup_period(struct ConnorsRsi *handle); bool wickra_connors_rsi_is_ready(struct ConnorsRsi *handle); +const char *wickra_connors_rsi_name(struct ConnorsRsi *handle); + void wickra_connors_rsi_reset(struct ConnorsRsi *handle); void wickra_connors_rsi_free(struct ConnorsRsi *handle); @@ -2041,6 +2083,8 @@ uintptr_t wickra_coppock_warmup_period(struct Coppock *handle); bool wickra_coppock_is_ready(struct Coppock *handle); +const char *wickra_coppock_name(struct Coppock *handle); + void wickra_coppock_reset(struct Coppock *handle); void wickra_coppock_free(struct Coppock *handle); @@ -2059,6 +2103,8 @@ uintptr_t wickra_correlation_trend_indicator_warmup_period(struct CorrelationTre bool wickra_correlation_trend_indicator_is_ready(struct CorrelationTrendIndicator *handle); +const char *wickra_correlation_trend_indicator_name(struct CorrelationTrendIndicator *handle); + void wickra_correlation_trend_indicator_reset(struct CorrelationTrendIndicator *handle); void wickra_correlation_trend_indicator_free(struct CorrelationTrendIndicator *handle); @@ -2076,6 +2122,8 @@ uintptr_t wickra_cybernetic_cycle_warmup_period(struct CyberneticCycle *handle); bool wickra_cybernetic_cycle_is_ready(struct CyberneticCycle *handle); +const char *wickra_cybernetic_cycle_name(struct CyberneticCycle *handle); + void wickra_cybernetic_cycle_reset(struct CyberneticCycle *handle); void wickra_cybernetic_cycle_free(struct CyberneticCycle *handle); @@ -2090,6 +2138,8 @@ uintptr_t wickra_decycler_warmup_period(struct Decycler *handle); bool wickra_decycler_is_ready(struct Decycler *handle); +const char *wickra_decycler_name(struct Decycler *handle); + void wickra_decycler_reset(struct Decycler *handle); void wickra_decycler_free(struct Decycler *handle); @@ -2107,6 +2157,8 @@ uintptr_t wickra_decycler_oscillator_warmup_period(struct DecyclerOscillator *ha bool wickra_decycler_oscillator_is_ready(struct DecyclerOscillator *handle); +const char *wickra_decycler_oscillator_name(struct DecyclerOscillator *handle); + void wickra_decycler_oscillator_reset(struct DecyclerOscillator *handle); void wickra_decycler_oscillator_free(struct DecyclerOscillator *handle); @@ -2121,6 +2173,8 @@ uintptr_t wickra_dema_warmup_period(struct Dema *handle); bool wickra_dema_is_ready(struct Dema *handle); +const char *wickra_dema_name(struct Dema *handle); + void wickra_dema_reset(struct Dema *handle); void wickra_dema_free(struct Dema *handle); @@ -2141,6 +2195,8 @@ uintptr_t wickra_derivative_oscillator_warmup_period(struct DerivativeOscillator bool wickra_derivative_oscillator_is_ready(struct DerivativeOscillator *handle); +const char *wickra_derivative_oscillator_name(struct DerivativeOscillator *handle); + void wickra_derivative_oscillator_reset(struct DerivativeOscillator *handle); void wickra_derivative_oscillator_free(struct DerivativeOscillator *handle); @@ -2158,6 +2214,8 @@ uintptr_t wickra_detrended_std_dev_warmup_period(struct DetrendedStdDev *handle) bool wickra_detrended_std_dev_is_ready(struct DetrendedStdDev *handle); +const char *wickra_detrended_std_dev_name(struct DetrendedStdDev *handle); + void wickra_detrended_std_dev_reset(struct DetrendedStdDev *handle); void wickra_detrended_std_dev_free(struct DetrendedStdDev *handle); @@ -2175,6 +2233,8 @@ uintptr_t wickra_disparity_index_warmup_period(struct DisparityIndex *handle); bool wickra_disparity_index_is_ready(struct DisparityIndex *handle); +const char *wickra_disparity_index_name(struct DisparityIndex *handle); + void wickra_disparity_index_reset(struct DisparityIndex *handle); void wickra_disparity_index_free(struct DisparityIndex *handle); @@ -2189,6 +2249,8 @@ uintptr_t wickra_dpo_warmup_period(struct Dpo *handle); bool wickra_dpo_is_ready(struct Dpo *handle); +const char *wickra_dpo_name(struct Dpo *handle); + void wickra_dpo_reset(struct Dpo *handle); void wickra_dpo_free(struct Dpo *handle); @@ -2206,6 +2268,8 @@ uintptr_t wickra_drawdown_duration_warmup_period(struct DrawdownDuration *handle bool wickra_drawdown_duration_is_ready(struct DrawdownDuration *handle); +const char *wickra_drawdown_duration_name(struct DrawdownDuration *handle); + void wickra_drawdown_duration_reset(struct DrawdownDuration *handle); void wickra_drawdown_duration_free(struct DrawdownDuration *handle); @@ -2223,6 +2287,8 @@ uintptr_t wickra_dynamic_momentum_index_warmup_period(struct DynamicMomentumInde bool wickra_dynamic_momentum_index_is_ready(struct DynamicMomentumIndex *handle); +const char *wickra_dynamic_momentum_index_name(struct DynamicMomentumIndex *handle); + void wickra_dynamic_momentum_index_reset(struct DynamicMomentumIndex *handle); void wickra_dynamic_momentum_index_free(struct DynamicMomentumIndex *handle); @@ -2240,6 +2306,8 @@ uintptr_t wickra_ehlers_stochastic_warmup_period(struct EhlersStochastic *handle bool wickra_ehlers_stochastic_is_ready(struct EhlersStochastic *handle); +const char *wickra_ehlers_stochastic_name(struct EhlersStochastic *handle); + void wickra_ehlers_stochastic_reset(struct EhlersStochastic *handle); void wickra_ehlers_stochastic_free(struct EhlersStochastic *handle); @@ -2254,6 +2322,8 @@ uintptr_t wickra_ehma_warmup_period(struct Ehma *handle); bool wickra_ehma_is_ready(struct Ehma *handle); +const char *wickra_ehma_name(struct Ehma *handle); + void wickra_ehma_reset(struct Ehma *handle); void wickra_ehma_free(struct Ehma *handle); @@ -2274,6 +2344,8 @@ uintptr_t wickra_elder_impulse_warmup_period(struct ElderImpulse *handle); bool wickra_elder_impulse_is_ready(struct ElderImpulse *handle); +const char *wickra_elder_impulse_name(struct ElderImpulse *handle); + void wickra_elder_impulse_reset(struct ElderImpulse *handle); void wickra_elder_impulse_free(struct ElderImpulse *handle); @@ -2288,6 +2360,8 @@ uintptr_t wickra_ema_warmup_period(struct Ema *handle); bool wickra_ema_is_ready(struct Ema *handle); +const char *wickra_ema_name(struct Ema *handle); + void wickra_ema_reset(struct Ema *handle); void wickra_ema_free(struct Ema *handle); @@ -2307,6 +2381,8 @@ uintptr_t wickra_empirical_mode_decomposition_warmup_period(struct EmpiricalMode bool wickra_empirical_mode_decomposition_is_ready(struct EmpiricalModeDecomposition *handle); +const char *wickra_empirical_mode_decomposition_name(struct EmpiricalModeDecomposition *handle); + void wickra_empirical_mode_decomposition_reset(struct EmpiricalModeDecomposition *handle); void wickra_empirical_mode_decomposition_free(struct EmpiricalModeDecomposition *handle); @@ -2325,6 +2401,8 @@ uintptr_t wickra_even_better_sinewave_warmup_period(struct EvenBetterSinewave *h bool wickra_even_better_sinewave_is_ready(struct EvenBetterSinewave *handle); +const char *wickra_even_better_sinewave_name(struct EvenBetterSinewave *handle); + void wickra_even_better_sinewave_reset(struct EvenBetterSinewave *handle); void wickra_even_better_sinewave_free(struct EvenBetterSinewave *handle); @@ -2342,6 +2420,8 @@ uintptr_t wickra_ewma_volatility_warmup_period(struct EwmaVolatility *handle); bool wickra_ewma_volatility_is_ready(struct EwmaVolatility *handle); +const char *wickra_ewma_volatility_name(struct EwmaVolatility *handle); + void wickra_ewma_volatility_reset(struct EwmaVolatility *handle); void wickra_ewma_volatility_free(struct EwmaVolatility *handle); @@ -2359,6 +2439,8 @@ uintptr_t wickra_expectancy_warmup_period(struct Expectancy *handle); bool wickra_expectancy_is_ready(struct Expectancy *handle); +const char *wickra_expectancy_name(struct Expectancy *handle); + void wickra_expectancy_reset(struct Expectancy *handle); void wickra_expectancy_free(struct Expectancy *handle); @@ -2373,6 +2455,8 @@ uintptr_t wickra_fama_warmup_period(struct Fama *handle); bool wickra_fama_is_ready(struct Fama *handle); +const char *wickra_fama_name(struct Fama *handle); + void wickra_fama_reset(struct Fama *handle); void wickra_fama_free(struct Fama *handle); @@ -2390,6 +2474,8 @@ uintptr_t wickra_fisher_rsi_warmup_period(struct FisherRsi *handle); bool wickra_fisher_rsi_is_ready(struct FisherRsi *handle); +const char *wickra_fisher_rsi_name(struct FisherRsi *handle); + void wickra_fisher_rsi_reset(struct FisherRsi *handle); void wickra_fisher_rsi_free(struct FisherRsi *handle); @@ -2407,6 +2493,8 @@ uintptr_t wickra_fisher_transform_warmup_period(struct FisherTransform *handle); bool wickra_fisher_transform_is_ready(struct FisherTransform *handle); +const char *wickra_fisher_transform_name(struct FisherTransform *handle); + void wickra_fisher_transform_reset(struct FisherTransform *handle); void wickra_fisher_transform_free(struct FisherTransform *handle); @@ -2421,6 +2509,8 @@ uintptr_t wickra_frama_warmup_period(struct Frama *handle); bool wickra_frama_is_ready(struct Frama *handle); +const char *wickra_frama_name(struct Frama *handle); + void wickra_frama_reset(struct Frama *handle); void wickra_frama_free(struct Frama *handle); @@ -2438,6 +2528,8 @@ uintptr_t wickra_gain_loss_ratio_warmup_period(struct GainLossRatio *handle); bool wickra_gain_loss_ratio_is_ready(struct GainLossRatio *handle); +const char *wickra_gain_loss_ratio_name(struct GainLossRatio *handle); + void wickra_gain_loss_ratio_reset(struct GainLossRatio *handle); void wickra_gain_loss_ratio_free(struct GainLossRatio *handle); @@ -2455,6 +2547,8 @@ uintptr_t wickra_gain_to_pain_ratio_warmup_period(struct GainToPainRatio *handle bool wickra_gain_to_pain_ratio_is_ready(struct GainToPainRatio *handle); +const char *wickra_gain_to_pain_ratio_name(struct GainToPainRatio *handle); + void wickra_gain_to_pain_ratio_reset(struct GainToPainRatio *handle); void wickra_gain_to_pain_ratio_free(struct GainToPainRatio *handle); @@ -2469,6 +2563,8 @@ uintptr_t wickra_garch11_warmup_period(struct Garch11 *handle); bool wickra_garch11_is_ready(struct Garch11 *handle); +const char *wickra_garch11_name(struct Garch11 *handle); + void wickra_garch11_reset(struct Garch11 *handle); void wickra_garch11_free(struct Garch11 *handle); @@ -2486,6 +2582,8 @@ uintptr_t wickra_generalized_dema_warmup_period(struct GeneralizedDema *handle); bool wickra_generalized_dema_is_ready(struct GeneralizedDema *handle); +const char *wickra_generalized_dema_name(struct GeneralizedDema *handle); + void wickra_generalized_dema_reset(struct GeneralizedDema *handle); void wickra_generalized_dema_free(struct GeneralizedDema *handle); @@ -2503,6 +2601,8 @@ uintptr_t wickra_geometric_ma_warmup_period(struct GeometricMa *handle); bool wickra_geometric_ma_is_ready(struct GeometricMa *handle); +const char *wickra_geometric_ma_name(struct GeometricMa *handle); + void wickra_geometric_ma_reset(struct GeometricMa *handle); void wickra_geometric_ma_free(struct GeometricMa *handle); @@ -2520,6 +2620,8 @@ uintptr_t wickra_highpass_filter_warmup_period(struct HighpassFilter *handle); bool wickra_highpass_filter_is_ready(struct HighpassFilter *handle); +const char *wickra_highpass_filter_name(struct HighpassFilter *handle); + void wickra_highpass_filter_reset(struct HighpassFilter *handle); void wickra_highpass_filter_free(struct HighpassFilter *handle); @@ -2537,6 +2639,8 @@ uintptr_t wickra_hilbert_dominant_cycle_warmup_period(struct HilbertDominantCycl bool wickra_hilbert_dominant_cycle_is_ready(struct HilbertDominantCycle *handle); +const char *wickra_hilbert_dominant_cycle_name(struct HilbertDominantCycle *handle); + void wickra_hilbert_dominant_cycle_reset(struct HilbertDominantCycle *handle); void wickra_hilbert_dominant_cycle_free(struct HilbertDominantCycle *handle); @@ -2555,6 +2659,8 @@ uintptr_t wickra_historical_volatility_warmup_period(struct HistoricalVolatility bool wickra_historical_volatility_is_ready(struct HistoricalVolatility *handle); +const char *wickra_historical_volatility_name(struct HistoricalVolatility *handle); + void wickra_historical_volatility_reset(struct HistoricalVolatility *handle); void wickra_historical_volatility_free(struct HistoricalVolatility *handle); @@ -2569,6 +2675,8 @@ uintptr_t wickra_hma_warmup_period(struct Hma *handle); bool wickra_hma_is_ready(struct Hma *handle); +const char *wickra_hma_name(struct Hma *handle); + void wickra_hma_reset(struct Hma *handle); void wickra_hma_free(struct Hma *handle); @@ -2586,6 +2694,8 @@ uintptr_t wickra_holt_winters_warmup_period(struct HoltWinters *handle); bool wickra_holt_winters_is_ready(struct HoltWinters *handle); +const char *wickra_holt_winters_name(struct HoltWinters *handle); + void wickra_holt_winters_reset(struct HoltWinters *handle); void wickra_holt_winters_free(struct HoltWinters *handle); @@ -2603,6 +2713,8 @@ uintptr_t wickra_ht_dc_phase_warmup_period(struct HtDcPhase *handle); bool wickra_ht_dc_phase_is_ready(struct HtDcPhase *handle); +const char *wickra_ht_dc_phase_name(struct HtDcPhase *handle); + void wickra_ht_dc_phase_reset(struct HtDcPhase *handle); void wickra_ht_dc_phase_free(struct HtDcPhase *handle); @@ -2620,6 +2732,8 @@ uintptr_t wickra_ht_trend_mode_warmup_period(struct HtTrendMode *handle); bool wickra_ht_trend_mode_is_ready(struct HtTrendMode *handle); +const char *wickra_ht_trend_mode_name(struct HtTrendMode *handle); + void wickra_ht_trend_mode_reset(struct HtTrendMode *handle); void wickra_ht_trend_mode_free(struct HtTrendMode *handle); @@ -2637,6 +2751,8 @@ uintptr_t wickra_hurst_exponent_warmup_period(struct HurstExponent *handle); bool wickra_hurst_exponent_is_ready(struct HurstExponent *handle); +const char *wickra_hurst_exponent_name(struct HurstExponent *handle); + void wickra_hurst_exponent_reset(struct HurstExponent *handle); void wickra_hurst_exponent_free(struct HurstExponent *handle); @@ -2654,6 +2770,8 @@ uintptr_t wickra_instantaneous_trendline_warmup_period(struct InstantaneousTrend bool wickra_instantaneous_trendline_is_ready(struct InstantaneousTrendline *handle); +const char *wickra_instantaneous_trendline_name(struct InstantaneousTrendline *handle); + void wickra_instantaneous_trendline_reset(struct InstantaneousTrendline *handle); void wickra_instantaneous_trendline_free(struct InstantaneousTrendline *handle); @@ -2671,6 +2789,8 @@ uintptr_t wickra_inverse_fisher_transform_warmup_period(struct InverseFisherTran bool wickra_inverse_fisher_transform_is_ready(struct InverseFisherTransform *handle); +const char *wickra_inverse_fisher_transform_name(struct InverseFisherTransform *handle); + void wickra_inverse_fisher_transform_reset(struct InverseFisherTransform *handle); void wickra_inverse_fisher_transform_free(struct InverseFisherTransform *handle); @@ -2688,6 +2808,8 @@ uintptr_t wickra_jarque_bera_warmup_period(struct JarqueBera *handle); bool wickra_jarque_bera_is_ready(struct JarqueBera *handle); +const char *wickra_jarque_bera_name(struct JarqueBera *handle); + void wickra_jarque_bera_reset(struct JarqueBera *handle); void wickra_jarque_bera_free(struct JarqueBera *handle); @@ -2702,6 +2824,8 @@ uintptr_t wickra_jma_warmup_period(struct Jma *handle); bool wickra_jma_is_ready(struct Jma *handle); +const char *wickra_jma_name(struct Jma *handle); + void wickra_jma_reset(struct Jma *handle); void wickra_jma_free(struct Jma *handle); @@ -2719,6 +2843,8 @@ uintptr_t wickra_jump_indicator_warmup_period(struct JumpIndicator *handle); bool wickra_jump_indicator_is_ready(struct JumpIndicator *handle); +const char *wickra_jump_indicator_name(struct JumpIndicator *handle); + void wickra_jump_indicator_reset(struct JumpIndicator *handle); void wickra_jump_indicator_free(struct JumpIndicator *handle); @@ -2733,6 +2859,8 @@ uintptr_t wickra_k_ratio_warmup_period(struct KRatio *handle); bool wickra_k_ratio_is_ready(struct KRatio *handle); +const char *wickra_k_ratio_name(struct KRatio *handle); + void wickra_k_ratio_reset(struct KRatio *handle); void wickra_k_ratio_free(struct KRatio *handle); @@ -2747,6 +2875,8 @@ uintptr_t wickra_kama_warmup_period(struct Kama *handle); bool wickra_kama_is_ready(struct Kama *handle); +const char *wickra_kama_name(struct Kama *handle); + void wickra_kama_reset(struct Kama *handle); void wickra_kama_free(struct Kama *handle); @@ -2764,6 +2894,8 @@ uintptr_t wickra_kelly_criterion_warmup_period(struct KellyCriterion *handle); bool wickra_kelly_criterion_is_ready(struct KellyCriterion *handle); +const char *wickra_kelly_criterion_name(struct KellyCriterion *handle); + void wickra_kelly_criterion_reset(struct KellyCriterion *handle); void wickra_kelly_criterion_free(struct KellyCriterion *handle); @@ -2778,6 +2910,8 @@ uintptr_t wickra_kurtosis_warmup_period(struct Kurtosis *handle); bool wickra_kurtosis_is_ready(struct Kurtosis *handle); +const char *wickra_kurtosis_name(struct Kurtosis *handle); + void wickra_kurtosis_reset(struct Kurtosis *handle); void wickra_kurtosis_free(struct Kurtosis *handle); @@ -2795,6 +2929,8 @@ uintptr_t wickra_laguerre_rsi_warmup_period(struct LaguerreRsi *handle); bool wickra_laguerre_rsi_is_ready(struct LaguerreRsi *handle); +const char *wickra_laguerre_rsi_name(struct LaguerreRsi *handle); + void wickra_laguerre_rsi_reset(struct LaguerreRsi *handle); void wickra_laguerre_rsi_free(struct LaguerreRsi *handle); @@ -2812,6 +2948,8 @@ uintptr_t wickra_linear_regression_warmup_period(struct LinearRegression *handle bool wickra_linear_regression_is_ready(struct LinearRegression *handle); +const char *wickra_linear_regression_name(struct LinearRegression *handle); + void wickra_linear_regression_reset(struct LinearRegression *handle); void wickra_linear_regression_free(struct LinearRegression *handle); @@ -2829,6 +2967,8 @@ uintptr_t wickra_lin_reg_angle_warmup_period(struct LinRegAngle *handle); bool wickra_lin_reg_angle_is_ready(struct LinRegAngle *handle); +const char *wickra_lin_reg_angle_name(struct LinRegAngle *handle); + void wickra_lin_reg_angle_reset(struct LinRegAngle *handle); void wickra_lin_reg_angle_free(struct LinRegAngle *handle); @@ -2846,6 +2986,8 @@ uintptr_t wickra_lin_reg_intercept_warmup_period(struct LinRegIntercept *handle) bool wickra_lin_reg_intercept_is_ready(struct LinRegIntercept *handle); +const char *wickra_lin_reg_intercept_name(struct LinRegIntercept *handle); + void wickra_lin_reg_intercept_reset(struct LinRegIntercept *handle); void wickra_lin_reg_intercept_free(struct LinRegIntercept *handle); @@ -2863,6 +3005,8 @@ uintptr_t wickra_lin_reg_slope_warmup_period(struct LinRegSlope *handle); bool wickra_lin_reg_slope_is_ready(struct LinRegSlope *handle); +const char *wickra_lin_reg_slope_name(struct LinRegSlope *handle); + void wickra_lin_reg_slope_reset(struct LinRegSlope *handle); void wickra_lin_reg_slope_free(struct LinRegSlope *handle); @@ -2880,6 +3024,8 @@ uintptr_t wickra_log_return_warmup_period(struct LogReturn *handle); bool wickra_log_return_is_ready(struct LogReturn *handle); +const char *wickra_log_return_name(struct LogReturn *handle); + void wickra_log_return_reset(struct LogReturn *handle); void wickra_log_return_free(struct LogReturn *handle); @@ -2899,6 +3045,8 @@ uintptr_t wickra_m2_measure_warmup_period(struct M2Measure *handle); bool wickra_m2_measure_is_ready(struct M2Measure *handle); +const char *wickra_m2_measure_name(struct M2Measure *handle); + void wickra_m2_measure_reset(struct M2Measure *handle); void wickra_m2_measure_free(struct M2Measure *handle); @@ -2916,6 +3064,8 @@ uintptr_t wickra_macd_histogram_warmup_period(struct MacdHistogram *handle); bool wickra_macd_histogram_is_ready(struct MacdHistogram *handle); +const char *wickra_macd_histogram_name(struct MacdHistogram *handle); + void wickra_macd_histogram_reset(struct MacdHistogram *handle); void wickra_macd_histogram_free(struct MacdHistogram *handle); @@ -2933,6 +3083,8 @@ uintptr_t wickra_martin_ratio_warmup_period(struct MartinRatio *handle); bool wickra_martin_ratio_is_ready(struct MartinRatio *handle); +const char *wickra_martin_ratio_name(struct MartinRatio *handle); + void wickra_martin_ratio_reset(struct MartinRatio *handle); void wickra_martin_ratio_free(struct MartinRatio *handle); @@ -2950,6 +3102,8 @@ uintptr_t wickra_max_drawdown_warmup_period(struct MaxDrawdown *handle); bool wickra_max_drawdown_is_ready(struct MaxDrawdown *handle); +const char *wickra_max_drawdown_name(struct MaxDrawdown *handle); + void wickra_max_drawdown_reset(struct MaxDrawdown *handle); void wickra_max_drawdown_free(struct MaxDrawdown *handle); @@ -2967,6 +3121,8 @@ uintptr_t wickra_mc_ginley_dynamic_warmup_period(struct McGinleyDynamic *handle) bool wickra_mc_ginley_dynamic_is_ready(struct McGinleyDynamic *handle); +const char *wickra_mc_ginley_dynamic_name(struct McGinleyDynamic *handle); + void wickra_mc_ginley_dynamic_reset(struct McGinleyDynamic *handle); void wickra_mc_ginley_dynamic_free(struct McGinleyDynamic *handle); @@ -2985,6 +3141,8 @@ uintptr_t wickra_median_absolute_deviation_warmup_period(struct MedianAbsoluteDe bool wickra_median_absolute_deviation_is_ready(struct MedianAbsoluteDeviation *handle); +const char *wickra_median_absolute_deviation_name(struct MedianAbsoluteDeviation *handle); + void wickra_median_absolute_deviation_reset(struct MedianAbsoluteDeviation *handle); void wickra_median_absolute_deviation_free(struct MedianAbsoluteDeviation *handle); @@ -2999,6 +3157,8 @@ uintptr_t wickra_median_ma_warmup_period(struct MedianMa *handle); bool wickra_median_ma_is_ready(struct MedianMa *handle); +const char *wickra_median_ma_name(struct MedianMa *handle); + void wickra_median_ma_reset(struct MedianMa *handle); void wickra_median_ma_free(struct MedianMa *handle); @@ -3013,6 +3173,8 @@ uintptr_t wickra_mid_point_warmup_period(struct MidPoint *handle); bool wickra_mid_point_is_ready(struct MidPoint *handle); +const char *wickra_mid_point_name(struct MidPoint *handle); + void wickra_mid_point_reset(struct MidPoint *handle); void wickra_mid_point_free(struct MidPoint *handle); @@ -3027,6 +3189,8 @@ uintptr_t wickra_mom_warmup_period(struct Mom *handle); bool wickra_mom_is_ready(struct Mom *handle); +const char *wickra_mom_name(struct Mom *handle); + void wickra_mom_reset(struct Mom *handle); void wickra_mom_free(struct Mom *handle); @@ -3044,6 +3208,8 @@ uintptr_t wickra_omega_ratio_warmup_period(struct OmegaRatio *handle); bool wickra_omega_ratio_is_ready(struct OmegaRatio *handle); +const char *wickra_omega_ratio_name(struct OmegaRatio *handle); + void wickra_omega_ratio_reset(struct OmegaRatio *handle); void wickra_omega_ratio_free(struct OmegaRatio *handle); @@ -3061,6 +3227,8 @@ uintptr_t wickra_pain_index_warmup_period(struct PainIndex *handle); bool wickra_pain_index_is_ready(struct PainIndex *handle); +const char *wickra_pain_index_name(struct PainIndex *handle); + void wickra_pain_index_reset(struct PainIndex *handle); void wickra_pain_index_free(struct PainIndex *handle); @@ -3075,6 +3243,8 @@ uintptr_t wickra_percent_b_warmup_period(struct PercentB *handle); bool wickra_percent_b_is_ready(struct PercentB *handle); +const char *wickra_percent_b_name(struct PercentB *handle); + void wickra_percent_b_reset(struct PercentB *handle); void wickra_percent_b_free(struct PercentB *handle); @@ -3092,6 +3262,8 @@ uintptr_t wickra_percentage_trailing_stop_warmup_period(struct PercentageTrailin bool wickra_percentage_trailing_stop_is_ready(struct PercentageTrailingStop *handle); +const char *wickra_percentage_trailing_stop_name(struct PercentageTrailingStop *handle); + void wickra_percentage_trailing_stop_reset(struct PercentageTrailingStop *handle); void wickra_percentage_trailing_stop_free(struct PercentageTrailingStop *handle); @@ -3106,6 +3278,8 @@ uintptr_t wickra_pmo_warmup_period(struct Pmo *handle); bool wickra_pmo_is_ready(struct Pmo *handle); +const char *wickra_pmo_name(struct Pmo *handle); + void wickra_pmo_reset(struct Pmo *handle); void wickra_pmo_free(struct Pmo *handle); @@ -3125,6 +3299,8 @@ uintptr_t wickra_polarized_fractal_efficiency_warmup_period(struct PolarizedFrac bool wickra_polarized_fractal_efficiency_is_ready(struct PolarizedFractalEfficiency *handle); +const char *wickra_polarized_fractal_efficiency_name(struct PolarizedFractalEfficiency *handle); + void wickra_polarized_fractal_efficiency_reset(struct PolarizedFractalEfficiency *handle); void wickra_polarized_fractal_efficiency_free(struct PolarizedFractalEfficiency *handle); @@ -3139,6 +3315,8 @@ uintptr_t wickra_ppo_warmup_period(struct Ppo *handle); bool wickra_ppo_is_ready(struct Ppo *handle); +const char *wickra_ppo_name(struct Ppo *handle); + void wickra_ppo_reset(struct Ppo *handle); void wickra_ppo_free(struct Ppo *handle); @@ -3156,6 +3334,8 @@ uintptr_t wickra_ppo_histogram_warmup_period(struct PpoHistogram *handle); bool wickra_ppo_histogram_is_ready(struct PpoHistogram *handle); +const char *wickra_ppo_histogram_name(struct PpoHistogram *handle); + void wickra_ppo_histogram_reset(struct PpoHistogram *handle); void wickra_ppo_histogram_free(struct PpoHistogram *handle); @@ -3173,6 +3353,8 @@ uintptr_t wickra_profit_factor_warmup_period(struct ProfitFactor *handle); bool wickra_profit_factor_is_ready(struct ProfitFactor *handle); +const char *wickra_profit_factor_name(struct ProfitFactor *handle); + void wickra_profit_factor_reset(struct ProfitFactor *handle); void wickra_profit_factor_free(struct ProfitFactor *handle); @@ -3187,6 +3369,8 @@ uintptr_t wickra_r_squared_warmup_period(struct RSquared *handle); bool wickra_r_squared_is_ready(struct RSquared *handle); +const char *wickra_r_squared_name(struct RSquared *handle); + void wickra_r_squared_reset(struct RSquared *handle); void wickra_r_squared_free(struct RSquared *handle); @@ -3204,6 +3388,8 @@ uintptr_t wickra_realized_volatility_warmup_period(struct RealizedVolatility *ha bool wickra_realized_volatility_is_ready(struct RealizedVolatility *handle); +const char *wickra_realized_volatility_name(struct RealizedVolatility *handle); + void wickra_realized_volatility_reset(struct RealizedVolatility *handle); void wickra_realized_volatility_free(struct RealizedVolatility *handle); @@ -3221,6 +3407,8 @@ uintptr_t wickra_recovery_factor_warmup_period(struct RecoveryFactor *handle); bool wickra_recovery_factor_is_ready(struct RecoveryFactor *handle); +const char *wickra_recovery_factor_name(struct RecoveryFactor *handle); + void wickra_recovery_factor_reset(struct RecoveryFactor *handle); void wickra_recovery_factor_free(struct RecoveryFactor *handle); @@ -3235,6 +3423,8 @@ uintptr_t wickra_reflex_warmup_period(struct Reflex *handle); bool wickra_reflex_is_ready(struct Reflex *handle); +const char *wickra_reflex_name(struct Reflex *handle); + void wickra_reflex_reset(struct Reflex *handle); void wickra_reflex_free(struct Reflex *handle); @@ -3252,6 +3442,8 @@ uintptr_t wickra_regime_label_warmup_period(struct RegimeLabel *handle); bool wickra_regime_label_is_ready(struct RegimeLabel *handle); +const char *wickra_regime_label_name(struct RegimeLabel *handle); + void wickra_regime_label_reset(struct RegimeLabel *handle); void wickra_regime_label_free(struct RegimeLabel *handle); @@ -3269,6 +3461,8 @@ uintptr_t wickra_renko_trailing_stop_warmup_period(struct RenkoTrailingStop *han bool wickra_renko_trailing_stop_is_ready(struct RenkoTrailingStop *handle); +const char *wickra_renko_trailing_stop_name(struct RenkoTrailingStop *handle); + void wickra_renko_trailing_stop_reset(struct RenkoTrailingStop *handle); void wickra_renko_trailing_stop_free(struct RenkoTrailingStop *handle); @@ -3283,6 +3477,8 @@ uintptr_t wickra_rmi_warmup_period(struct Rmi *handle); bool wickra_rmi_is_ready(struct Rmi *handle); +const char *wickra_rmi_name(struct Rmi *handle); + void wickra_rmi_reset(struct Rmi *handle); void wickra_rmi_free(struct Rmi *handle); @@ -3297,6 +3493,8 @@ uintptr_t wickra_roc_warmup_period(struct Roc *handle); bool wickra_roc_is_ready(struct Roc *handle); +const char *wickra_roc_name(struct Roc *handle); + void wickra_roc_reset(struct Roc *handle); void wickra_roc_free(struct Roc *handle); @@ -3311,6 +3509,8 @@ uintptr_t wickra_rocp_warmup_period(struct Rocp *handle); bool wickra_rocp_is_ready(struct Rocp *handle); +const char *wickra_rocp_name(struct Rocp *handle); + void wickra_rocp_reset(struct Rocp *handle); void wickra_rocp_free(struct Rocp *handle); @@ -3325,6 +3525,8 @@ uintptr_t wickra_rocr_warmup_period(struct Rocr *handle); bool wickra_rocr_is_ready(struct Rocr *handle); +const char *wickra_rocr_name(struct Rocr *handle); + void wickra_rocr_reset(struct Rocr *handle); void wickra_rocr_free(struct Rocr *handle); @@ -3339,6 +3541,8 @@ uintptr_t wickra_rocr100_warmup_period(struct Rocr100 *handle); bool wickra_rocr100_is_ready(struct Rocr100 *handle); +const char *wickra_rocr100_name(struct Rocr100 *handle); + void wickra_rocr100_reset(struct Rocr100 *handle); void wickra_rocr100_free(struct Rocr100 *handle); @@ -3356,6 +3560,8 @@ uintptr_t wickra_rolling_iqr_warmup_period(struct RollingIqr *handle); bool wickra_rolling_iqr_is_ready(struct RollingIqr *handle); +const char *wickra_rolling_iqr_name(struct RollingIqr *handle); + void wickra_rolling_iqr_reset(struct RollingIqr *handle); void wickra_rolling_iqr_free(struct RollingIqr *handle); @@ -3373,6 +3579,8 @@ uintptr_t wickra_rolling_min_max_scaler_warmup_period(struct RollingMinMaxScaler bool wickra_rolling_min_max_scaler_is_ready(struct RollingMinMaxScaler *handle); +const char *wickra_rolling_min_max_scaler_name(struct RollingMinMaxScaler *handle); + void wickra_rolling_min_max_scaler_reset(struct RollingMinMaxScaler *handle); void wickra_rolling_min_max_scaler_free(struct RollingMinMaxScaler *handle); @@ -3390,6 +3598,8 @@ uintptr_t wickra_rolling_percentile_rank_warmup_period(struct RollingPercentileR bool wickra_rolling_percentile_rank_is_ready(struct RollingPercentileRank *handle); +const char *wickra_rolling_percentile_rank_name(struct RollingPercentileRank *handle); + void wickra_rolling_percentile_rank_reset(struct RollingPercentileRank *handle); void wickra_rolling_percentile_rank_free(struct RollingPercentileRank *handle); @@ -3407,6 +3617,8 @@ uintptr_t wickra_rolling_quantile_warmup_period(struct RollingQuantile *handle); bool wickra_rolling_quantile_is_ready(struct RollingQuantile *handle); +const char *wickra_rolling_quantile_name(struct RollingQuantile *handle); + void wickra_rolling_quantile_reset(struct RollingQuantile *handle); void wickra_rolling_quantile_free(struct RollingQuantile *handle); @@ -3424,6 +3636,8 @@ uintptr_t wickra_roofing_filter_warmup_period(struct RoofingFilter *handle); bool wickra_roofing_filter_is_ready(struct RoofingFilter *handle); +const char *wickra_roofing_filter_name(struct RoofingFilter *handle); + void wickra_roofing_filter_reset(struct RoofingFilter *handle); void wickra_roofing_filter_free(struct RoofingFilter *handle); @@ -3438,6 +3652,8 @@ uintptr_t wickra_rsi_warmup_period(struct Rsi *handle); bool wickra_rsi_is_ready(struct Rsi *handle); +const char *wickra_rsi_name(struct Rsi *handle); + void wickra_rsi_reset(struct Rsi *handle); void wickra_rsi_free(struct Rsi *handle); @@ -3452,6 +3668,8 @@ uintptr_t wickra_rsx_warmup_period(struct Rsx *handle); bool wickra_rsx_is_ready(struct Rsx *handle); +const char *wickra_rsx_name(struct Rsx *handle); + void wickra_rsx_reset(struct Rsx *handle); void wickra_rsx_free(struct Rsx *handle); @@ -3469,6 +3687,8 @@ uintptr_t wickra_rvi_volatility_warmup_period(struct RviVolatility *handle); bool wickra_rvi_volatility_is_ready(struct RviVolatility *handle); +const char *wickra_rvi_volatility_name(struct RviVolatility *handle); + void wickra_rvi_volatility_reset(struct RviVolatility *handle); void wickra_rvi_volatility_free(struct RviVolatility *handle); @@ -3486,6 +3706,8 @@ uintptr_t wickra_sample_entropy_warmup_period(struct SampleEntropy *handle); bool wickra_sample_entropy_is_ready(struct SampleEntropy *handle); +const char *wickra_sample_entropy_name(struct SampleEntropy *handle); + void wickra_sample_entropy_reset(struct SampleEntropy *handle); void wickra_sample_entropy_free(struct SampleEntropy *handle); @@ -3503,6 +3725,8 @@ uintptr_t wickra_shannon_entropy_warmup_period(struct ShannonEntropy *handle); bool wickra_shannon_entropy_is_ready(struct ShannonEntropy *handle); +const char *wickra_shannon_entropy_name(struct ShannonEntropy *handle); + void wickra_shannon_entropy_reset(struct ShannonEntropy *handle); void wickra_shannon_entropy_free(struct ShannonEntropy *handle); @@ -3520,6 +3744,8 @@ uintptr_t wickra_sharpe_ratio_warmup_period(struct SharpeRatio *handle); bool wickra_sharpe_ratio_is_ready(struct SharpeRatio *handle); +const char *wickra_sharpe_ratio_name(struct SharpeRatio *handle); + void wickra_sharpe_ratio_reset(struct SharpeRatio *handle); void wickra_sharpe_ratio_free(struct SharpeRatio *handle); @@ -3534,6 +3760,8 @@ uintptr_t wickra_sine_wave_warmup_period(struct SineWave *handle); bool wickra_sine_wave_is_ready(struct SineWave *handle); +const char *wickra_sine_wave_name(struct SineWave *handle); + void wickra_sine_wave_reset(struct SineWave *handle); void wickra_sine_wave_free(struct SineWave *handle); @@ -3551,6 +3779,8 @@ uintptr_t wickra_sine_weighted_ma_warmup_period(struct SineWeightedMa *handle); bool wickra_sine_weighted_ma_is_ready(struct SineWeightedMa *handle); +const char *wickra_sine_weighted_ma_name(struct SineWeightedMa *handle); + void wickra_sine_weighted_ma_reset(struct SineWeightedMa *handle); void wickra_sine_weighted_ma_free(struct SineWeightedMa *handle); @@ -3565,6 +3795,8 @@ uintptr_t wickra_skewness_warmup_period(struct Skewness *handle); bool wickra_skewness_is_ready(struct Skewness *handle); +const char *wickra_skewness_name(struct Skewness *handle); + void wickra_skewness_reset(struct Skewness *handle); void wickra_skewness_free(struct Skewness *handle); @@ -3579,6 +3811,8 @@ uintptr_t wickra_sma_warmup_period(struct Sma *handle); bool wickra_sma_is_ready(struct Sma *handle); +const char *wickra_sma_name(struct Sma *handle); + void wickra_sma_reset(struct Sma *handle); void wickra_sma_free(struct Sma *handle); @@ -3593,6 +3827,8 @@ uintptr_t wickra_smma_warmup_period(struct Smma *handle); bool wickra_smma_is_ready(struct Smma *handle); +const char *wickra_smma_name(struct Smma *handle); + void wickra_smma_reset(struct Smma *handle); void wickra_smma_free(struct Smma *handle); @@ -3610,6 +3846,8 @@ uintptr_t wickra_sortino_ratio_warmup_period(struct SortinoRatio *handle); bool wickra_sortino_ratio_is_ready(struct SortinoRatio *handle); +const char *wickra_sortino_ratio_name(struct SortinoRatio *handle); + void wickra_sortino_ratio_reset(struct SortinoRatio *handle); void wickra_sortino_ratio_free(struct SortinoRatio *handle); @@ -3627,6 +3865,8 @@ uintptr_t wickra_standard_error_warmup_period(struct StandardError *handle); bool wickra_standard_error_is_ready(struct StandardError *handle); +const char *wickra_standard_error_name(struct StandardError *handle); + void wickra_standard_error_reset(struct StandardError *handle); void wickra_standard_error_free(struct StandardError *handle); @@ -3641,6 +3881,8 @@ uintptr_t wickra_stc_warmup_period(struct Stc *handle); bool wickra_stc_is_ready(struct Stc *handle); +const char *wickra_stc_name(struct Stc *handle); + void wickra_stc_reset(struct Stc *handle); void wickra_stc_free(struct Stc *handle); @@ -3655,6 +3897,8 @@ uintptr_t wickra_std_dev_warmup_period(struct StdDev *handle); bool wickra_std_dev_is_ready(struct StdDev *handle); +const char *wickra_std_dev_name(struct StdDev *handle); + void wickra_std_dev_reset(struct StdDev *handle); void wickra_std_dev_free(struct StdDev *handle); @@ -3672,6 +3916,8 @@ uintptr_t wickra_step_trailing_stop_warmup_period(struct StepTrailingStop *handl bool wickra_step_trailing_stop_is_ready(struct StepTrailingStop *handle); +const char *wickra_step_trailing_stop_name(struct StepTrailingStop *handle); + void wickra_step_trailing_stop_reset(struct StepTrailingStop *handle); void wickra_step_trailing_stop_free(struct StepTrailingStop *handle); @@ -3689,6 +3935,8 @@ uintptr_t wickra_sterling_ratio_warmup_period(struct SterlingRatio *handle); bool wickra_sterling_ratio_is_ready(struct SterlingRatio *handle); +const char *wickra_sterling_ratio_name(struct SterlingRatio *handle); + void wickra_sterling_ratio_reset(struct SterlingRatio *handle); void wickra_sterling_ratio_free(struct SterlingRatio *handle); @@ -3703,6 +3951,8 @@ uintptr_t wickra_stoch_rsi_warmup_period(struct StochRsi *handle); bool wickra_stoch_rsi_is_ready(struct StochRsi *handle); +const char *wickra_stoch_rsi_name(struct StochRsi *handle); + void wickra_stoch_rsi_reset(struct StochRsi *handle); void wickra_stoch_rsi_free(struct StochRsi *handle); @@ -3720,6 +3970,8 @@ uintptr_t wickra_super_smoother_warmup_period(struct SuperSmoother *handle); bool wickra_super_smoother_is_ready(struct SuperSmoother *handle); +const char *wickra_super_smoother_name(struct SuperSmoother *handle); + void wickra_super_smoother_reset(struct SuperSmoother *handle); void wickra_super_smoother_free(struct SuperSmoother *handle); @@ -3734,6 +3986,8 @@ uintptr_t wickra_t3_warmup_period(struct T3 *handle); bool wickra_t3_is_ready(struct T3 *handle); +const char *wickra_t3_name(struct T3 *handle); + void wickra_t3_reset(struct T3 *handle); void wickra_t3_free(struct T3 *handle); @@ -3751,6 +4005,8 @@ uintptr_t wickra_tail_ratio_warmup_period(struct TailRatio *handle); bool wickra_tail_ratio_is_ready(struct TailRatio *handle); +const char *wickra_tail_ratio_name(struct TailRatio *handle); + void wickra_tail_ratio_reset(struct TailRatio *handle); void wickra_tail_ratio_free(struct TailRatio *handle); @@ -3765,6 +4021,8 @@ uintptr_t wickra_tema_warmup_period(struct Tema *handle); bool wickra_tema_is_ready(struct Tema *handle); +const char *wickra_tema_name(struct Tema *handle); + void wickra_tema_reset(struct Tema *handle); void wickra_tema_free(struct Tema *handle); @@ -3779,6 +4037,8 @@ uintptr_t wickra_tii_warmup_period(struct Tii *handle); bool wickra_tii_is_ready(struct Tii *handle); +const char *wickra_tii_name(struct Tii *handle); + void wickra_tii_reset(struct Tii *handle); void wickra_tii_free(struct Tii *handle); @@ -3796,6 +4056,8 @@ uintptr_t wickra_trend_label_warmup_period(struct TrendLabel *handle); bool wickra_trend_label_is_ready(struct TrendLabel *handle); +const char *wickra_trend_label_name(struct TrendLabel *handle); + void wickra_trend_label_reset(struct TrendLabel *handle); void wickra_trend_label_free(struct TrendLabel *handle); @@ -3813,6 +4075,8 @@ uintptr_t wickra_trend_strength_index_warmup_period(struct TrendStrengthIndex *h bool wickra_trend_strength_index_is_ready(struct TrendStrengthIndex *handle); +const char *wickra_trend_strength_index_name(struct TrendStrengthIndex *handle); + void wickra_trend_strength_index_reset(struct TrendStrengthIndex *handle); void wickra_trend_strength_index_free(struct TrendStrengthIndex *handle); @@ -3830,6 +4094,8 @@ uintptr_t wickra_trendflex_warmup_period(struct Trendflex *handle); bool wickra_trendflex_is_ready(struct Trendflex *handle); +const char *wickra_trendflex_name(struct Trendflex *handle); + void wickra_trendflex_reset(struct Trendflex *handle); void wickra_trendflex_free(struct Trendflex *handle); @@ -3844,6 +4110,8 @@ uintptr_t wickra_trima_warmup_period(struct Trima *handle); bool wickra_trima_is_ready(struct Trima *handle); +const char *wickra_trima_name(struct Trima *handle); + void wickra_trima_reset(struct Trima *handle); void wickra_trima_free(struct Trima *handle); @@ -3858,6 +4126,8 @@ uintptr_t wickra_trix_warmup_period(struct Trix *handle); bool wickra_trix_is_ready(struct Trix *handle); +const char *wickra_trix_name(struct Trix *handle); + void wickra_trix_reset(struct Trix *handle); void wickra_trix_free(struct Trix *handle); @@ -3872,6 +4142,8 @@ uintptr_t wickra_tsf_warmup_period(struct Tsf *handle); bool wickra_tsf_is_ready(struct Tsf *handle); +const char *wickra_tsf_name(struct Tsf *handle); + void wickra_tsf_reset(struct Tsf *handle); void wickra_tsf_free(struct Tsf *handle); @@ -3889,6 +4161,8 @@ uintptr_t wickra_tsf_oscillator_warmup_period(struct TsfOscillator *handle); bool wickra_tsf_oscillator_is_ready(struct TsfOscillator *handle); +const char *wickra_tsf_oscillator_name(struct TsfOscillator *handle); + void wickra_tsf_oscillator_reset(struct TsfOscillator *handle); void wickra_tsf_oscillator_free(struct TsfOscillator *handle); @@ -3903,6 +4177,8 @@ uintptr_t wickra_tsi_warmup_period(struct Tsi *handle); bool wickra_tsi_is_ready(struct Tsi *handle); +const char *wickra_tsi_name(struct Tsi *handle); + void wickra_tsi_reset(struct Tsi *handle); void wickra_tsi_free(struct Tsi *handle); @@ -3920,6 +4196,8 @@ uintptr_t wickra_ulcer_index_warmup_period(struct UlcerIndex *handle); bool wickra_ulcer_index_is_ready(struct UlcerIndex *handle); +const char *wickra_ulcer_index_name(struct UlcerIndex *handle); + void wickra_ulcer_index_reset(struct UlcerIndex *handle); void wickra_ulcer_index_free(struct UlcerIndex *handle); @@ -3937,6 +4215,8 @@ uintptr_t wickra_universal_oscillator_warmup_period(struct UniversalOscillator * bool wickra_universal_oscillator_is_ready(struct UniversalOscillator *handle); +const char *wickra_universal_oscillator_name(struct UniversalOscillator *handle); + void wickra_universal_oscillator_reset(struct UniversalOscillator *handle); void wickra_universal_oscillator_free(struct UniversalOscillator *handle); @@ -3954,6 +4234,8 @@ uintptr_t wickra_upside_potential_ratio_warmup_period(struct UpsidePotentialRati bool wickra_upside_potential_ratio_is_ready(struct UpsidePotentialRatio *handle); +const char *wickra_upside_potential_ratio_name(struct UpsidePotentialRatio *handle); + void wickra_upside_potential_ratio_reset(struct UpsidePotentialRatio *handle); void wickra_upside_potential_ratio_free(struct UpsidePotentialRatio *handle); @@ -3971,6 +4253,8 @@ uintptr_t wickra_value_at_risk_warmup_period(struct ValueAtRisk *handle); bool wickra_value_at_risk_is_ready(struct ValueAtRisk *handle); +const char *wickra_value_at_risk_name(struct ValueAtRisk *handle); + void wickra_value_at_risk_reset(struct ValueAtRisk *handle); void wickra_value_at_risk_free(struct ValueAtRisk *handle); @@ -3985,6 +4269,8 @@ uintptr_t wickra_variance_warmup_period(struct Variance *handle); bool wickra_variance_is_ready(struct Variance *handle); +const char *wickra_variance_name(struct Variance *handle); + void wickra_variance_reset(struct Variance *handle); void wickra_variance_free(struct Variance *handle); @@ -4003,6 +4289,8 @@ uintptr_t wickra_vertical_horizontal_filter_warmup_period(struct VerticalHorizon bool wickra_vertical_horizontal_filter_is_ready(struct VerticalHorizontalFilter *handle); +const char *wickra_vertical_horizontal_filter_name(struct VerticalHorizontalFilter *handle); + void wickra_vertical_horizontal_filter_reset(struct VerticalHorizontalFilter *handle); void wickra_vertical_horizontal_filter_free(struct VerticalHorizontalFilter *handle); @@ -4017,6 +4305,8 @@ uintptr_t wickra_vidya_warmup_period(struct Vidya *handle); bool wickra_vidya_is_ready(struct Vidya *handle); +const char *wickra_vidya_name(struct Vidya *handle); + void wickra_vidya_reset(struct Vidya *handle); void wickra_vidya_free(struct Vidya *handle); @@ -4035,6 +4325,8 @@ uintptr_t wickra_volatility_of_volatility_warmup_period(struct VolatilityOfVolat bool wickra_volatility_of_volatility_is_ready(struct VolatilityOfVolatility *handle); +const char *wickra_volatility_of_volatility_name(struct VolatilityOfVolatility *handle); + void wickra_volatility_of_volatility_reset(struct VolatilityOfVolatility *handle); void wickra_volatility_of_volatility_free(struct VolatilityOfVolatility *handle); @@ -4049,6 +4341,8 @@ uintptr_t wickra_wave_pm_warmup_period(struct WavePm *handle); bool wickra_wave_pm_is_ready(struct WavePm *handle); +const char *wickra_wave_pm_name(struct WavePm *handle); + void wickra_wave_pm_reset(struct WavePm *handle); void wickra_wave_pm_free(struct WavePm *handle); @@ -4063,6 +4357,8 @@ uintptr_t wickra_win_rate_warmup_period(struct WinRate *handle); bool wickra_win_rate_is_ready(struct WinRate *handle); +const char *wickra_win_rate_name(struct WinRate *handle); + void wickra_win_rate_reset(struct WinRate *handle); void wickra_win_rate_free(struct WinRate *handle); @@ -4077,6 +4373,8 @@ uintptr_t wickra_wma_warmup_period(struct Wma *handle); bool wickra_wma_is_ready(struct Wma *handle); +const char *wickra_wma_name(struct Wma *handle); + void wickra_wma_reset(struct Wma *handle); void wickra_wma_free(struct Wma *handle); @@ -4091,6 +4389,8 @@ uintptr_t wickra_z_score_warmup_period(struct ZScore *handle); bool wickra_z_score_is_ready(struct ZScore *handle); +const char *wickra_z_score_name(struct ZScore *handle); + void wickra_z_score_reset(struct ZScore *handle); void wickra_z_score_free(struct ZScore *handle); @@ -4105,6 +4405,8 @@ uintptr_t wickra_zlema_warmup_period(struct Zlema *handle); bool wickra_zlema_is_ready(struct Zlema *handle); +const char *wickra_zlema_name(struct Zlema *handle); + void wickra_zlema_reset(struct Zlema *handle); void wickra_zlema_free(struct Zlema *handle); @@ -4123,6 +4425,8 @@ uintptr_t wickra_alpha_warmup_period(struct Alpha *handle); bool wickra_alpha_is_ready(struct Alpha *handle); +const char *wickra_alpha_name(struct Alpha *handle); + void wickra_alpha_reset(struct Alpha *handle); void wickra_alpha_free(struct Alpha *handle); @@ -4141,6 +4445,8 @@ uintptr_t wickra_beta_warmup_period(struct Beta *handle); bool wickra_beta_is_ready(struct Beta *handle); +const char *wickra_beta_name(struct Beta *handle); + void wickra_beta_reset(struct Beta *handle); void wickra_beta_free(struct Beta *handle); @@ -4159,6 +4465,8 @@ uintptr_t wickra_beta_neutral_spread_warmup_period(struct BetaNeutralSpread *han bool wickra_beta_neutral_spread_is_ready(struct BetaNeutralSpread *handle); +const char *wickra_beta_neutral_spread_name(struct BetaNeutralSpread *handle); + void wickra_beta_neutral_spread_reset(struct BetaNeutralSpread *handle); void wickra_beta_neutral_spread_free(struct BetaNeutralSpread *handle); @@ -4177,6 +4485,8 @@ uintptr_t wickra_distance_ssd_warmup_period(struct DistanceSsd *handle); bool wickra_distance_ssd_is_ready(struct DistanceSsd *handle); +const char *wickra_distance_ssd_name(struct DistanceSsd *handle); + void wickra_distance_ssd_reset(struct DistanceSsd *handle); void wickra_distance_ssd_free(struct DistanceSsd *handle); @@ -4195,6 +4505,8 @@ uintptr_t wickra_granger_causality_warmup_period(struct GrangerCausality *handle bool wickra_granger_causality_is_ready(struct GrangerCausality *handle); +const char *wickra_granger_causality_name(struct GrangerCausality *handle); + void wickra_granger_causality_reset(struct GrangerCausality *handle); void wickra_granger_causality_free(struct GrangerCausality *handle); @@ -4215,6 +4527,8 @@ uintptr_t wickra_hasbrouck_information_share_warmup_period(struct HasbrouckInfor bool wickra_hasbrouck_information_share_is_ready(struct HasbrouckInformationShare *handle); +const char *wickra_hasbrouck_information_share_name(struct HasbrouckInformationShare *handle); + void wickra_hasbrouck_information_share_reset(struct HasbrouckInformationShare *handle); void wickra_hasbrouck_information_share_free(struct HasbrouckInformationShare *handle); @@ -4233,6 +4547,8 @@ uintptr_t wickra_information_ratio_warmup_period(struct InformationRatio *handle bool wickra_information_ratio_is_ready(struct InformationRatio *handle); +const char *wickra_information_ratio_name(struct InformationRatio *handle); + void wickra_information_ratio_reset(struct InformationRatio *handle); void wickra_information_ratio_free(struct InformationRatio *handle); @@ -4251,6 +4567,8 @@ uintptr_t wickra_kendall_tau_warmup_period(struct KendallTau *handle); bool wickra_kendall_tau_is_ready(struct KendallTau *handle); +const char *wickra_kendall_tau_name(struct KendallTau *handle); + void wickra_kendall_tau_reset(struct KendallTau *handle); void wickra_kendall_tau_free(struct KendallTau *handle); @@ -4269,6 +4587,8 @@ uintptr_t wickra_ou_half_life_warmup_period(struct OuHalfLife *handle); bool wickra_ou_half_life_is_ready(struct OuHalfLife *handle); +const char *wickra_ou_half_life_name(struct OuHalfLife *handle); + void wickra_ou_half_life_reset(struct OuHalfLife *handle); void wickra_ou_half_life_free(struct OuHalfLife *handle); @@ -4287,6 +4607,8 @@ uintptr_t wickra_pair_spread_z_score_warmup_period(struct PairSpreadZScore *hand bool wickra_pair_spread_z_score_is_ready(struct PairSpreadZScore *handle); +const char *wickra_pair_spread_z_score_name(struct PairSpreadZScore *handle); + void wickra_pair_spread_z_score_reset(struct PairSpreadZScore *handle); void wickra_pair_spread_z_score_free(struct PairSpreadZScore *handle); @@ -4305,6 +4627,8 @@ uintptr_t wickra_pairwise_beta_warmup_period(struct PairwiseBeta *handle); bool wickra_pairwise_beta_is_ready(struct PairwiseBeta *handle); +const char *wickra_pairwise_beta_name(struct PairwiseBeta *handle); + void wickra_pairwise_beta_reset(struct PairwiseBeta *handle); void wickra_pairwise_beta_free(struct PairwiseBeta *handle); @@ -4323,6 +4647,8 @@ uintptr_t wickra_pearson_correlation_warmup_period(struct PearsonCorrelation *ha bool wickra_pearson_correlation_is_ready(struct PearsonCorrelation *handle); +const char *wickra_pearson_correlation_name(struct PearsonCorrelation *handle); + void wickra_pearson_correlation_reset(struct PearsonCorrelation *handle); void wickra_pearson_correlation_free(struct PearsonCorrelation *handle); @@ -4341,6 +4667,8 @@ uintptr_t wickra_rolling_correlation_warmup_period(struct RollingCorrelation *ha bool wickra_rolling_correlation_is_ready(struct RollingCorrelation *handle); +const char *wickra_rolling_correlation_name(struct RollingCorrelation *handle); + void wickra_rolling_correlation_reset(struct RollingCorrelation *handle); void wickra_rolling_correlation_free(struct RollingCorrelation *handle); @@ -4359,6 +4687,8 @@ uintptr_t wickra_rolling_covariance_warmup_period(struct RollingCovariance *hand bool wickra_rolling_covariance_is_ready(struct RollingCovariance *handle); +const char *wickra_rolling_covariance_name(struct RollingCovariance *handle); + void wickra_rolling_covariance_reset(struct RollingCovariance *handle); void wickra_rolling_covariance_free(struct RollingCovariance *handle); @@ -4377,6 +4707,8 @@ uintptr_t wickra_spearman_correlation_warmup_period(struct SpearmanCorrelation * bool wickra_spearman_correlation_is_ready(struct SpearmanCorrelation *handle); +const char *wickra_spearman_correlation_name(struct SpearmanCorrelation *handle); + void wickra_spearman_correlation_reset(struct SpearmanCorrelation *handle); void wickra_spearman_correlation_free(struct SpearmanCorrelation *handle); @@ -4397,6 +4729,8 @@ uintptr_t wickra_spread_ar1_coefficient_warmup_period(struct SpreadAr1Coefficien bool wickra_spread_ar1_coefficient_is_ready(struct SpreadAr1Coefficient *handle); +const char *wickra_spread_ar1_coefficient_name(struct SpreadAr1Coefficient *handle); + void wickra_spread_ar1_coefficient_reset(struct SpreadAr1Coefficient *handle); void wickra_spread_ar1_coefficient_free(struct SpreadAr1Coefficient *handle); @@ -4415,6 +4749,8 @@ uintptr_t wickra_spread_hurst_warmup_period(struct SpreadHurst *handle); bool wickra_spread_hurst_is_ready(struct SpreadHurst *handle); +const char *wickra_spread_hurst_name(struct SpreadHurst *handle); + void wickra_spread_hurst_reset(struct SpreadHurst *handle); void wickra_spread_hurst_free(struct SpreadHurst *handle); @@ -4433,6 +4769,8 @@ uintptr_t wickra_treynor_ratio_warmup_period(struct TreynorRatio *handle); bool wickra_treynor_ratio_is_ready(struct TreynorRatio *handle); +const char *wickra_treynor_ratio_name(struct TreynorRatio *handle); + void wickra_treynor_ratio_reset(struct TreynorRatio *handle); void wickra_treynor_ratio_free(struct TreynorRatio *handle); @@ -4451,6 +4789,8 @@ uintptr_t wickra_variance_ratio_warmup_period(struct VarianceRatio *handle); bool wickra_variance_ratio_is_ready(struct VarianceRatio *handle); +const char *wickra_variance_ratio_name(struct VarianceRatio *handle); + void wickra_variance_ratio_reset(struct VarianceRatio *handle); void wickra_variance_ratio_free(struct VarianceRatio *handle); @@ -4479,6 +4819,8 @@ uintptr_t wickra_abandoned_baby_warmup_period(struct AbandonedBaby *handle); bool wickra_abandoned_baby_is_ready(struct AbandonedBaby *handle); +const char *wickra_abandoned_baby_name(struct AbandonedBaby *handle); + void wickra_abandoned_baby_reset(struct AbandonedBaby *handle); void wickra_abandoned_baby_free(struct AbandonedBaby *handle); @@ -4507,6 +4849,8 @@ uintptr_t wickra_abcd_warmup_period(struct Abcd *handle); bool wickra_abcd_is_ready(struct Abcd *handle); +const char *wickra_abcd_name(struct Abcd *handle); + void wickra_abcd_reset(struct Abcd *handle); void wickra_abcd_free(struct Abcd *handle); @@ -4537,6 +4881,8 @@ uintptr_t wickra_accelerator_oscillator_warmup_period(struct AcceleratorOscillat bool wickra_accelerator_oscillator_is_ready(struct AcceleratorOscillator *handle); +const char *wickra_accelerator_oscillator_name(struct AcceleratorOscillator *handle); + void wickra_accelerator_oscillator_reset(struct AcceleratorOscillator *handle); void wickra_accelerator_oscillator_free(struct AcceleratorOscillator *handle); @@ -4565,6 +4911,8 @@ uintptr_t wickra_ad_oscillator_warmup_period(struct AdOscillator *handle); bool wickra_ad_oscillator_is_ready(struct AdOscillator *handle); +const char *wickra_ad_oscillator_name(struct AdOscillator *handle); + void wickra_ad_oscillator_reset(struct AdOscillator *handle); void wickra_ad_oscillator_free(struct AdOscillator *handle); @@ -4593,6 +4941,8 @@ uintptr_t wickra_adaptive_cci_warmup_period(struct AdaptiveCci *handle); bool wickra_adaptive_cci_is_ready(struct AdaptiveCci *handle); +const char *wickra_adaptive_cci_name(struct AdaptiveCci *handle); + void wickra_adaptive_cci_reset(struct AdaptiveCci *handle); void wickra_adaptive_cci_free(struct AdaptiveCci *handle); @@ -4621,6 +4971,8 @@ uintptr_t wickra_adl_warmup_period(struct Adl *handle); bool wickra_adl_is_ready(struct Adl *handle); +const char *wickra_adl_name(struct Adl *handle); + void wickra_adl_reset(struct Adl *handle); void wickra_adl_free(struct Adl *handle); @@ -4649,6 +5001,8 @@ uintptr_t wickra_advance_block_warmup_period(struct AdvanceBlock *handle); bool wickra_advance_block_is_ready(struct AdvanceBlock *handle); +const char *wickra_advance_block_name(struct AdvanceBlock *handle); + void wickra_advance_block_reset(struct AdvanceBlock *handle); void wickra_advance_block_free(struct AdvanceBlock *handle); @@ -4677,6 +5031,8 @@ uintptr_t wickra_adxr_warmup_period(struct Adxr *handle); bool wickra_adxr_is_ready(struct Adxr *handle); +const char *wickra_adxr_name(struct Adxr *handle); + void wickra_adxr_reset(struct Adxr *handle); void wickra_adxr_free(struct Adxr *handle); @@ -4705,6 +5061,8 @@ uintptr_t wickra_anchored_vwap_warmup_period(struct AnchoredVwap *handle); bool wickra_anchored_vwap_is_ready(struct AnchoredVwap *handle); +const char *wickra_anchored_vwap_name(struct AnchoredVwap *handle); + void wickra_anchored_vwap_reset(struct AnchoredVwap *handle); void wickra_anchored_vwap_free(struct AnchoredVwap *handle); @@ -4733,6 +5091,8 @@ uintptr_t wickra_aroon_oscillator_warmup_period(struct AroonOscillator *handle); bool wickra_aroon_oscillator_is_ready(struct AroonOscillator *handle); +const char *wickra_aroon_oscillator_name(struct AroonOscillator *handle); + void wickra_aroon_oscillator_reset(struct AroonOscillator *handle); void wickra_aroon_oscillator_free(struct AroonOscillator *handle); @@ -4761,6 +5121,8 @@ uintptr_t wickra_atr_warmup_period(struct Atr *handle); bool wickra_atr_is_ready(struct Atr *handle); +const char *wickra_atr_name(struct Atr *handle); + void wickra_atr_reset(struct Atr *handle); void wickra_atr_free(struct Atr *handle); @@ -4789,6 +5151,8 @@ uintptr_t wickra_atr_trailing_stop_warmup_period(struct AtrTrailingStop *handle) bool wickra_atr_trailing_stop_is_ready(struct AtrTrailingStop *handle); +const char *wickra_atr_trailing_stop_name(struct AtrTrailingStop *handle); + void wickra_atr_trailing_stop_reset(struct AtrTrailingStop *handle); void wickra_atr_trailing_stop_free(struct AtrTrailingStop *handle); @@ -4818,6 +5182,8 @@ uintptr_t wickra_average_daily_range_warmup_period(struct AverageDailyRange *han bool wickra_average_daily_range_is_ready(struct AverageDailyRange *handle); +const char *wickra_average_daily_range_name(struct AverageDailyRange *handle); + void wickra_average_daily_range_reset(struct AverageDailyRange *handle); void wickra_average_daily_range_free(struct AverageDailyRange *handle); @@ -4846,6 +5212,8 @@ uintptr_t wickra_avg_price_warmup_period(struct AvgPrice *handle); bool wickra_avg_price_is_ready(struct AvgPrice *handle); +const char *wickra_avg_price_name(struct AvgPrice *handle); + void wickra_avg_price_reset(struct AvgPrice *handle); void wickra_avg_price_free(struct AvgPrice *handle); @@ -4874,13 +5242,15 @@ uintptr_t wickra_awesome_oscillator_warmup_period(struct AwesomeOscillator *hand bool wickra_awesome_oscillator_is_ready(struct AwesomeOscillator *handle); +const char *wickra_awesome_oscillator_name(struct AwesomeOscillator *handle); + void wickra_awesome_oscillator_reset(struct AwesomeOscillator *handle); void wickra_awesome_oscillator_free(struct AwesomeOscillator *handle); struct AwesomeOscillatorHistogram *wickra_awesome_oscillator_histogram_new(uintptr_t fast, uintptr_t slow, - uintptr_t sma_period); + uintptr_t lookback); double wickra_awesome_oscillator_histogram_update(struct AwesomeOscillatorHistogram *handle, double open, @@ -4904,6 +5274,8 @@ uintptr_t wickra_awesome_oscillator_histogram_warmup_period(struct AwesomeOscill bool wickra_awesome_oscillator_histogram_is_ready(struct AwesomeOscillatorHistogram *handle); +const char *wickra_awesome_oscillator_histogram_name(struct AwesomeOscillatorHistogram *handle); + void wickra_awesome_oscillator_histogram_reset(struct AwesomeOscillatorHistogram *handle); void wickra_awesome_oscillator_histogram_free(struct AwesomeOscillatorHistogram *handle); @@ -4932,6 +5304,8 @@ uintptr_t wickra_balance_of_power_warmup_period(struct BalanceOfPower *handle); bool wickra_balance_of_power_is_ready(struct BalanceOfPower *handle); +const char *wickra_balance_of_power_name(struct BalanceOfPower *handle); + void wickra_balance_of_power_reset(struct BalanceOfPower *handle); void wickra_balance_of_power_free(struct BalanceOfPower *handle); @@ -4960,6 +5334,8 @@ uintptr_t wickra_bat_warmup_period(struct Bat *handle); bool wickra_bat_is_ready(struct Bat *handle); +const char *wickra_bat_name(struct Bat *handle); + void wickra_bat_reset(struct Bat *handle); void wickra_bat_free(struct Bat *handle); @@ -4988,6 +5364,8 @@ uintptr_t wickra_belt_hold_warmup_period(struct BeltHold *handle); bool wickra_belt_hold_is_ready(struct BeltHold *handle); +const char *wickra_belt_hold_name(struct BeltHold *handle); + void wickra_belt_hold_reset(struct BeltHold *handle); void wickra_belt_hold_free(struct BeltHold *handle); @@ -5016,6 +5394,8 @@ uintptr_t wickra_better_volume_warmup_period(struct BetterVolume *handle); bool wickra_better_volume_is_ready(struct BetterVolume *handle); +const char *wickra_better_volume_name(struct BetterVolume *handle); + void wickra_better_volume_reset(struct BetterVolume *handle); void wickra_better_volume_free(struct BetterVolume *handle); @@ -5044,6 +5424,8 @@ uintptr_t wickra_body_size_pct_warmup_period(struct BodySizePct *handle); bool wickra_body_size_pct_is_ready(struct BodySizePct *handle); +const char *wickra_body_size_pct_name(struct BodySizePct *handle); + void wickra_body_size_pct_reset(struct BodySizePct *handle); void wickra_body_size_pct_free(struct BodySizePct *handle); @@ -5072,6 +5454,8 @@ uintptr_t wickra_breakaway_warmup_period(struct Breakaway *handle); bool wickra_breakaway_is_ready(struct Breakaway *handle); +const char *wickra_breakaway_name(struct Breakaway *handle); + void wickra_breakaway_reset(struct Breakaway *handle); void wickra_breakaway_free(struct Breakaway *handle); @@ -5100,6 +5484,8 @@ uintptr_t wickra_butterfly_warmup_period(struct Butterfly *handle); bool wickra_butterfly_is_ready(struct Butterfly *handle); +const char *wickra_butterfly_name(struct Butterfly *handle); + void wickra_butterfly_reset(struct Butterfly *handle); void wickra_butterfly_free(struct Butterfly *handle); @@ -5128,6 +5514,8 @@ uintptr_t wickra_cci_warmup_period(struct Cci *handle); bool wickra_cci_is_ready(struct Cci *handle); +const char *wickra_cci_name(struct Cci *handle); + void wickra_cci_reset(struct Cci *handle); void wickra_cci_free(struct Cci *handle); @@ -5156,6 +5544,8 @@ uintptr_t wickra_chaikin_oscillator_warmup_period(struct ChaikinOscillator *hand bool wickra_chaikin_oscillator_is_ready(struct ChaikinOscillator *handle); +const char *wickra_chaikin_oscillator_name(struct ChaikinOscillator *handle); + void wickra_chaikin_oscillator_reset(struct ChaikinOscillator *handle); void wickra_chaikin_oscillator_free(struct ChaikinOscillator *handle); @@ -5184,6 +5574,8 @@ uintptr_t wickra_chaikin_volatility_warmup_period(struct ChaikinVolatility *hand bool wickra_chaikin_volatility_is_ready(struct ChaikinVolatility *handle); +const char *wickra_chaikin_volatility_name(struct ChaikinVolatility *handle); + void wickra_chaikin_volatility_reset(struct ChaikinVolatility *handle); void wickra_chaikin_volatility_free(struct ChaikinVolatility *handle); @@ -5212,6 +5604,8 @@ uintptr_t wickra_choppiness_index_warmup_period(struct ChoppinessIndex *handle); bool wickra_choppiness_index_is_ready(struct ChoppinessIndex *handle); +const char *wickra_choppiness_index_name(struct ChoppinessIndex *handle); + void wickra_choppiness_index_reset(struct ChoppinessIndex *handle); void wickra_choppiness_index_free(struct ChoppinessIndex *handle); @@ -5240,6 +5634,8 @@ uintptr_t wickra_close_vs_open_warmup_period(struct CloseVsOpen *handle); bool wickra_close_vs_open_is_ready(struct CloseVsOpen *handle); +const char *wickra_close_vs_open_name(struct CloseVsOpen *handle); + void wickra_close_vs_open_reset(struct CloseVsOpen *handle); void wickra_close_vs_open_free(struct CloseVsOpen *handle); @@ -5268,6 +5664,8 @@ uintptr_t wickra_closing_marubozu_warmup_period(struct ClosingMarubozu *handle); bool wickra_closing_marubozu_is_ready(struct ClosingMarubozu *handle); +const char *wickra_closing_marubozu_name(struct ClosingMarubozu *handle); + void wickra_closing_marubozu_reset(struct ClosingMarubozu *handle); void wickra_closing_marubozu_free(struct ClosingMarubozu *handle); @@ -5296,6 +5694,8 @@ uintptr_t wickra_chaikin_money_flow_warmup_period(struct ChaikinMoneyFlow *handl bool wickra_chaikin_money_flow_is_ready(struct ChaikinMoneyFlow *handle); +const char *wickra_chaikin_money_flow_name(struct ChaikinMoneyFlow *handle); + void wickra_chaikin_money_flow_reset(struct ChaikinMoneyFlow *handle); void wickra_chaikin_money_flow_free(struct ChaikinMoneyFlow *handle); @@ -5324,6 +5724,8 @@ uintptr_t wickra_concealing_baby_swallow_warmup_period(struct ConcealingBabySwal bool wickra_concealing_baby_swallow_is_ready(struct ConcealingBabySwallow *handle); +const char *wickra_concealing_baby_swallow_name(struct ConcealingBabySwallow *handle); + void wickra_concealing_baby_swallow_reset(struct ConcealingBabySwallow *handle); void wickra_concealing_baby_swallow_free(struct ConcealingBabySwallow *handle); @@ -5352,6 +5754,8 @@ uintptr_t wickra_counterattack_warmup_period(struct Counterattack *handle); bool wickra_counterattack_is_ready(struct Counterattack *handle); +const char *wickra_counterattack_name(struct Counterattack *handle); + void wickra_counterattack_reset(struct Counterattack *handle); void wickra_counterattack_free(struct Counterattack *handle); @@ -5380,6 +5784,8 @@ uintptr_t wickra_crab_warmup_period(struct Crab *handle); bool wickra_crab_is_ready(struct Crab *handle); +const char *wickra_crab_name(struct Crab *handle); + void wickra_crab_reset(struct Crab *handle); void wickra_crab_free(struct Crab *handle); @@ -5408,6 +5814,8 @@ uintptr_t wickra_cup_and_handle_warmup_period(struct CupAndHandle *handle); bool wickra_cup_and_handle_is_ready(struct CupAndHandle *handle); +const char *wickra_cup_and_handle_name(struct CupAndHandle *handle); + void wickra_cup_and_handle_reset(struct CupAndHandle *handle); void wickra_cup_and_handle_free(struct CupAndHandle *handle); @@ -5436,6 +5844,8 @@ uintptr_t wickra_cypher_warmup_period(struct Cypher *handle); bool wickra_cypher_is_ready(struct Cypher *handle); +const char *wickra_cypher_name(struct Cypher *handle); + void wickra_cypher_reset(struct Cypher *handle); void wickra_cypher_free(struct Cypher *handle); @@ -5464,6 +5874,8 @@ uintptr_t wickra_demand_index_warmup_period(struct DemandIndex *handle); bool wickra_demand_index_is_ready(struct DemandIndex *handle); +const char *wickra_demand_index_name(struct DemandIndex *handle); + void wickra_demand_index_reset(struct DemandIndex *handle); void wickra_demand_index_free(struct DemandIndex *handle); @@ -5492,6 +5904,8 @@ uintptr_t wickra_doji_warmup_period(struct Doji *handle); bool wickra_doji_is_ready(struct Doji *handle); +const char *wickra_doji_name(struct Doji *handle); + void wickra_doji_reset(struct Doji *handle); void wickra_doji_free(struct Doji *handle); @@ -5520,6 +5934,8 @@ uintptr_t wickra_doji_star_warmup_period(struct DojiStar *handle); bool wickra_doji_star_is_ready(struct DojiStar *handle); +const char *wickra_doji_star_name(struct DojiStar *handle); + void wickra_doji_star_reset(struct DojiStar *handle); void wickra_doji_star_free(struct DojiStar *handle); @@ -5548,6 +5964,8 @@ uintptr_t wickra_double_top_bottom_warmup_period(struct DoubleTopBottom *handle) bool wickra_double_top_bottom_is_ready(struct DoubleTopBottom *handle); +const char *wickra_double_top_bottom_name(struct DoubleTopBottom *handle); + void wickra_double_top_bottom_reset(struct DoubleTopBottom *handle); void wickra_double_top_bottom_free(struct DoubleTopBottom *handle); @@ -5576,6 +5994,8 @@ uintptr_t wickra_downside_gap_three_methods_warmup_period(struct DownsideGapThre bool wickra_downside_gap_three_methods_is_ready(struct DownsideGapThreeMethods *handle); +const char *wickra_downside_gap_three_methods_name(struct DownsideGapThreeMethods *handle); + void wickra_downside_gap_three_methods_reset(struct DownsideGapThreeMethods *handle); void wickra_downside_gap_three_methods_free(struct DownsideGapThreeMethods *handle); @@ -5604,6 +6024,8 @@ uintptr_t wickra_dragonfly_doji_warmup_period(struct DragonflyDoji *handle); bool wickra_dragonfly_doji_is_ready(struct DragonflyDoji *handle); +const char *wickra_dragonfly_doji_name(struct DragonflyDoji *handle); + void wickra_dragonfly_doji_reset(struct DragonflyDoji *handle); void wickra_dragonfly_doji_free(struct DragonflyDoji *handle); @@ -5632,6 +6054,8 @@ uintptr_t wickra_dumpling_top_warmup_period(struct DumplingTop *handle); bool wickra_dumpling_top_is_ready(struct DumplingTop *handle); +const char *wickra_dumpling_top_name(struct DumplingTop *handle); + void wickra_dumpling_top_reset(struct DumplingTop *handle); void wickra_dumpling_top_free(struct DumplingTop *handle); @@ -5660,6 +6084,8 @@ uintptr_t wickra_dx_warmup_period(struct Dx *handle); bool wickra_dx_is_ready(struct Dx *handle); +const char *wickra_dx_name(struct Dx *handle); + void wickra_dx_reset(struct Dx *handle); void wickra_dx_free(struct Dx *handle); @@ -5688,6 +6114,8 @@ uintptr_t wickra_ease_of_movement_warmup_period(struct EaseOfMovement *handle); bool wickra_ease_of_movement_is_ready(struct EaseOfMovement *handle); +const char *wickra_ease_of_movement_name(struct EaseOfMovement *handle); + void wickra_ease_of_movement_reset(struct EaseOfMovement *handle); void wickra_ease_of_movement_free(struct EaseOfMovement *handle); @@ -5716,6 +6144,8 @@ uintptr_t wickra_engulfing_warmup_period(struct Engulfing *handle); bool wickra_engulfing_is_ready(struct Engulfing *handle); +const char *wickra_engulfing_name(struct Engulfing *handle); + void wickra_engulfing_reset(struct Engulfing *handle); void wickra_engulfing_free(struct Engulfing *handle); @@ -5744,6 +6174,8 @@ uintptr_t wickra_evening_doji_star_warmup_period(struct EveningDojiStar *handle) bool wickra_evening_doji_star_is_ready(struct EveningDojiStar *handle); +const char *wickra_evening_doji_star_name(struct EveningDojiStar *handle); + void wickra_evening_doji_star_reset(struct EveningDojiStar *handle); void wickra_evening_doji_star_free(struct EveningDojiStar *handle); @@ -5772,6 +6204,8 @@ uintptr_t wickra_evwma_warmup_period(struct Evwma *handle); bool wickra_evwma_is_ready(struct Evwma *handle); +const char *wickra_evwma_name(struct Evwma *handle); + void wickra_evwma_reset(struct Evwma *handle); void wickra_evwma_free(struct Evwma *handle); @@ -5800,6 +6234,8 @@ uintptr_t wickra_falling_three_methods_warmup_period(struct FallingThreeMethods bool wickra_falling_three_methods_is_ready(struct FallingThreeMethods *handle); +const char *wickra_falling_three_methods_name(struct FallingThreeMethods *handle); + void wickra_falling_three_methods_reset(struct FallingThreeMethods *handle); void wickra_falling_three_methods_free(struct FallingThreeMethods *handle); @@ -5828,6 +6264,8 @@ uintptr_t wickra_flag_pennant_warmup_period(struct FlagPennant *handle); bool wickra_flag_pennant_is_ready(struct FlagPennant *handle); +const char *wickra_flag_pennant_name(struct FlagPennant *handle); + void wickra_flag_pennant_reset(struct FlagPennant *handle); void wickra_flag_pennant_free(struct FlagPennant *handle); @@ -5856,6 +6294,8 @@ uintptr_t wickra_force_index_warmup_period(struct ForceIndex *handle); bool wickra_force_index_is_ready(struct ForceIndex *handle); +const char *wickra_force_index_name(struct ForceIndex *handle); + void wickra_force_index_reset(struct ForceIndex *handle); void wickra_force_index_free(struct ForceIndex *handle); @@ -5884,6 +6324,8 @@ uintptr_t wickra_fry_pan_bottom_warmup_period(struct FryPanBottom *handle); bool wickra_fry_pan_bottom_is_ready(struct FryPanBottom *handle); +const char *wickra_fry_pan_bottom_name(struct FryPanBottom *handle); + void wickra_fry_pan_bottom_reset(struct FryPanBottom *handle); void wickra_fry_pan_bottom_free(struct FryPanBottom *handle); @@ -5912,6 +6354,8 @@ uintptr_t wickra_gap_side_by_side_white_warmup_period(struct GapSideBySideWhite bool wickra_gap_side_by_side_white_is_ready(struct GapSideBySideWhite *handle); +const char *wickra_gap_side_by_side_white_name(struct GapSideBySideWhite *handle); + void wickra_gap_side_by_side_white_reset(struct GapSideBySideWhite *handle); void wickra_gap_side_by_side_white_free(struct GapSideBySideWhite *handle); @@ -5941,6 +6385,8 @@ uintptr_t wickra_garman_klass_volatility_warmup_period(struct GarmanKlassVolatil bool wickra_garman_klass_volatility_is_ready(struct GarmanKlassVolatility *handle); +const char *wickra_garman_klass_volatility_name(struct GarmanKlassVolatility *handle); + void wickra_garman_klass_volatility_reset(struct GarmanKlassVolatility *handle); void wickra_garman_klass_volatility_free(struct GarmanKlassVolatility *handle); @@ -5969,6 +6415,8 @@ uintptr_t wickra_gartley_warmup_period(struct Gartley *handle); bool wickra_gartley_is_ready(struct Gartley *handle); +const char *wickra_gartley_name(struct Gartley *handle); + void wickra_gartley_reset(struct Gartley *handle); void wickra_gartley_free(struct Gartley *handle); @@ -5997,6 +6445,8 @@ uintptr_t wickra_gravestone_doji_warmup_period(struct GravestoneDoji *handle); bool wickra_gravestone_doji_is_ready(struct GravestoneDoji *handle); +const char *wickra_gravestone_doji_name(struct GravestoneDoji *handle); + void wickra_gravestone_doji_reset(struct GravestoneDoji *handle); void wickra_gravestone_doji_free(struct GravestoneDoji *handle); @@ -6025,6 +6475,8 @@ uintptr_t wickra_hammer_warmup_period(struct Hammer *handle); bool wickra_hammer_is_ready(struct Hammer *handle); +const char *wickra_hammer_name(struct Hammer *handle); + void wickra_hammer_reset(struct Hammer *handle); void wickra_hammer_free(struct Hammer *handle); @@ -6053,6 +6505,8 @@ uintptr_t wickra_hanging_man_warmup_period(struct HangingMan *handle); bool wickra_hanging_man_is_ready(struct HangingMan *handle); +const char *wickra_hanging_man_name(struct HangingMan *handle); + void wickra_hanging_man_reset(struct HangingMan *handle); void wickra_hanging_man_free(struct HangingMan *handle); @@ -6081,6 +6535,8 @@ uintptr_t wickra_harami_warmup_period(struct Harami *handle); bool wickra_harami_is_ready(struct Harami *handle); +const char *wickra_harami_name(struct Harami *handle); + void wickra_harami_reset(struct Harami *handle); void wickra_harami_free(struct Harami *handle); @@ -6109,6 +6565,8 @@ uintptr_t wickra_harami_cross_warmup_period(struct HaramiCross *handle); bool wickra_harami_cross_is_ready(struct HaramiCross *handle); +const char *wickra_harami_cross_name(struct HaramiCross *handle); + void wickra_harami_cross_reset(struct HaramiCross *handle); void wickra_harami_cross_free(struct HaramiCross *handle); @@ -6137,6 +6595,8 @@ uintptr_t wickra_head_and_shoulders_warmup_period(struct HeadAndShoulders *handl bool wickra_head_and_shoulders_is_ready(struct HeadAndShoulders *handle); +const char *wickra_head_and_shoulders_name(struct HeadAndShoulders *handle); + void wickra_head_and_shoulders_reset(struct HeadAndShoulders *handle); void wickra_head_and_shoulders_free(struct HeadAndShoulders *handle); @@ -6165,6 +6625,8 @@ uintptr_t wickra_heikin_ashi_oscillator_warmup_period(struct HeikinAshiOscillato bool wickra_heikin_ashi_oscillator_is_ready(struct HeikinAshiOscillator *handle); +const char *wickra_heikin_ashi_oscillator_name(struct HeikinAshiOscillator *handle); + void wickra_heikin_ashi_oscillator_reset(struct HeikinAshiOscillator *handle); void wickra_heikin_ashi_oscillator_free(struct HeikinAshiOscillator *handle); @@ -6193,6 +6655,8 @@ uintptr_t wickra_high_low_range_warmup_period(struct HighLowRange *handle); bool wickra_high_low_range_is_ready(struct HighLowRange *handle); +const char *wickra_high_low_range_name(struct HighLowRange *handle); + void wickra_high_low_range_reset(struct HighLowRange *handle); void wickra_high_low_range_free(struct HighLowRange *handle); @@ -6221,6 +6685,8 @@ uintptr_t wickra_high_wave_warmup_period(struct HighWave *handle); bool wickra_high_wave_is_ready(struct HighWave *handle); +const char *wickra_high_wave_name(struct HighWave *handle); + void wickra_high_wave_reset(struct HighWave *handle); void wickra_high_wave_free(struct HighWave *handle); @@ -6249,6 +6715,8 @@ uintptr_t wickra_hikkake_warmup_period(struct Hikkake *handle); bool wickra_hikkake_is_ready(struct Hikkake *handle); +const char *wickra_hikkake_name(struct Hikkake *handle); + void wickra_hikkake_reset(struct Hikkake *handle); void wickra_hikkake_free(struct Hikkake *handle); @@ -6277,6 +6745,8 @@ uintptr_t wickra_hikkake_modified_warmup_period(struct HikkakeModified *handle); bool wickra_hikkake_modified_is_ready(struct HikkakeModified *handle); +const char *wickra_hikkake_modified_name(struct HikkakeModified *handle); + void wickra_hikkake_modified_reset(struct HikkakeModified *handle); void wickra_hikkake_modified_free(struct HikkakeModified *handle); @@ -6305,6 +6775,8 @@ uintptr_t wickra_hi_lo_activator_warmup_period(struct HiLoActivator *handle); bool wickra_hi_lo_activator_is_ready(struct HiLoActivator *handle); +const char *wickra_hi_lo_activator_name(struct HiLoActivator *handle); + void wickra_hi_lo_activator_reset(struct HiLoActivator *handle); void wickra_hi_lo_activator_free(struct HiLoActivator *handle); @@ -6333,6 +6805,8 @@ uintptr_t wickra_homing_pigeon_warmup_period(struct HomingPigeon *handle); bool wickra_homing_pigeon_is_ready(struct HomingPigeon *handle); +const char *wickra_homing_pigeon_name(struct HomingPigeon *handle); + void wickra_homing_pigeon_reset(struct HomingPigeon *handle); void wickra_homing_pigeon_free(struct HomingPigeon *handle); @@ -6361,6 +6835,8 @@ uintptr_t wickra_identical_three_crows_warmup_period(struct IdenticalThreeCrows bool wickra_identical_three_crows_is_ready(struct IdenticalThreeCrows *handle); +const char *wickra_identical_three_crows_name(struct IdenticalThreeCrows *handle); + void wickra_identical_three_crows_reset(struct IdenticalThreeCrows *handle); void wickra_identical_three_crows_free(struct IdenticalThreeCrows *handle); @@ -6389,6 +6865,8 @@ uintptr_t wickra_in_neck_warmup_period(struct InNeck *handle); bool wickra_in_neck_is_ready(struct InNeck *handle); +const char *wickra_in_neck_name(struct InNeck *handle); + void wickra_in_neck_reset(struct InNeck *handle); void wickra_in_neck_free(struct InNeck *handle); @@ -6417,6 +6895,8 @@ uintptr_t wickra_inertia_warmup_period(struct Inertia *handle); bool wickra_inertia_is_ready(struct Inertia *handle); +const char *wickra_inertia_name(struct Inertia *handle); + void wickra_inertia_reset(struct Inertia *handle); void wickra_inertia_free(struct Inertia *handle); @@ -6445,6 +6925,8 @@ uintptr_t wickra_intraday_intensity_warmup_period(struct IntradayIntensity *hand bool wickra_intraday_intensity_is_ready(struct IntradayIntensity *handle); +const char *wickra_intraday_intensity_name(struct IntradayIntensity *handle); + void wickra_intraday_intensity_reset(struct IntradayIntensity *handle); void wickra_intraday_intensity_free(struct IntradayIntensity *handle); @@ -6473,6 +6955,8 @@ uintptr_t wickra_intraday_momentum_index_warmup_period(struct IntradayMomentumIn bool wickra_intraday_momentum_index_is_ready(struct IntradayMomentumIndex *handle); +const char *wickra_intraday_momentum_index_name(struct IntradayMomentumIndex *handle); + void wickra_intraday_momentum_index_reset(struct IntradayMomentumIndex *handle); void wickra_intraday_momentum_index_free(struct IntradayMomentumIndex *handle); @@ -6501,6 +6985,8 @@ uintptr_t wickra_inverted_hammer_warmup_period(struct InvertedHammer *handle); bool wickra_inverted_hammer_is_ready(struct InvertedHammer *handle); +const char *wickra_inverted_hammer_name(struct InvertedHammer *handle); + void wickra_inverted_hammer_reset(struct InvertedHammer *handle); void wickra_inverted_hammer_free(struct InvertedHammer *handle); @@ -6529,6 +7015,8 @@ uintptr_t wickra_kicking_warmup_period(struct Kicking *handle); bool wickra_kicking_is_ready(struct Kicking *handle); +const char *wickra_kicking_name(struct Kicking *handle); + void wickra_kicking_reset(struct Kicking *handle); void wickra_kicking_free(struct Kicking *handle); @@ -6557,6 +7045,8 @@ uintptr_t wickra_kicking_by_length_warmup_period(struct KickingByLength *handle) bool wickra_kicking_by_length_is_ready(struct KickingByLength *handle); +const char *wickra_kicking_by_length_name(struct KickingByLength *handle); + void wickra_kicking_by_length_reset(struct KickingByLength *handle); void wickra_kicking_by_length_free(struct KickingByLength *handle); @@ -6585,6 +7075,8 @@ uintptr_t wickra_kvo_warmup_period(struct Kvo *handle); bool wickra_kvo_is_ready(struct Kvo *handle); +const char *wickra_kvo_name(struct Kvo *handle); + void wickra_kvo_reset(struct Kvo *handle); void wickra_kvo_free(struct Kvo *handle); @@ -6613,6 +7105,8 @@ uintptr_t wickra_ladder_bottom_warmup_period(struct LadderBottom *handle); bool wickra_ladder_bottom_is_ready(struct LadderBottom *handle); +const char *wickra_ladder_bottom_name(struct LadderBottom *handle); + void wickra_ladder_bottom_reset(struct LadderBottom *handle); void wickra_ladder_bottom_free(struct LadderBottom *handle); @@ -6641,6 +7135,8 @@ uintptr_t wickra_long_legged_doji_warmup_period(struct LongLeggedDoji *handle); bool wickra_long_legged_doji_is_ready(struct LongLeggedDoji *handle); +const char *wickra_long_legged_doji_name(struct LongLeggedDoji *handle); + void wickra_long_legged_doji_reset(struct LongLeggedDoji *handle); void wickra_long_legged_doji_free(struct LongLeggedDoji *handle); @@ -6669,6 +7165,8 @@ uintptr_t wickra_long_line_warmup_period(struct LongLine *handle); bool wickra_long_line_is_ready(struct LongLine *handle); +const char *wickra_long_line_name(struct LongLine *handle); + void wickra_long_line_reset(struct LongLine *handle); void wickra_long_line_free(struct LongLine *handle); @@ -6697,6 +7195,8 @@ uintptr_t wickra_market_facilitation_index_warmup_period(struct MarketFacilitati bool wickra_market_facilitation_index_is_ready(struct MarketFacilitationIndex *handle); +const char *wickra_market_facilitation_index_name(struct MarketFacilitationIndex *handle); + void wickra_market_facilitation_index_reset(struct MarketFacilitationIndex *handle); void wickra_market_facilitation_index_free(struct MarketFacilitationIndex *handle); @@ -6725,6 +7225,8 @@ uintptr_t wickra_marubozu_warmup_period(struct Marubozu *handle); bool wickra_marubozu_is_ready(struct Marubozu *handle); +const char *wickra_marubozu_name(struct Marubozu *handle); + void wickra_marubozu_reset(struct Marubozu *handle); void wickra_marubozu_free(struct Marubozu *handle); @@ -6753,6 +7255,8 @@ uintptr_t wickra_mass_index_warmup_period(struct MassIndex *handle); bool wickra_mass_index_is_ready(struct MassIndex *handle); +const char *wickra_mass_index_name(struct MassIndex *handle); + void wickra_mass_index_reset(struct MassIndex *handle); void wickra_mass_index_free(struct MassIndex *handle); @@ -6781,6 +7285,8 @@ uintptr_t wickra_mat_hold_warmup_period(struct MatHold *handle); bool wickra_mat_hold_is_ready(struct MatHold *handle); +const char *wickra_mat_hold_name(struct MatHold *handle); + void wickra_mat_hold_reset(struct MatHold *handle); void wickra_mat_hold_free(struct MatHold *handle); @@ -6809,6 +7315,8 @@ uintptr_t wickra_matching_low_warmup_period(struct MatchingLow *handle); bool wickra_matching_low_is_ready(struct MatchingLow *handle); +const char *wickra_matching_low_name(struct MatchingLow *handle); + void wickra_matching_low_reset(struct MatchingLow *handle); void wickra_matching_low_free(struct MatchingLow *handle); @@ -6837,6 +7345,8 @@ uintptr_t wickra_median_price_warmup_period(struct MedianPrice *handle); bool wickra_median_price_is_ready(struct MedianPrice *handle); +const char *wickra_median_price_name(struct MedianPrice *handle); + void wickra_median_price_reset(struct MedianPrice *handle); void wickra_median_price_free(struct MedianPrice *handle); @@ -6865,6 +7375,8 @@ uintptr_t wickra_mfi_warmup_period(struct Mfi *handle); bool wickra_mfi_is_ready(struct Mfi *handle); +const char *wickra_mfi_name(struct Mfi *handle); + void wickra_mfi_reset(struct Mfi *handle); void wickra_mfi_free(struct Mfi *handle); @@ -6893,6 +7405,8 @@ uintptr_t wickra_mid_price_warmup_period(struct MidPrice *handle); bool wickra_mid_price_is_ready(struct MidPrice *handle); +const char *wickra_mid_price_name(struct MidPrice *handle); + void wickra_mid_price_reset(struct MidPrice *handle); void wickra_mid_price_free(struct MidPrice *handle); @@ -6921,6 +7435,8 @@ uintptr_t wickra_minus_di_warmup_period(struct MinusDi *handle); bool wickra_minus_di_is_ready(struct MinusDi *handle); +const char *wickra_minus_di_name(struct MinusDi *handle); + void wickra_minus_di_reset(struct MinusDi *handle); void wickra_minus_di_free(struct MinusDi *handle); @@ -6949,6 +7465,8 @@ uintptr_t wickra_minus_dm_warmup_period(struct MinusDm *handle); bool wickra_minus_dm_is_ready(struct MinusDm *handle); +const char *wickra_minus_dm_name(struct MinusDm *handle); + void wickra_minus_dm_reset(struct MinusDm *handle); void wickra_minus_dm_free(struct MinusDm *handle); @@ -6977,6 +7495,8 @@ uintptr_t wickra_morning_doji_star_warmup_period(struct MorningDojiStar *handle) bool wickra_morning_doji_star_is_ready(struct MorningDojiStar *handle); +const char *wickra_morning_doji_star_name(struct MorningDojiStar *handle); + void wickra_morning_doji_star_reset(struct MorningDojiStar *handle); void wickra_morning_doji_star_free(struct MorningDojiStar *handle); @@ -7005,6 +7525,8 @@ uintptr_t wickra_morning_evening_star_warmup_period(struct MorningEveningStar *h bool wickra_morning_evening_star_is_ready(struct MorningEveningStar *handle); +const char *wickra_morning_evening_star_name(struct MorningEveningStar *handle); + void wickra_morning_evening_star_reset(struct MorningEveningStar *handle); void wickra_morning_evening_star_free(struct MorningEveningStar *handle); @@ -7033,6 +7555,8 @@ uintptr_t wickra_naked_poc_warmup_period(struct NakedPoc *handle); bool wickra_naked_poc_is_ready(struct NakedPoc *handle); +const char *wickra_naked_poc_name(struct NakedPoc *handle); + void wickra_naked_poc_reset(struct NakedPoc *handle); void wickra_naked_poc_free(struct NakedPoc *handle); @@ -7061,6 +7585,8 @@ uintptr_t wickra_natr_warmup_period(struct Natr *handle); bool wickra_natr_is_ready(struct Natr *handle); +const char *wickra_natr_name(struct Natr *handle); + void wickra_natr_reset(struct Natr *handle); void wickra_natr_free(struct Natr *handle); @@ -7089,6 +7615,8 @@ uintptr_t wickra_new_price_lines_warmup_period(struct NewPriceLines *handle); bool wickra_new_price_lines_is_ready(struct NewPriceLines *handle); +const char *wickra_new_price_lines_name(struct NewPriceLines *handle); + void wickra_new_price_lines_reset(struct NewPriceLines *handle); void wickra_new_price_lines_free(struct NewPriceLines *handle); @@ -7117,6 +7645,8 @@ uintptr_t wickra_nvi_warmup_period(struct Nvi *handle); bool wickra_nvi_is_ready(struct Nvi *handle); +const char *wickra_nvi_name(struct Nvi *handle); + void wickra_nvi_reset(struct Nvi *handle); void wickra_nvi_free(struct Nvi *handle); @@ -7145,6 +7675,8 @@ uintptr_t wickra_obv_warmup_period(struct Obv *handle); bool wickra_obv_is_ready(struct Obv *handle); +const char *wickra_obv_name(struct Obv *handle); + void wickra_obv_reset(struct Obv *handle); void wickra_obv_free(struct Obv *handle); @@ -7173,6 +7705,8 @@ uintptr_t wickra_on_neck_warmup_period(struct OnNeck *handle); bool wickra_on_neck_is_ready(struct OnNeck *handle); +const char *wickra_on_neck_name(struct OnNeck *handle); + void wickra_on_neck_reset(struct OnNeck *handle); void wickra_on_neck_free(struct OnNeck *handle); @@ -7201,6 +7735,8 @@ uintptr_t wickra_opening_marubozu_warmup_period(struct OpeningMarubozu *handle); bool wickra_opening_marubozu_is_ready(struct OpeningMarubozu *handle); +const char *wickra_opening_marubozu_name(struct OpeningMarubozu *handle); + void wickra_opening_marubozu_reset(struct OpeningMarubozu *handle); void wickra_opening_marubozu_free(struct OpeningMarubozu *handle); @@ -7229,6 +7765,8 @@ uintptr_t wickra_overnight_gap_warmup_period(struct OvernightGap *handle); bool wickra_overnight_gap_is_ready(struct OvernightGap *handle); +const char *wickra_overnight_gap_name(struct OvernightGap *handle); + void wickra_overnight_gap_reset(struct OvernightGap *handle); void wickra_overnight_gap_free(struct OvernightGap *handle); @@ -7258,6 +7796,8 @@ uintptr_t wickra_parkinson_volatility_warmup_period(struct ParkinsonVolatility * bool wickra_parkinson_volatility_is_ready(struct ParkinsonVolatility *handle); +const char *wickra_parkinson_volatility_name(struct ParkinsonVolatility *handle); + void wickra_parkinson_volatility_reset(struct ParkinsonVolatility *handle); void wickra_parkinson_volatility_free(struct ParkinsonVolatility *handle); @@ -7286,6 +7826,8 @@ uintptr_t wickra_pgo_warmup_period(struct Pgo *handle); bool wickra_pgo_is_ready(struct Pgo *handle); +const char *wickra_pgo_name(struct Pgo *handle); + void wickra_pgo_reset(struct Pgo *handle); void wickra_pgo_free(struct Pgo *handle); @@ -7314,6 +7856,8 @@ uintptr_t wickra_piercing_dark_cloud_warmup_period(struct PiercingDarkCloud *han bool wickra_piercing_dark_cloud_is_ready(struct PiercingDarkCloud *handle); +const char *wickra_piercing_dark_cloud_name(struct PiercingDarkCloud *handle); + void wickra_piercing_dark_cloud_reset(struct PiercingDarkCloud *handle); void wickra_piercing_dark_cloud_free(struct PiercingDarkCloud *handle); @@ -7342,6 +7886,8 @@ uintptr_t wickra_pivot_reversal_warmup_period(struct PivotReversal *handle); bool wickra_pivot_reversal_is_ready(struct PivotReversal *handle); +const char *wickra_pivot_reversal_name(struct PivotReversal *handle); + void wickra_pivot_reversal_reset(struct PivotReversal *handle); void wickra_pivot_reversal_free(struct PivotReversal *handle); @@ -7370,6 +7916,8 @@ uintptr_t wickra_plus_di_warmup_period(struct PlusDi *handle); bool wickra_plus_di_is_ready(struct PlusDi *handle); +const char *wickra_plus_di_name(struct PlusDi *handle); + void wickra_plus_di_reset(struct PlusDi *handle); void wickra_plus_di_free(struct PlusDi *handle); @@ -7398,6 +7946,8 @@ uintptr_t wickra_plus_dm_warmup_period(struct PlusDm *handle); bool wickra_plus_dm_is_ready(struct PlusDm *handle); +const char *wickra_plus_dm_name(struct PlusDm *handle); + void wickra_plus_dm_reset(struct PlusDm *handle); void wickra_plus_dm_free(struct PlusDm *handle); @@ -7426,6 +7976,8 @@ uintptr_t wickra_profile_shape_warmup_period(struct ProfileShape *handle); bool wickra_profile_shape_is_ready(struct ProfileShape *handle); +const char *wickra_profile_shape_name(struct ProfileShape *handle); + void wickra_profile_shape_reset(struct ProfileShape *handle); void wickra_profile_shape_free(struct ProfileShape *handle); @@ -7454,6 +8006,8 @@ uintptr_t wickra_projection_oscillator_warmup_period(struct ProjectionOscillator bool wickra_projection_oscillator_is_ready(struct ProjectionOscillator *handle); +const char *wickra_projection_oscillator_name(struct ProjectionOscillator *handle); + void wickra_projection_oscillator_reset(struct ProjectionOscillator *handle); void wickra_projection_oscillator_free(struct ProjectionOscillator *handle); @@ -7482,6 +8036,8 @@ uintptr_t wickra_psar_warmup_period(struct Psar *handle); bool wickra_psar_is_ready(struct Psar *handle); +const char *wickra_psar_name(struct Psar *handle); + void wickra_psar_reset(struct Psar *handle); void wickra_psar_free(struct Psar *handle); @@ -7510,6 +8066,8 @@ uintptr_t wickra_pvi_warmup_period(struct Pvi *handle); bool wickra_pvi_is_ready(struct Pvi *handle); +const char *wickra_pvi_name(struct Pvi *handle); + void wickra_pvi_reset(struct Pvi *handle); void wickra_pvi_free(struct Pvi *handle); @@ -7538,6 +8096,8 @@ uintptr_t wickra_qstick_warmup_period(struct Qstick *handle); bool wickra_qstick_is_ready(struct Qstick *handle); +const char *wickra_qstick_name(struct Qstick *handle); + void wickra_qstick_reset(struct Qstick *handle); void wickra_qstick_free(struct Qstick *handle); @@ -7566,6 +8126,8 @@ uintptr_t wickra_rectangle_range_warmup_period(struct RectangleRange *handle); bool wickra_rectangle_range_is_ready(struct RectangleRange *handle); +const char *wickra_rectangle_range_name(struct RectangleRange *handle); + void wickra_rectangle_range_reset(struct RectangleRange *handle); void wickra_rectangle_range_free(struct RectangleRange *handle); @@ -7594,6 +8156,8 @@ uintptr_t wickra_rickshaw_man_warmup_period(struct RickshawMan *handle); bool wickra_rickshaw_man_is_ready(struct RickshawMan *handle); +const char *wickra_rickshaw_man_name(struct RickshawMan *handle); + void wickra_rickshaw_man_reset(struct RickshawMan *handle); void wickra_rickshaw_man_free(struct RickshawMan *handle); @@ -7622,6 +8186,8 @@ uintptr_t wickra_rising_three_methods_warmup_period(struct RisingThreeMethods *h bool wickra_rising_three_methods_is_ready(struct RisingThreeMethods *handle); +const char *wickra_rising_three_methods_name(struct RisingThreeMethods *handle); + void wickra_rising_three_methods_reset(struct RisingThreeMethods *handle); void wickra_rising_three_methods_free(struct RisingThreeMethods *handle); @@ -7651,6 +8217,8 @@ uintptr_t wickra_rogers_satchell_volatility_warmup_period(struct RogersSatchellV bool wickra_rogers_satchell_volatility_is_ready(struct RogersSatchellVolatility *handle); +const char *wickra_rogers_satchell_volatility_name(struct RogersSatchellVolatility *handle); + void wickra_rogers_satchell_volatility_reset(struct RogersSatchellVolatility *handle); void wickra_rogers_satchell_volatility_free(struct RogersSatchellVolatility *handle); @@ -7679,6 +8247,8 @@ uintptr_t wickra_rvi_warmup_period(struct Rvi *handle); bool wickra_rvi_is_ready(struct Rvi *handle); +const char *wickra_rvi_name(struct Rvi *handle); + void wickra_rvi_reset(struct Rvi *handle); void wickra_rvi_free(struct Rvi *handle); @@ -7714,6 +8284,8 @@ uintptr_t wickra_sar_ext_warmup_period(struct SarExt *handle); bool wickra_sar_ext_is_ready(struct SarExt *handle); +const char *wickra_sar_ext_name(struct SarExt *handle); + void wickra_sar_ext_reset(struct SarExt *handle); void wickra_sar_ext_free(struct SarExt *handle); @@ -7742,6 +8314,8 @@ uintptr_t wickra_seasonal_z_score_warmup_period(struct SeasonalZScore *handle); bool wickra_seasonal_z_score_is_ready(struct SeasonalZScore *handle); +const char *wickra_seasonal_z_score_name(struct SeasonalZScore *handle); + void wickra_seasonal_z_score_reset(struct SeasonalZScore *handle); void wickra_seasonal_z_score_free(struct SeasonalZScore *handle); @@ -7770,6 +8344,8 @@ uintptr_t wickra_separating_lines_warmup_period(struct SeparatingLines *handle); bool wickra_separating_lines_is_ready(struct SeparatingLines *handle); +const char *wickra_separating_lines_name(struct SeparatingLines *handle); + void wickra_separating_lines_reset(struct SeparatingLines *handle); void wickra_separating_lines_free(struct SeparatingLines *handle); @@ -7798,6 +8374,8 @@ uintptr_t wickra_session_vwap_warmup_period(struct SessionVwap *handle); bool wickra_session_vwap_is_ready(struct SessionVwap *handle); +const char *wickra_session_vwap_name(struct SessionVwap *handle); + void wickra_session_vwap_reset(struct SessionVwap *handle); void wickra_session_vwap_free(struct SessionVwap *handle); @@ -7826,6 +8404,8 @@ uintptr_t wickra_shark_warmup_period(struct Shark *handle); bool wickra_shark_is_ready(struct Shark *handle); +const char *wickra_shark_name(struct Shark *handle); + void wickra_shark_reset(struct Shark *handle); void wickra_shark_free(struct Shark *handle); @@ -7854,6 +8434,8 @@ uintptr_t wickra_shooting_star_warmup_period(struct ShootingStar *handle); bool wickra_shooting_star_is_ready(struct ShootingStar *handle); +const char *wickra_shooting_star_name(struct ShootingStar *handle); + void wickra_shooting_star_reset(struct ShootingStar *handle); void wickra_shooting_star_free(struct ShootingStar *handle); @@ -7882,6 +8464,8 @@ uintptr_t wickra_short_line_warmup_period(struct ShortLine *handle); bool wickra_short_line_is_ready(struct ShortLine *handle); +const char *wickra_short_line_name(struct ShortLine *handle); + void wickra_short_line_reset(struct ShortLine *handle); void wickra_short_line_free(struct ShortLine *handle); @@ -7910,6 +8494,8 @@ uintptr_t wickra_single_prints_warmup_period(struct SinglePrints *handle); bool wickra_single_prints_is_ready(struct SinglePrints *handle); +const char *wickra_single_prints_name(struct SinglePrints *handle); + void wickra_single_prints_reset(struct SinglePrints *handle); void wickra_single_prints_free(struct SinglePrints *handle); @@ -7938,6 +8524,8 @@ uintptr_t wickra_smi_warmup_period(struct Smi *handle); bool wickra_smi_is_ready(struct Smi *handle); +const char *wickra_smi_name(struct Smi *handle); + void wickra_smi_reset(struct Smi *handle); void wickra_smi_free(struct Smi *handle); @@ -7966,6 +8554,8 @@ uintptr_t wickra_spinning_top_warmup_period(struct SpinningTop *handle); bool wickra_spinning_top_is_ready(struct SpinningTop *handle); +const char *wickra_spinning_top_name(struct SpinningTop *handle); + void wickra_spinning_top_reset(struct SpinningTop *handle); void wickra_spinning_top_free(struct SpinningTop *handle); @@ -7994,6 +8584,8 @@ uintptr_t wickra_stalled_pattern_warmup_period(struct StalledPattern *handle); bool wickra_stalled_pattern_is_ready(struct StalledPattern *handle); +const char *wickra_stalled_pattern_name(struct StalledPattern *handle); + void wickra_stalled_pattern_reset(struct StalledPattern *handle); void wickra_stalled_pattern_free(struct StalledPattern *handle); @@ -8022,6 +8614,8 @@ uintptr_t wickra_stick_sandwich_warmup_period(struct StickSandwich *handle); bool wickra_stick_sandwich_is_ready(struct StickSandwich *handle); +const char *wickra_stick_sandwich_name(struct StickSandwich *handle); + void wickra_stick_sandwich_reset(struct StickSandwich *handle); void wickra_stick_sandwich_free(struct StickSandwich *handle); @@ -8050,6 +8644,8 @@ uintptr_t wickra_stochastic_cci_warmup_period(struct StochasticCci *handle); bool wickra_stochastic_cci_is_ready(struct StochasticCci *handle); +const char *wickra_stochastic_cci_name(struct StochasticCci *handle); + void wickra_stochastic_cci_reset(struct StochasticCci *handle); void wickra_stochastic_cci_free(struct StochasticCci *handle); @@ -8078,6 +8674,8 @@ uintptr_t wickra_takuri_warmup_period(struct Takuri *handle); bool wickra_takuri_is_ready(struct Takuri *handle); +const char *wickra_takuri_name(struct Takuri *handle); + void wickra_takuri_reset(struct Takuri *handle); void wickra_takuri_free(struct Takuri *handle); @@ -8106,6 +8704,8 @@ uintptr_t wickra_tasuki_gap_warmup_period(struct TasukiGap *handle); bool wickra_tasuki_gap_is_ready(struct TasukiGap *handle); +const char *wickra_tasuki_gap_name(struct TasukiGap *handle); + void wickra_tasuki_gap_reset(struct TasukiGap *handle); void wickra_tasuki_gap_free(struct TasukiGap *handle); @@ -8134,6 +8734,8 @@ uintptr_t wickra_td_camouflage_warmup_period(struct TdCamouflage *handle); bool wickra_td_camouflage_is_ready(struct TdCamouflage *handle); +const char *wickra_td_camouflage_name(struct TdCamouflage *handle); + void wickra_td_camouflage_reset(struct TdCamouflage *handle); void wickra_td_camouflage_free(struct TdCamouflage *handle); @@ -8162,6 +8764,8 @@ uintptr_t wickra_td_clop_warmup_period(struct TdClop *handle); bool wickra_td_clop_is_ready(struct TdClop *handle); +const char *wickra_td_clop_name(struct TdClop *handle); + void wickra_td_clop_reset(struct TdClop *handle); void wickra_td_clop_free(struct TdClop *handle); @@ -8190,6 +8794,8 @@ uintptr_t wickra_td_clopwin_warmup_period(struct TdClopwin *handle); bool wickra_td_clopwin_is_ready(struct TdClopwin *handle); +const char *wickra_td_clopwin_name(struct TdClopwin *handle); + void wickra_td_clopwin_reset(struct TdClopwin *handle); void wickra_td_clopwin_free(struct TdClopwin *handle); @@ -8221,6 +8827,8 @@ uintptr_t wickra_td_combo_warmup_period(struct TdCombo *handle); bool wickra_td_combo_is_ready(struct TdCombo *handle); +const char *wickra_td_combo_name(struct TdCombo *handle); + void wickra_td_combo_reset(struct TdCombo *handle); void wickra_td_combo_free(struct TdCombo *handle); @@ -8252,6 +8860,8 @@ uintptr_t wickra_td_countdown_warmup_period(struct TdCountdown *handle); bool wickra_td_countdown_is_ready(struct TdCountdown *handle); +const char *wickra_td_countdown_name(struct TdCountdown *handle); + void wickra_td_countdown_reset(struct TdCountdown *handle); void wickra_td_countdown_free(struct TdCountdown *handle); @@ -8280,6 +8890,8 @@ uintptr_t wickra_td_de_marker_warmup_period(struct TdDeMarker *handle); bool wickra_td_de_marker_is_ready(struct TdDeMarker *handle); +const char *wickra_td_de_marker_name(struct TdDeMarker *handle); + void wickra_td_de_marker_reset(struct TdDeMarker *handle); void wickra_td_de_marker_free(struct TdDeMarker *handle); @@ -8308,6 +8920,8 @@ uintptr_t wickra_td_differential_warmup_period(struct TdDifferential *handle); bool wickra_td_differential_is_ready(struct TdDifferential *handle); +const char *wickra_td_differential_name(struct TdDifferential *handle); + void wickra_td_differential_reset(struct TdDifferential *handle); void wickra_td_differential_free(struct TdDifferential *handle); @@ -8336,6 +8950,8 @@ uintptr_t wickra_td_d_wave_warmup_period(struct TdDWave *handle); bool wickra_td_d_wave_is_ready(struct TdDWave *handle); +const char *wickra_td_d_wave_name(struct TdDWave *handle); + void wickra_td_d_wave_reset(struct TdDWave *handle); void wickra_td_d_wave_free(struct TdDWave *handle); @@ -8364,6 +8980,8 @@ uintptr_t wickra_td_open_warmup_period(struct TdOpen *handle); bool wickra_td_open_is_ready(struct TdOpen *handle); +const char *wickra_td_open_name(struct TdOpen *handle); + void wickra_td_open_reset(struct TdOpen *handle); void wickra_td_open_free(struct TdOpen *handle); @@ -8392,6 +9010,8 @@ uintptr_t wickra_td_pressure_warmup_period(struct TdPressure *handle); bool wickra_td_pressure_is_ready(struct TdPressure *handle); +const char *wickra_td_pressure_name(struct TdPressure *handle); + void wickra_td_pressure_reset(struct TdPressure *handle); void wickra_td_pressure_free(struct TdPressure *handle); @@ -8420,6 +9040,8 @@ uintptr_t wickra_td_propulsion_warmup_period(struct TdPropulsion *handle); bool wickra_td_propulsion_is_ready(struct TdPropulsion *handle); +const char *wickra_td_propulsion_name(struct TdPropulsion *handle); + void wickra_td_propulsion_reset(struct TdPropulsion *handle); void wickra_td_propulsion_free(struct TdPropulsion *handle); @@ -8448,6 +9070,8 @@ uintptr_t wickra_td_rei_warmup_period(struct TdRei *handle); bool wickra_td_rei_is_ready(struct TdRei *handle); +const char *wickra_td_rei_name(struct TdRei *handle); + void wickra_td_rei_reset(struct TdRei *handle); void wickra_td_rei_free(struct TdRei *handle); @@ -8476,6 +9100,8 @@ uintptr_t wickra_td_setup_warmup_period(struct TdSetup *handle); bool wickra_td_setup_is_ready(struct TdSetup *handle); +const char *wickra_td_setup_name(struct TdSetup *handle); + void wickra_td_setup_reset(struct TdSetup *handle); void wickra_td_setup_free(struct TdSetup *handle); @@ -8504,6 +9130,8 @@ uintptr_t wickra_td_trap_warmup_period(struct TdTrap *handle); bool wickra_td_trap_is_ready(struct TdTrap *handle); +const char *wickra_td_trap_name(struct TdTrap *handle); + void wickra_td_trap_reset(struct TdTrap *handle); void wickra_td_trap_free(struct TdTrap *handle); @@ -8532,6 +9160,8 @@ uintptr_t wickra_three_drives_warmup_period(struct ThreeDrives *handle); bool wickra_three_drives_is_ready(struct ThreeDrives *handle); +const char *wickra_three_drives_name(struct ThreeDrives *handle); + void wickra_three_drives_reset(struct ThreeDrives *handle); void wickra_three_drives_free(struct ThreeDrives *handle); @@ -8560,6 +9190,8 @@ uintptr_t wickra_three_inside_warmup_period(struct ThreeInside *handle); bool wickra_three_inside_is_ready(struct ThreeInside *handle); +const char *wickra_three_inside_name(struct ThreeInside *handle); + void wickra_three_inside_reset(struct ThreeInside *handle); void wickra_three_inside_free(struct ThreeInside *handle); @@ -8588,6 +9220,8 @@ uintptr_t wickra_three_line_break_warmup_period(struct ThreeLineBreak *handle); bool wickra_three_line_break_is_ready(struct ThreeLineBreak *handle); +const char *wickra_three_line_break_name(struct ThreeLineBreak *handle); + void wickra_three_line_break_reset(struct ThreeLineBreak *handle); void wickra_three_line_break_free(struct ThreeLineBreak *handle); @@ -8616,6 +9250,8 @@ uintptr_t wickra_three_line_strike_warmup_period(struct ThreeLineStrike *handle) bool wickra_three_line_strike_is_ready(struct ThreeLineStrike *handle); +const char *wickra_three_line_strike_name(struct ThreeLineStrike *handle); + void wickra_three_line_strike_reset(struct ThreeLineStrike *handle); void wickra_three_line_strike_free(struct ThreeLineStrike *handle); @@ -8644,6 +9280,8 @@ uintptr_t wickra_three_outside_warmup_period(struct ThreeOutside *handle); bool wickra_three_outside_is_ready(struct ThreeOutside *handle); +const char *wickra_three_outside_name(struct ThreeOutside *handle); + void wickra_three_outside_reset(struct ThreeOutside *handle); void wickra_three_outside_free(struct ThreeOutside *handle); @@ -8672,6 +9310,8 @@ uintptr_t wickra_three_soldiers_or_crows_warmup_period(struct ThreeSoldiersOrCro bool wickra_three_soldiers_or_crows_is_ready(struct ThreeSoldiersOrCrows *handle); +const char *wickra_three_soldiers_or_crows_name(struct ThreeSoldiersOrCrows *handle); + void wickra_three_soldiers_or_crows_reset(struct ThreeSoldiersOrCrows *handle); void wickra_three_soldiers_or_crows_free(struct ThreeSoldiersOrCrows *handle); @@ -8700,6 +9340,8 @@ uintptr_t wickra_three_stars_in_south_warmup_period(struct ThreeStarsInSouth *ha bool wickra_three_stars_in_south_is_ready(struct ThreeStarsInSouth *handle); +const char *wickra_three_stars_in_south_name(struct ThreeStarsInSouth *handle); + void wickra_three_stars_in_south_reset(struct ThreeStarsInSouth *handle); void wickra_three_stars_in_south_free(struct ThreeStarsInSouth *handle); @@ -8728,6 +9370,8 @@ uintptr_t wickra_thrusting_warmup_period(struct Thrusting *handle); bool wickra_thrusting_is_ready(struct Thrusting *handle); +const char *wickra_thrusting_name(struct Thrusting *handle); + void wickra_thrusting_reset(struct Thrusting *handle); void wickra_thrusting_free(struct Thrusting *handle); @@ -8756,6 +9400,8 @@ uintptr_t wickra_time_based_stop_warmup_period(struct TimeBasedStop *handle); bool wickra_time_based_stop_is_ready(struct TimeBasedStop *handle); +const char *wickra_time_based_stop_name(struct TimeBasedStop *handle); + void wickra_time_based_stop_reset(struct TimeBasedStop *handle); void wickra_time_based_stop_free(struct TimeBasedStop *handle); @@ -8784,6 +9430,8 @@ uintptr_t wickra_tower_top_bottom_warmup_period(struct TowerTopBottom *handle); bool wickra_tower_top_bottom_is_ready(struct TowerTopBottom *handle); +const char *wickra_tower_top_bottom_name(struct TowerTopBottom *handle); + void wickra_tower_top_bottom_reset(struct TowerTopBottom *handle); void wickra_tower_top_bottom_free(struct TowerTopBottom *handle); @@ -8812,6 +9460,8 @@ uintptr_t wickra_trade_volume_index_warmup_period(struct TradeVolumeIndex *handl bool wickra_trade_volume_index_is_ready(struct TradeVolumeIndex *handle); +const char *wickra_trade_volume_index_name(struct TradeVolumeIndex *handle); + void wickra_trade_volume_index_reset(struct TradeVolumeIndex *handle); void wickra_trade_volume_index_free(struct TradeVolumeIndex *handle); @@ -8840,6 +9490,8 @@ uintptr_t wickra_triangle_warmup_period(struct Triangle *handle); bool wickra_triangle_is_ready(struct Triangle *handle); +const char *wickra_triangle_name(struct Triangle *handle); + void wickra_triangle_reset(struct Triangle *handle); void wickra_triangle_free(struct Triangle *handle); @@ -8868,6 +9520,8 @@ uintptr_t wickra_triple_top_bottom_warmup_period(struct TripleTopBottom *handle) bool wickra_triple_top_bottom_is_ready(struct TripleTopBottom *handle); +const char *wickra_triple_top_bottom_name(struct TripleTopBottom *handle); + void wickra_triple_top_bottom_reset(struct TripleTopBottom *handle); void wickra_triple_top_bottom_free(struct TripleTopBottom *handle); @@ -8896,6 +9550,8 @@ uintptr_t wickra_tristar_warmup_period(struct Tristar *handle); bool wickra_tristar_is_ready(struct Tristar *handle); +const char *wickra_tristar_name(struct Tristar *handle); + void wickra_tristar_reset(struct Tristar *handle); void wickra_tristar_free(struct Tristar *handle); @@ -8924,6 +9580,8 @@ uintptr_t wickra_true_range_warmup_period(struct TrueRange *handle); bool wickra_true_range_is_ready(struct TrueRange *handle); +const char *wickra_true_range_name(struct TrueRange *handle); + void wickra_true_range_reset(struct TrueRange *handle); void wickra_true_range_free(struct TrueRange *handle); @@ -8952,6 +9610,8 @@ uintptr_t wickra_tsv_warmup_period(struct Tsv *handle); bool wickra_tsv_is_ready(struct Tsv *handle); +const char *wickra_tsv_name(struct Tsv *handle); + void wickra_tsv_reset(struct Tsv *handle); void wickra_tsv_free(struct Tsv *handle); @@ -8980,6 +9640,8 @@ uintptr_t wickra_ttm_trend_warmup_period(struct TtmTrend *handle); bool wickra_ttm_trend_is_ready(struct TtmTrend *handle); +const char *wickra_ttm_trend_name(struct TtmTrend *handle); + void wickra_ttm_trend_reset(struct TtmTrend *handle); void wickra_ttm_trend_free(struct TtmTrend *handle); @@ -9010,6 +9672,8 @@ uintptr_t wickra_turn_of_month_warmup_period(struct TurnOfMonth *handle); bool wickra_turn_of_month_is_ready(struct TurnOfMonth *handle); +const char *wickra_turn_of_month_name(struct TurnOfMonth *handle); + void wickra_turn_of_month_reset(struct TurnOfMonth *handle); void wickra_turn_of_month_free(struct TurnOfMonth *handle); @@ -9038,6 +9702,8 @@ uintptr_t wickra_tweezer_warmup_period(struct Tweezer *handle); bool wickra_tweezer_is_ready(struct Tweezer *handle); +const char *wickra_tweezer_name(struct Tweezer *handle); + void wickra_tweezer_reset(struct Tweezer *handle); void wickra_tweezer_free(struct Tweezer *handle); @@ -9066,6 +9732,8 @@ uintptr_t wickra_twiggs_money_flow_warmup_period(struct TwiggsMoneyFlow *handle) bool wickra_twiggs_money_flow_is_ready(struct TwiggsMoneyFlow *handle); +const char *wickra_twiggs_money_flow_name(struct TwiggsMoneyFlow *handle); + void wickra_twiggs_money_flow_reset(struct TwiggsMoneyFlow *handle); void wickra_twiggs_money_flow_free(struct TwiggsMoneyFlow *handle); @@ -9094,6 +9762,8 @@ uintptr_t wickra_two_crows_warmup_period(struct TwoCrows *handle); bool wickra_two_crows_is_ready(struct TwoCrows *handle); +const char *wickra_two_crows_name(struct TwoCrows *handle); + void wickra_two_crows_reset(struct TwoCrows *handle); void wickra_two_crows_free(struct TwoCrows *handle); @@ -9122,6 +9792,8 @@ uintptr_t wickra_typical_price_warmup_period(struct TypicalPrice *handle); bool wickra_typical_price_is_ready(struct TypicalPrice *handle); +const char *wickra_typical_price_name(struct TypicalPrice *handle); + void wickra_typical_price_reset(struct TypicalPrice *handle); void wickra_typical_price_free(struct TypicalPrice *handle); @@ -9152,6 +9824,8 @@ uintptr_t wickra_ultimate_oscillator_warmup_period(struct UltimateOscillator *ha bool wickra_ultimate_oscillator_is_ready(struct UltimateOscillator *handle); +const char *wickra_ultimate_oscillator_name(struct UltimateOscillator *handle); + void wickra_ultimate_oscillator_reset(struct UltimateOscillator *handle); void wickra_ultimate_oscillator_free(struct UltimateOscillator *handle); @@ -9180,6 +9854,8 @@ uintptr_t wickra_unique_three_river_warmup_period(struct UniqueThreeRiver *handl bool wickra_unique_three_river_is_ready(struct UniqueThreeRiver *handle); +const char *wickra_unique_three_river_name(struct UniqueThreeRiver *handle); + void wickra_unique_three_river_reset(struct UniqueThreeRiver *handle); void wickra_unique_three_river_free(struct UniqueThreeRiver *handle); @@ -9208,6 +9884,8 @@ uintptr_t wickra_upside_gap_three_methods_warmup_period(struct UpsideGapThreeMet bool wickra_upside_gap_three_methods_is_ready(struct UpsideGapThreeMethods *handle); +const char *wickra_upside_gap_three_methods_name(struct UpsideGapThreeMethods *handle); + void wickra_upside_gap_three_methods_reset(struct UpsideGapThreeMethods *handle); void wickra_upside_gap_three_methods_free(struct UpsideGapThreeMethods *handle); @@ -9236,6 +9914,8 @@ uintptr_t wickra_upside_gap_two_crows_warmup_period(struct UpsideGapTwoCrows *ha bool wickra_upside_gap_two_crows_is_ready(struct UpsideGapTwoCrows *handle); +const char *wickra_upside_gap_two_crows_name(struct UpsideGapTwoCrows *handle); + void wickra_upside_gap_two_crows_reset(struct UpsideGapTwoCrows *handle); void wickra_upside_gap_two_crows_free(struct UpsideGapTwoCrows *handle); @@ -9264,6 +9944,8 @@ uintptr_t wickra_volatility_ratio_warmup_period(struct VolatilityRatio *handle); bool wickra_volatility_ratio_is_ready(struct VolatilityRatio *handle); +const char *wickra_volatility_ratio_name(struct VolatilityRatio *handle); + void wickra_volatility_ratio_reset(struct VolatilityRatio *handle); void wickra_volatility_ratio_free(struct VolatilityRatio *handle); @@ -9292,6 +9974,8 @@ uintptr_t wickra_volty_stop_warmup_period(struct VoltyStop *handle); bool wickra_volty_stop_is_ready(struct VoltyStop *handle); +const char *wickra_volty_stop_name(struct VoltyStop *handle); + void wickra_volty_stop_reset(struct VoltyStop *handle); void wickra_volty_stop_free(struct VoltyStop *handle); @@ -9320,6 +10004,8 @@ uintptr_t wickra_volume_oscillator_warmup_period(struct VolumeOscillator *handle bool wickra_volume_oscillator_is_ready(struct VolumeOscillator *handle); +const char *wickra_volume_oscillator_name(struct VolumeOscillator *handle); + void wickra_volume_oscillator_reset(struct VolumeOscillator *handle); void wickra_volume_oscillator_free(struct VolumeOscillator *handle); @@ -9348,6 +10034,8 @@ uintptr_t wickra_volume_rsi_warmup_period(struct VolumeRsi *handle); bool wickra_volume_rsi_is_ready(struct VolumeRsi *handle); +const char *wickra_volume_rsi_name(struct VolumeRsi *handle); + void wickra_volume_rsi_reset(struct VolumeRsi *handle); void wickra_volume_rsi_free(struct VolumeRsi *handle); @@ -9376,6 +10064,8 @@ uintptr_t wickra_volume_price_trend_warmup_period(struct VolumePriceTrend *handl bool wickra_volume_price_trend_is_ready(struct VolumePriceTrend *handle); +const char *wickra_volume_price_trend_name(struct VolumePriceTrend *handle); + void wickra_volume_price_trend_reset(struct VolumePriceTrend *handle); void wickra_volume_price_trend_free(struct VolumePriceTrend *handle); @@ -9404,6 +10094,8 @@ uintptr_t wickra_vwap_warmup_period(struct Vwap *handle); bool wickra_vwap_is_ready(struct Vwap *handle); +const char *wickra_vwap_name(struct Vwap *handle); + void wickra_vwap_reset(struct Vwap *handle); void wickra_vwap_free(struct Vwap *handle); @@ -9432,6 +10124,8 @@ uintptr_t wickra_rolling_vwap_warmup_period(struct RollingVwap *handle); bool wickra_rolling_vwap_is_ready(struct RollingVwap *handle); +const char *wickra_rolling_vwap_name(struct RollingVwap *handle); + void wickra_rolling_vwap_reset(struct RollingVwap *handle); void wickra_rolling_vwap_free(struct RollingVwap *handle); @@ -9460,6 +10154,8 @@ uintptr_t wickra_vwma_warmup_period(struct Vwma *handle); bool wickra_vwma_is_ready(struct Vwma *handle); +const char *wickra_vwma_name(struct Vwma *handle); + void wickra_vwma_reset(struct Vwma *handle); void wickra_vwma_free(struct Vwma *handle); @@ -9488,6 +10184,8 @@ uintptr_t wickra_vzo_warmup_period(struct Vzo *handle); bool wickra_vzo_is_ready(struct Vzo *handle); +const char *wickra_vzo_name(struct Vzo *handle); + void wickra_vzo_reset(struct Vzo *handle); void wickra_vzo_free(struct Vzo *handle); @@ -9516,6 +10214,8 @@ uintptr_t wickra_wad_warmup_period(struct Wad *handle); bool wickra_wad_is_ready(struct Wad *handle); +const char *wickra_wad_name(struct Wad *handle); + void wickra_wad_reset(struct Wad *handle); void wickra_wad_free(struct Wad *handle); @@ -9544,6 +10244,8 @@ uintptr_t wickra_wedge_warmup_period(struct Wedge *handle); bool wickra_wedge_is_ready(struct Wedge *handle); +const char *wickra_wedge_name(struct Wedge *handle); + void wickra_wedge_reset(struct Wedge *handle); void wickra_wedge_free(struct Wedge *handle); @@ -9572,6 +10274,8 @@ uintptr_t wickra_weighted_close_warmup_period(struct WeightedClose *handle); bool wickra_weighted_close_is_ready(struct WeightedClose *handle); +const char *wickra_weighted_close_name(struct WeightedClose *handle); + void wickra_weighted_close_reset(struct WeightedClose *handle); void wickra_weighted_close_free(struct WeightedClose *handle); @@ -9600,6 +10304,8 @@ uintptr_t wickra_wick_ratio_warmup_period(struct WickRatio *handle); bool wickra_wick_ratio_is_ready(struct WickRatio *handle); +const char *wickra_wick_ratio_name(struct WickRatio *handle); + void wickra_wick_ratio_reset(struct WickRatio *handle); void wickra_wick_ratio_free(struct WickRatio *handle); @@ -9628,6 +10334,8 @@ uintptr_t wickra_williams_r_warmup_period(struct WilliamsR *handle); bool wickra_williams_r_is_ready(struct WilliamsR *handle); +const char *wickra_williams_r_name(struct WilliamsR *handle); + void wickra_williams_r_reset(struct WilliamsR *handle); void wickra_williams_r_free(struct WilliamsR *handle); @@ -9657,6 +10365,8 @@ uintptr_t wickra_yang_zhang_volatility_warmup_period(struct YangZhangVolatility bool wickra_yang_zhang_volatility_is_ready(struct YangZhangVolatility *handle); +const char *wickra_yang_zhang_volatility_name(struct YangZhangVolatility *handle); + void wickra_yang_zhang_volatility_reset(struct YangZhangVolatility *handle); void wickra_yang_zhang_volatility_free(struct YangZhangVolatility *handle); @@ -9685,6 +10395,8 @@ uintptr_t wickra_yoyo_exit_warmup_period(struct YoyoExit *handle); bool wickra_yoyo_exit_is_ready(struct YoyoExit *handle); +const char *wickra_yoyo_exit_name(struct YoyoExit *handle); + void wickra_yoyo_exit_reset(struct YoyoExit *handle); void wickra_yoyo_exit_free(struct YoyoExit *handle); @@ -9701,6 +10413,8 @@ uintptr_t wickra_amihud_illiquidity_warmup_period(struct AmihudIlliquidity *hand bool wickra_amihud_illiquidity_is_ready(struct AmihudIlliquidity *handle); +const char *wickra_amihud_illiquidity_name(struct AmihudIlliquidity *handle); + void wickra_amihud_illiquidity_reset(struct AmihudIlliquidity *handle); void wickra_amihud_illiquidity_free(struct AmihudIlliquidity *handle); @@ -9717,6 +10431,8 @@ uintptr_t wickra_cumulative_volume_delta_warmup_period(struct CumulativeVolumeDe bool wickra_cumulative_volume_delta_is_ready(struct CumulativeVolumeDelta *handle); +const char *wickra_cumulative_volume_delta_name(struct CumulativeVolumeDelta *handle); + void wickra_cumulative_volume_delta_reset(struct CumulativeVolumeDelta *handle); void wickra_cumulative_volume_delta_free(struct CumulativeVolumeDelta *handle); @@ -9733,6 +10449,8 @@ uintptr_t wickra_pin_warmup_period(struct Pin *handle); bool wickra_pin_is_ready(struct Pin *handle); +const char *wickra_pin_name(struct Pin *handle); + void wickra_pin_reset(struct Pin *handle); void wickra_pin_free(struct Pin *handle); @@ -9749,6 +10467,8 @@ uintptr_t wickra_roll_measure_warmup_period(struct RollMeasure *handle); bool wickra_roll_measure_is_ready(struct RollMeasure *handle); +const char *wickra_roll_measure_name(struct RollMeasure *handle); + void wickra_roll_measure_reset(struct RollMeasure *handle); void wickra_roll_measure_free(struct RollMeasure *handle); @@ -9765,6 +10485,8 @@ uintptr_t wickra_signed_volume_warmup_period(struct SignedVolume *handle); bool wickra_signed_volume_is_ready(struct SignedVolume *handle); +const char *wickra_signed_volume_name(struct SignedVolume *handle); + void wickra_signed_volume_reset(struct SignedVolume *handle); void wickra_signed_volume_free(struct SignedVolume *handle); @@ -9781,6 +10503,8 @@ uintptr_t wickra_trade_imbalance_warmup_period(struct TradeImbalance *handle); bool wickra_trade_imbalance_is_ready(struct TradeImbalance *handle); +const char *wickra_trade_imbalance_name(struct TradeImbalance *handle); + void wickra_trade_imbalance_reset(struct TradeImbalance *handle); void wickra_trade_imbalance_free(struct TradeImbalance *handle); @@ -9797,6 +10521,8 @@ uintptr_t wickra_trade_sign_autocorrelation_warmup_period(struct TradeSignAutoco bool wickra_trade_sign_autocorrelation_is_ready(struct TradeSignAutocorrelation *handle); +const char *wickra_trade_sign_autocorrelation_name(struct TradeSignAutocorrelation *handle); + void wickra_trade_sign_autocorrelation_reset(struct TradeSignAutocorrelation *handle); void wickra_trade_sign_autocorrelation_free(struct TradeSignAutocorrelation *handle); @@ -9813,6 +10539,8 @@ uintptr_t wickra_vpin_warmup_period(struct Vpin *handle); bool wickra_vpin_is_ready(struct Vpin *handle); +const char *wickra_vpin_name(struct Vpin *handle); + void wickra_vpin_reset(struct Vpin *handle); void wickra_vpin_free(struct Vpin *handle); @@ -9830,6 +10558,8 @@ uintptr_t wickra_effective_spread_warmup_period(struct EffectiveSpread *handle); bool wickra_effective_spread_is_ready(struct EffectiveSpread *handle); +const char *wickra_effective_spread_name(struct EffectiveSpread *handle); + void wickra_effective_spread_reset(struct EffectiveSpread *handle); void wickra_effective_spread_free(struct EffectiveSpread *handle); @@ -9847,6 +10577,8 @@ uintptr_t wickra_kyles_lambda_warmup_period(struct KylesLambda *handle); bool wickra_kyles_lambda_is_ready(struct KylesLambda *handle); +const char *wickra_kyles_lambda_name(struct KylesLambda *handle); + void wickra_kyles_lambda_reset(struct KylesLambda *handle); void wickra_kyles_lambda_free(struct KylesLambda *handle); @@ -9864,6 +10596,8 @@ uintptr_t wickra_realized_spread_warmup_period(struct RealizedSpread *handle); bool wickra_realized_spread_is_ready(struct RealizedSpread *handle); +const char *wickra_realized_spread_name(struct RealizedSpread *handle); + void wickra_realized_spread_reset(struct RealizedSpread *handle); void wickra_realized_spread_free(struct RealizedSpread *handle); @@ -9888,6 +10622,8 @@ uintptr_t wickra_calendar_spread_warmup_period(struct CalendarSpread *handle); bool wickra_calendar_spread_is_ready(struct CalendarSpread *handle); +const char *wickra_calendar_spread_name(struct CalendarSpread *handle); + void wickra_calendar_spread_reset(struct CalendarSpread *handle); void wickra_calendar_spread_free(struct CalendarSpread *handle); @@ -9912,6 +10648,8 @@ uintptr_t wickra_estimated_leverage_ratio_warmup_period(struct EstimatedLeverage bool wickra_estimated_leverage_ratio_is_ready(struct EstimatedLeverageRatio *handle); +const char *wickra_estimated_leverage_ratio_name(struct EstimatedLeverageRatio *handle); + void wickra_estimated_leverage_ratio_reset(struct EstimatedLeverageRatio *handle); void wickra_estimated_leverage_ratio_free(struct EstimatedLeverageRatio *handle); @@ -9936,6 +10674,8 @@ uintptr_t wickra_funding_basis_warmup_period(struct FundingBasis *handle); bool wickra_funding_basis_is_ready(struct FundingBasis *handle); +const char *wickra_funding_basis_name(struct FundingBasis *handle); + void wickra_funding_basis_reset(struct FundingBasis *handle); void wickra_funding_basis_free(struct FundingBasis *handle); @@ -9960,6 +10700,8 @@ uintptr_t wickra_funding_implied_apr_warmup_period(struct FundingImpliedApr *han bool wickra_funding_implied_apr_is_ready(struct FundingImpliedApr *handle); +const char *wickra_funding_implied_apr_name(struct FundingImpliedApr *handle); + void wickra_funding_implied_apr_reset(struct FundingImpliedApr *handle); void wickra_funding_implied_apr_free(struct FundingImpliedApr *handle); @@ -9984,6 +10726,8 @@ uintptr_t wickra_funding_rate_warmup_period(struct FundingRate *handle); bool wickra_funding_rate_is_ready(struct FundingRate *handle); +const char *wickra_funding_rate_name(struct FundingRate *handle); + void wickra_funding_rate_reset(struct FundingRate *handle); void wickra_funding_rate_free(struct FundingRate *handle); @@ -10008,6 +10752,8 @@ uintptr_t wickra_funding_rate_mean_warmup_period(struct FundingRateMean *handle) bool wickra_funding_rate_mean_is_ready(struct FundingRateMean *handle); +const char *wickra_funding_rate_mean_name(struct FundingRateMean *handle); + void wickra_funding_rate_mean_reset(struct FundingRateMean *handle); void wickra_funding_rate_mean_free(struct FundingRateMean *handle); @@ -10032,6 +10778,8 @@ uintptr_t wickra_funding_rate_z_score_warmup_period(struct FundingRateZScore *ha bool wickra_funding_rate_z_score_is_ready(struct FundingRateZScore *handle); +const char *wickra_funding_rate_z_score_name(struct FundingRateZScore *handle); + void wickra_funding_rate_z_score_reset(struct FundingRateZScore *handle); void wickra_funding_rate_z_score_free(struct FundingRateZScore *handle); @@ -10056,6 +10804,8 @@ uintptr_t wickra_long_short_ratio_warmup_period(struct LongShortRatio *handle); bool wickra_long_short_ratio_is_ready(struct LongShortRatio *handle); +const char *wickra_long_short_ratio_name(struct LongShortRatio *handle); + void wickra_long_short_ratio_reset(struct LongShortRatio *handle); void wickra_long_short_ratio_free(struct LongShortRatio *handle); @@ -10080,6 +10830,8 @@ uintptr_t wickra_open_interest_delta_warmup_period(struct OpenInterestDelta *han bool wickra_open_interest_delta_is_ready(struct OpenInterestDelta *handle); +const char *wickra_open_interest_delta_name(struct OpenInterestDelta *handle); + void wickra_open_interest_delta_reset(struct OpenInterestDelta *handle); void wickra_open_interest_delta_free(struct OpenInterestDelta *handle); @@ -10104,6 +10856,8 @@ uintptr_t wickra_oi_price_divergence_warmup_period(struct OIPriceDivergence *han bool wickra_oi_price_divergence_is_ready(struct OIPriceDivergence *handle); +const char *wickra_oi_price_divergence_name(struct OIPriceDivergence *handle); + void wickra_oi_price_divergence_reset(struct OIPriceDivergence *handle); void wickra_oi_price_divergence_free(struct OIPriceDivergence *handle); @@ -10128,6 +10882,8 @@ uintptr_t wickra_oi_to_volume_ratio_warmup_period(struct OiToVolumeRatio *handle bool wickra_oi_to_volume_ratio_is_ready(struct OiToVolumeRatio *handle); +const char *wickra_oi_to_volume_ratio_name(struct OiToVolumeRatio *handle); + void wickra_oi_to_volume_ratio_reset(struct OiToVolumeRatio *handle); void wickra_oi_to_volume_ratio_free(struct OiToVolumeRatio *handle); @@ -10152,6 +10908,8 @@ uintptr_t wickra_oi_weighted_warmup_period(struct OIWeighted *handle); bool wickra_oi_weighted_is_ready(struct OIWeighted *handle); +const char *wickra_oi_weighted_name(struct OIWeighted *handle); + void wickra_oi_weighted_reset(struct OIWeighted *handle); void wickra_oi_weighted_free(struct OIWeighted *handle); @@ -10176,6 +10934,8 @@ uintptr_t wickra_open_interest_momentum_warmup_period(struct OpenInterestMomentu bool wickra_open_interest_momentum_is_ready(struct OpenInterestMomentum *handle); +const char *wickra_open_interest_momentum_name(struct OpenInterestMomentum *handle); + void wickra_open_interest_momentum_reset(struct OpenInterestMomentum *handle); void wickra_open_interest_momentum_free(struct OpenInterestMomentum *handle); @@ -10200,6 +10960,8 @@ uintptr_t wickra_perpetual_premium_index_warmup_period(struct PerpetualPremiumIn bool wickra_perpetual_premium_index_is_ready(struct PerpetualPremiumIndex *handle); +const char *wickra_perpetual_premium_index_name(struct PerpetualPremiumIndex *handle); + void wickra_perpetual_premium_index_reset(struct PerpetualPremiumIndex *handle); void wickra_perpetual_premium_index_free(struct PerpetualPremiumIndex *handle); @@ -10224,6 +10986,8 @@ uintptr_t wickra_taker_buy_sell_ratio_warmup_period(struct TakerBuySellRatio *ha bool wickra_taker_buy_sell_ratio_is_ready(struct TakerBuySellRatio *handle); +const char *wickra_taker_buy_sell_ratio_name(struct TakerBuySellRatio *handle); + void wickra_taker_buy_sell_ratio_reset(struct TakerBuySellRatio *handle); void wickra_taker_buy_sell_ratio_free(struct TakerBuySellRatio *handle); @@ -10248,6 +11012,8 @@ uintptr_t wickra_term_structure_basis_warmup_period(struct TermStructureBasis *h bool wickra_term_structure_basis_is_ready(struct TermStructureBasis *handle); +const char *wickra_term_structure_basis_name(struct TermStructureBasis *handle); + void wickra_term_structure_basis_reset(struct TermStructureBasis *handle); void wickra_term_structure_basis_free(struct TermStructureBasis *handle); @@ -10266,6 +11032,8 @@ uintptr_t wickra_depth_slope_warmup_period(struct DepthSlope *handle); bool wickra_depth_slope_is_ready(struct DepthSlope *handle); +const char *wickra_depth_slope_name(struct DepthSlope *handle); + void wickra_depth_slope_reset(struct DepthSlope *handle); void wickra_depth_slope_free(struct DepthSlope *handle); @@ -10284,6 +11052,8 @@ uintptr_t wickra_microprice_warmup_period(struct Microprice *handle); bool wickra_microprice_is_ready(struct Microprice *handle); +const char *wickra_microprice_name(struct Microprice *handle); + void wickra_microprice_reset(struct Microprice *handle); void wickra_microprice_free(struct Microprice *handle); @@ -10302,6 +11072,8 @@ uintptr_t wickra_order_book_imbalance_full_warmup_period(struct OrderBookImbalan bool wickra_order_book_imbalance_full_is_ready(struct OrderBookImbalanceFull *handle); +const char *wickra_order_book_imbalance_full_name(struct OrderBookImbalanceFull *handle); + void wickra_order_book_imbalance_full_reset(struct OrderBookImbalanceFull *handle); void wickra_order_book_imbalance_full_free(struct OrderBookImbalanceFull *handle); @@ -10320,6 +11092,8 @@ uintptr_t wickra_order_book_imbalance_top1_warmup_period(struct OrderBookImbalan bool wickra_order_book_imbalance_top1_is_ready(struct OrderBookImbalanceTop1 *handle); +const char *wickra_order_book_imbalance_top1_name(struct OrderBookImbalanceTop1 *handle); + void wickra_order_book_imbalance_top1_reset(struct OrderBookImbalanceTop1 *handle); void wickra_order_book_imbalance_top1_free(struct OrderBookImbalanceTop1 *handle); @@ -10338,6 +11112,8 @@ uintptr_t wickra_order_book_imbalance_top_n_warmup_period(struct OrderBookImbala bool wickra_order_book_imbalance_top_n_is_ready(struct OrderBookImbalanceTopN *handle); +const char *wickra_order_book_imbalance_top_n_name(struct OrderBookImbalanceTopN *handle); + void wickra_order_book_imbalance_top_n_reset(struct OrderBookImbalanceTopN *handle); void wickra_order_book_imbalance_top_n_free(struct OrderBookImbalanceTopN *handle); @@ -10356,6 +11132,8 @@ uintptr_t wickra_order_flow_imbalance_warmup_period(struct OrderFlowImbalance *h bool wickra_order_flow_imbalance_is_ready(struct OrderFlowImbalance *handle); +const char *wickra_order_flow_imbalance_name(struct OrderFlowImbalance *handle); + void wickra_order_flow_imbalance_reset(struct OrderFlowImbalance *handle); void wickra_order_flow_imbalance_free(struct OrderFlowImbalance *handle); @@ -10374,6 +11152,8 @@ uintptr_t wickra_quoted_spread_warmup_period(struct QuotedSpread *handle); bool wickra_quoted_spread_is_ready(struct QuotedSpread *handle); +const char *wickra_quoted_spread_name(struct QuotedSpread *handle); + void wickra_quoted_spread_reset(struct QuotedSpread *handle); void wickra_quoted_spread_free(struct QuotedSpread *handle); @@ -10394,6 +11174,8 @@ uintptr_t wickra_absolute_breadth_index_warmup_period(struct AbsoluteBreadthInde bool wickra_absolute_breadth_index_is_ready(struct AbsoluteBreadthIndex *handle); +const char *wickra_absolute_breadth_index_name(struct AbsoluteBreadthIndex *handle); + void wickra_absolute_breadth_index_reset(struct AbsoluteBreadthIndex *handle); void wickra_absolute_breadth_index_free(struct AbsoluteBreadthIndex *handle); @@ -10414,6 +11196,8 @@ uintptr_t wickra_ad_volume_line_warmup_period(struct AdVolumeLine *handle); bool wickra_ad_volume_line_is_ready(struct AdVolumeLine *handle); +const char *wickra_ad_volume_line_name(struct AdVolumeLine *handle); + void wickra_ad_volume_line_reset(struct AdVolumeLine *handle); void wickra_ad_volume_line_free(struct AdVolumeLine *handle); @@ -10434,6 +11218,8 @@ uintptr_t wickra_advance_decline_warmup_period(struct AdvanceDecline *handle); bool wickra_advance_decline_is_ready(struct AdvanceDecline *handle); +const char *wickra_advance_decline_name(struct AdvanceDecline *handle); + void wickra_advance_decline_reset(struct AdvanceDecline *handle); void wickra_advance_decline_free(struct AdvanceDecline *handle); @@ -10454,6 +11240,8 @@ uintptr_t wickra_advance_decline_ratio_warmup_period(struct AdvanceDeclineRatio bool wickra_advance_decline_ratio_is_ready(struct AdvanceDeclineRatio *handle); +const char *wickra_advance_decline_ratio_name(struct AdvanceDeclineRatio *handle); + void wickra_advance_decline_ratio_reset(struct AdvanceDeclineRatio *handle); void wickra_advance_decline_ratio_free(struct AdvanceDeclineRatio *handle); @@ -10474,6 +11262,8 @@ uintptr_t wickra_breadth_thrust_warmup_period(struct BreadthThrust *handle); bool wickra_breadth_thrust_is_ready(struct BreadthThrust *handle); +const char *wickra_breadth_thrust_name(struct BreadthThrust *handle); + void wickra_breadth_thrust_reset(struct BreadthThrust *handle); void wickra_breadth_thrust_free(struct BreadthThrust *handle); @@ -10494,6 +11284,8 @@ uintptr_t wickra_bullish_percent_index_warmup_period(struct BullishPercentIndex bool wickra_bullish_percent_index_is_ready(struct BullishPercentIndex *handle); +const char *wickra_bullish_percent_index_name(struct BullishPercentIndex *handle); + void wickra_bullish_percent_index_reset(struct BullishPercentIndex *handle); void wickra_bullish_percent_index_free(struct BullishPercentIndex *handle); @@ -10514,6 +11306,8 @@ uintptr_t wickra_cumulative_volume_index_warmup_period(struct CumulativeVolumeIn bool wickra_cumulative_volume_index_is_ready(struct CumulativeVolumeIndex *handle); +const char *wickra_cumulative_volume_index_name(struct CumulativeVolumeIndex *handle); + void wickra_cumulative_volume_index_reset(struct CumulativeVolumeIndex *handle); void wickra_cumulative_volume_index_free(struct CumulativeVolumeIndex *handle); @@ -10534,6 +11328,8 @@ uintptr_t wickra_high_low_index_warmup_period(struct HighLowIndex *handle); bool wickra_high_low_index_is_ready(struct HighLowIndex *handle); +const char *wickra_high_low_index_name(struct HighLowIndex *handle); + void wickra_high_low_index_reset(struct HighLowIndex *handle); void wickra_high_low_index_free(struct HighLowIndex *handle); @@ -10554,6 +11350,8 @@ uintptr_t wickra_mc_clellan_oscillator_warmup_period(struct McClellanOscillator bool wickra_mc_clellan_oscillator_is_ready(struct McClellanOscillator *handle); +const char *wickra_mc_clellan_oscillator_name(struct McClellanOscillator *handle); + void wickra_mc_clellan_oscillator_reset(struct McClellanOscillator *handle); void wickra_mc_clellan_oscillator_free(struct McClellanOscillator *handle); @@ -10574,6 +11372,8 @@ uintptr_t wickra_mc_clellan_summation_index_warmup_period(struct McClellanSummat bool wickra_mc_clellan_summation_index_is_ready(struct McClellanSummationIndex *handle); +const char *wickra_mc_clellan_summation_index_name(struct McClellanSummationIndex *handle); + void wickra_mc_clellan_summation_index_reset(struct McClellanSummationIndex *handle); void wickra_mc_clellan_summation_index_free(struct McClellanSummationIndex *handle); @@ -10594,6 +11394,8 @@ uintptr_t wickra_new_highs_new_lows_warmup_period(struct NewHighsNewLows *handle bool wickra_new_highs_new_lows_is_ready(struct NewHighsNewLows *handle); +const char *wickra_new_highs_new_lows_name(struct NewHighsNewLows *handle); + void wickra_new_highs_new_lows_reset(struct NewHighsNewLows *handle); void wickra_new_highs_new_lows_free(struct NewHighsNewLows *handle); @@ -10614,6 +11416,8 @@ uintptr_t wickra_percent_above_ma_warmup_period(struct PercentAboveMa *handle); bool wickra_percent_above_ma_is_ready(struct PercentAboveMa *handle); +const char *wickra_percent_above_ma_name(struct PercentAboveMa *handle); + void wickra_percent_above_ma_reset(struct PercentAboveMa *handle); void wickra_percent_above_ma_free(struct PercentAboveMa *handle); @@ -10634,6 +11438,8 @@ uintptr_t wickra_tick_index_warmup_period(struct TickIndex *handle); bool wickra_tick_index_is_ready(struct TickIndex *handle); +const char *wickra_tick_index_name(struct TickIndex *handle); + void wickra_tick_index_reset(struct TickIndex *handle); void wickra_tick_index_free(struct TickIndex *handle); @@ -10654,6 +11460,8 @@ uintptr_t wickra_trin_warmup_period(struct Trin *handle); bool wickra_trin_is_ready(struct Trin *handle); +const char *wickra_trin_name(struct Trin *handle); + void wickra_trin_reset(struct Trin *handle); void wickra_trin_free(struct Trin *handle); @@ -10674,6 +11482,8 @@ uintptr_t wickra_up_down_volume_ratio_warmup_period(struct UpDownVolumeRatio *ha bool wickra_up_down_volume_ratio_is_ready(struct UpDownVolumeRatio *handle); +const char *wickra_up_down_volume_ratio_name(struct UpDownVolumeRatio *handle); + void wickra_up_down_volume_ratio_reset(struct UpDownVolumeRatio *handle); void wickra_up_down_volume_ratio_free(struct UpDownVolumeRatio *handle); @@ -10693,6 +11503,8 @@ uintptr_t wickra_acceleration_bands_warmup_period(struct AccelerationBands *hand bool wickra_acceleration_bands_is_ready(struct AccelerationBands *handle); +const char *wickra_acceleration_bands_name(struct AccelerationBands *handle); + void wickra_acceleration_bands_reset(struct AccelerationBands *handle); void wickra_acceleration_bands_free(struct AccelerationBands *handle); @@ -10712,6 +11524,8 @@ uintptr_t wickra_adx_warmup_period(struct Adx *handle); bool wickra_adx_is_ready(struct Adx *handle); +const char *wickra_adx_name(struct Adx *handle); + void wickra_adx_reset(struct Adx *handle); void wickra_adx_free(struct Adx *handle); @@ -10733,6 +11547,8 @@ uintptr_t wickra_alligator_warmup_period(struct Alligator *handle); bool wickra_alligator_is_ready(struct Alligator *handle); +const char *wickra_alligator_name(struct Alligator *handle); + void wickra_alligator_reset(struct Alligator *handle); void wickra_alligator_free(struct Alligator *handle); @@ -10752,6 +11568,8 @@ uintptr_t wickra_andrews_pitchfork_warmup_period(struct AndrewsPitchfork *handle bool wickra_andrews_pitchfork_is_ready(struct AndrewsPitchfork *handle); +const char *wickra_andrews_pitchfork_name(struct AndrewsPitchfork *handle); + void wickra_andrews_pitchfork_reset(struct AndrewsPitchfork *handle); void wickra_andrews_pitchfork_free(struct AndrewsPitchfork *handle); @@ -10771,6 +11589,8 @@ uintptr_t wickra_aroon_warmup_period(struct Aroon *handle); bool wickra_aroon_is_ready(struct Aroon *handle); +const char *wickra_aroon_name(struct Aroon *handle); + void wickra_aroon_reset(struct Aroon *handle); void wickra_aroon_free(struct Aroon *handle); @@ -10790,6 +11610,8 @@ uintptr_t wickra_atr_bands_warmup_period(struct AtrBands *handle); bool wickra_atr_bands_is_ready(struct AtrBands *handle); +const char *wickra_atr_bands_name(struct AtrBands *handle); + void wickra_atr_bands_reset(struct AtrBands *handle); void wickra_atr_bands_free(struct AtrBands *handle); @@ -10811,6 +11633,8 @@ uintptr_t wickra_atr_ratchet_warmup_period(struct AtrRatchet *handle); bool wickra_atr_ratchet_is_ready(struct AtrRatchet *handle); +const char *wickra_atr_ratchet_name(struct AtrRatchet *handle); + void wickra_atr_ratchet_reset(struct AtrRatchet *handle); void wickra_atr_ratchet_free(struct AtrRatchet *handle); @@ -10830,6 +11654,8 @@ uintptr_t wickra_auto_fib_warmup_period(struct AutoFib *handle); bool wickra_auto_fib_is_ready(struct AutoFib *handle); +const char *wickra_auto_fib_name(struct AutoFib *handle); + void wickra_auto_fib_reset(struct AutoFib *handle); void wickra_auto_fib_free(struct AutoFib *handle); @@ -10844,6 +11670,8 @@ uintptr_t wickra_bollinger_bands_warmup_period(struct BollingerBands *handle); bool wickra_bollinger_bands_is_ready(struct BollingerBands *handle); +const char *wickra_bollinger_bands_name(struct BollingerBands *handle); + void wickra_bollinger_bands_reset(struct BollingerBands *handle); void wickra_bollinger_bands_free(struct BollingerBands *handle); @@ -10858,6 +11686,8 @@ uintptr_t wickra_bomar_bands_warmup_period(struct BomarBands *handle); bool wickra_bomar_bands_is_ready(struct BomarBands *handle); +const char *wickra_bomar_bands_name(struct BomarBands *handle); + void wickra_bomar_bands_reset(struct BomarBands *handle); void wickra_bomar_bands_free(struct BomarBands *handle); @@ -10877,6 +11707,8 @@ uintptr_t wickra_camarilla_warmup_period(struct Camarilla *handle); bool wickra_camarilla_is_ready(struct Camarilla *handle); +const char *wickra_camarilla_name(struct Camarilla *handle); + void wickra_camarilla_reset(struct Camarilla *handle); void wickra_camarilla_free(struct Camarilla *handle); @@ -10896,6 +11728,8 @@ uintptr_t wickra_candle_volume_warmup_period(struct CandleVolume *handle); bool wickra_candle_volume_is_ready(struct CandleVolume *handle); +const char *wickra_candle_volume_name(struct CandleVolume *handle); + void wickra_candle_volume_reset(struct CandleVolume *handle); void wickra_candle_volume_free(struct CandleVolume *handle); @@ -10915,6 +11749,8 @@ uintptr_t wickra_central_pivot_range_warmup_period(struct CentralPivotRange *han bool wickra_central_pivot_range_is_ready(struct CentralPivotRange *handle); +const char *wickra_central_pivot_range_name(struct CentralPivotRange *handle); + void wickra_central_pivot_range_reset(struct CentralPivotRange *handle); void wickra_central_pivot_range_free(struct CentralPivotRange *handle); @@ -10936,6 +11772,8 @@ uintptr_t wickra_chande_kroll_stop_warmup_period(struct ChandeKrollStop *handle) bool wickra_chande_kroll_stop_is_ready(struct ChandeKrollStop *handle); +const char *wickra_chande_kroll_stop_name(struct ChandeKrollStop *handle); + void wickra_chande_kroll_stop_reset(struct ChandeKrollStop *handle); void wickra_chande_kroll_stop_free(struct ChandeKrollStop *handle); @@ -10955,6 +11793,8 @@ uintptr_t wickra_chandelier_exit_warmup_period(struct ChandelierExit *handle); bool wickra_chandelier_exit_is_ready(struct ChandelierExit *handle); +const char *wickra_chandelier_exit_name(struct ChandelierExit *handle); + void wickra_chandelier_exit_reset(struct ChandelierExit *handle); void wickra_chandelier_exit_free(struct ChandelierExit *handle); @@ -10974,6 +11814,8 @@ uintptr_t wickra_classic_pivots_warmup_period(struct ClassicPivots *handle); bool wickra_classic_pivots_is_ready(struct ClassicPivots *handle); +const char *wickra_classic_pivots_name(struct ClassicPivots *handle); + void wickra_classic_pivots_reset(struct ClassicPivots *handle); void wickra_classic_pivots_free(struct ClassicPivots *handle); @@ -10989,6 +11831,8 @@ uintptr_t wickra_cointegration_warmup_period(struct Cointegration *handle); bool wickra_cointegration_is_ready(struct Cointegration *handle); +const char *wickra_cointegration_name(struct Cointegration *handle); + void wickra_cointegration_reset(struct Cointegration *handle); void wickra_cointegration_free(struct Cointegration *handle); @@ -11010,6 +11854,8 @@ uintptr_t wickra_composite_profile_warmup_period(struct CompositeProfile *handle bool wickra_composite_profile_is_ready(struct CompositeProfile *handle); +const char *wickra_composite_profile_name(struct CompositeProfile *handle); + void wickra_composite_profile_reset(struct CompositeProfile *handle); void wickra_composite_profile_free(struct CompositeProfile *handle); @@ -11029,6 +11875,8 @@ uintptr_t wickra_demark_pivots_warmup_period(struct DemarkPivots *handle); bool wickra_demark_pivots_is_ready(struct DemarkPivots *handle); +const char *wickra_demark_pivots_name(struct DemarkPivots *handle); + void wickra_demark_pivots_reset(struct DemarkPivots *handle); void wickra_demark_pivots_free(struct DemarkPivots *handle); @@ -11048,6 +11896,8 @@ uintptr_t wickra_donchian_warmup_period(struct Donchian *handle); bool wickra_donchian_is_ready(struct Donchian *handle); +const char *wickra_donchian_name(struct Donchian *handle); + void wickra_donchian_reset(struct Donchian *handle); void wickra_donchian_free(struct Donchian *handle); @@ -11067,6 +11917,8 @@ uintptr_t wickra_donchian_stop_warmup_period(struct DonchianStop *handle); bool wickra_donchian_stop_is_ready(struct DonchianStop *handle); +const char *wickra_donchian_stop_name(struct DonchianStop *handle); + void wickra_donchian_stop_reset(struct DonchianStop *handle); void wickra_donchian_stop_free(struct DonchianStop *handle); @@ -11083,6 +11935,8 @@ uintptr_t wickra_double_bollinger_warmup_period(struct DoubleBollinger *handle); bool wickra_double_bollinger_is_ready(struct DoubleBollinger *handle); +const char *wickra_double_bollinger_name(struct DoubleBollinger *handle); + void wickra_double_bollinger_reset(struct DoubleBollinger *handle); void wickra_double_bollinger_free(struct DoubleBollinger *handle); @@ -11102,6 +11956,8 @@ uintptr_t wickra_elder_ray_warmup_period(struct ElderRay *handle); bool wickra_elder_ray_is_ready(struct ElderRay *handle); +const char *wickra_elder_ray_name(struct ElderRay *handle); + void wickra_elder_ray_reset(struct ElderRay *handle); void wickra_elder_ray_free(struct ElderRay *handle); @@ -11121,6 +11977,8 @@ uintptr_t wickra_elder_safe_zone_warmup_period(struct ElderSafeZone *handle); bool wickra_elder_safe_zone_is_ready(struct ElderSafeZone *handle); +const char *wickra_elder_safe_zone_name(struct ElderSafeZone *handle); + void wickra_elder_safe_zone_reset(struct ElderSafeZone *handle); void wickra_elder_safe_zone_free(struct ElderSafeZone *handle); @@ -11140,6 +11998,8 @@ uintptr_t wickra_equivolume_warmup_period(struct Equivolume *handle); bool wickra_equivolume_is_ready(struct Equivolume *handle); +const char *wickra_equivolume_name(struct Equivolume *handle); + void wickra_equivolume_reset(struct Equivolume *handle); void wickra_equivolume_free(struct Equivolume *handle); @@ -11159,6 +12019,8 @@ uintptr_t wickra_fib_arcs_warmup_period(struct FibArcs *handle); bool wickra_fib_arcs_is_ready(struct FibArcs *handle); +const char *wickra_fib_arcs_name(struct FibArcs *handle); + void wickra_fib_arcs_reset(struct FibArcs *handle); void wickra_fib_arcs_free(struct FibArcs *handle); @@ -11178,6 +12040,8 @@ uintptr_t wickra_fib_channel_warmup_period(struct FibChannel *handle); bool wickra_fib_channel_is_ready(struct FibChannel *handle); +const char *wickra_fib_channel_name(struct FibChannel *handle); + void wickra_fib_channel_reset(struct FibChannel *handle); void wickra_fib_channel_free(struct FibChannel *handle); @@ -11197,6 +12061,8 @@ uintptr_t wickra_fib_confluence_warmup_period(struct FibConfluence *handle); bool wickra_fib_confluence_is_ready(struct FibConfluence *handle); +const char *wickra_fib_confluence_name(struct FibConfluence *handle); + void wickra_fib_confluence_reset(struct FibConfluence *handle); void wickra_fib_confluence_free(struct FibConfluence *handle); @@ -11216,6 +12082,8 @@ uintptr_t wickra_fib_extension_warmup_period(struct FibExtension *handle); bool wickra_fib_extension_is_ready(struct FibExtension *handle); +const char *wickra_fib_extension_name(struct FibExtension *handle); + void wickra_fib_extension_reset(struct FibExtension *handle); void wickra_fib_extension_free(struct FibExtension *handle); @@ -11235,6 +12103,8 @@ uintptr_t wickra_fib_fan_warmup_period(struct FibFan *handle); bool wickra_fib_fan_is_ready(struct FibFan *handle); +const char *wickra_fib_fan_name(struct FibFan *handle); + void wickra_fib_fan_reset(struct FibFan *handle); void wickra_fib_fan_free(struct FibFan *handle); @@ -11254,6 +12124,8 @@ uintptr_t wickra_fib_projection_warmup_period(struct FibProjection *handle); bool wickra_fib_projection_is_ready(struct FibProjection *handle); +const char *wickra_fib_projection_name(struct FibProjection *handle); + void wickra_fib_projection_reset(struct FibProjection *handle); void wickra_fib_projection_free(struct FibProjection *handle); @@ -11273,6 +12145,8 @@ uintptr_t wickra_fib_retracement_warmup_period(struct FibRetracement *handle); bool wickra_fib_retracement_is_ready(struct FibRetracement *handle); +const char *wickra_fib_retracement_name(struct FibRetracement *handle); + void wickra_fib_retracement_reset(struct FibRetracement *handle); void wickra_fib_retracement_free(struct FibRetracement *handle); @@ -11292,6 +12166,8 @@ uintptr_t wickra_fib_time_zones_warmup_period(struct FibTimeZones *handle); bool wickra_fib_time_zones_is_ready(struct FibTimeZones *handle); +const char *wickra_fib_time_zones_name(struct FibTimeZones *handle); + void wickra_fib_time_zones_reset(struct FibTimeZones *handle); void wickra_fib_time_zones_free(struct FibTimeZones *handle); @@ -11311,6 +12187,8 @@ uintptr_t wickra_fibonacci_pivots_warmup_period(struct FibonacciPivots *handle); bool wickra_fibonacci_pivots_is_ready(struct FibonacciPivots *handle); +const char *wickra_fibonacci_pivots_name(struct FibonacciPivots *handle); + void wickra_fibonacci_pivots_reset(struct FibonacciPivots *handle); void wickra_fibonacci_pivots_free(struct FibonacciPivots *handle); @@ -11330,6 +12208,8 @@ uintptr_t wickra_fractal_chaos_bands_warmup_period(struct FractalChaosBands *han bool wickra_fractal_chaos_bands_is_ready(struct FractalChaosBands *handle); +const char *wickra_fractal_chaos_bands_name(struct FractalChaosBands *handle); + void wickra_fractal_chaos_bands_reset(struct FractalChaosBands *handle); void wickra_fractal_chaos_bands_free(struct FractalChaosBands *handle); @@ -11351,6 +12231,8 @@ uintptr_t wickra_gator_oscillator_warmup_period(struct GatorOscillator *handle); bool wickra_gator_oscillator_is_ready(struct GatorOscillator *handle); +const char *wickra_gator_oscillator_name(struct GatorOscillator *handle); + void wickra_gator_oscillator_reset(struct GatorOscillator *handle); void wickra_gator_oscillator_free(struct GatorOscillator *handle); @@ -11370,6 +12252,8 @@ uintptr_t wickra_golden_pocket_warmup_period(struct GoldenPocket *handle); bool wickra_golden_pocket_is_ready(struct GoldenPocket *handle); +const char *wickra_golden_pocket_name(struct GoldenPocket *handle); + void wickra_golden_pocket_reset(struct GoldenPocket *handle); void wickra_golden_pocket_free(struct GoldenPocket *handle); @@ -11389,6 +12273,8 @@ uintptr_t wickra_heikin_ashi_warmup_period(struct HeikinAshi *handle); bool wickra_heikin_ashi_is_ready(struct HeikinAshi *handle); +const char *wickra_heikin_ashi_name(struct HeikinAshi *handle); + void wickra_heikin_ashi_reset(struct HeikinAshi *handle); void wickra_heikin_ashi_free(struct HeikinAshi *handle); @@ -11408,6 +12294,8 @@ uintptr_t wickra_high_low_volume_nodes_warmup_period(struct HighLowVolumeNodes * bool wickra_high_low_volume_nodes_is_ready(struct HighLowVolumeNodes *handle); +const char *wickra_high_low_volume_nodes_name(struct HighLowVolumeNodes *handle); + void wickra_high_low_volume_nodes_reset(struct HighLowVolumeNodes *handle); void wickra_high_low_volume_nodes_free(struct HighLowVolumeNodes *handle); @@ -11422,6 +12310,8 @@ uintptr_t wickra_ht_phasor_warmup_period(struct HtPhasor *handle); bool wickra_ht_phasor_is_ready(struct HtPhasor *handle); +const char *wickra_ht_phasor_name(struct HtPhasor *handle); + void wickra_ht_phasor_reset(struct HtPhasor *handle); void wickra_ht_phasor_free(struct HtPhasor *handle); @@ -11441,6 +12331,8 @@ uintptr_t wickra_hurst_channel_warmup_period(struct HurstChannel *handle); bool wickra_hurst_channel_is_ready(struct HurstChannel *handle); +const char *wickra_hurst_channel_name(struct HurstChannel *handle); + void wickra_hurst_channel_reset(struct HurstChannel *handle); void wickra_hurst_channel_free(struct HurstChannel *handle); @@ -11463,6 +12355,8 @@ uintptr_t wickra_ichimoku_warmup_period(struct Ichimoku *handle); bool wickra_ichimoku_is_ready(struct Ichimoku *handle); +const char *wickra_ichimoku_name(struct Ichimoku *handle); + void wickra_ichimoku_reset(struct Ichimoku *handle); void wickra_ichimoku_free(struct Ichimoku *handle); @@ -11482,6 +12376,8 @@ uintptr_t wickra_initial_balance_warmup_period(struct InitialBalance *handle); bool wickra_initial_balance_is_ready(struct InitialBalance *handle); +const char *wickra_initial_balance_name(struct InitialBalance *handle); + void wickra_initial_balance_reset(struct InitialBalance *handle); void wickra_initial_balance_free(struct InitialBalance *handle); @@ -11497,6 +12393,8 @@ uintptr_t wickra_kalman_hedge_ratio_warmup_period(struct KalmanHedgeRatio *handl bool wickra_kalman_hedge_ratio_is_ready(struct KalmanHedgeRatio *handle); +const char *wickra_kalman_hedge_ratio_name(struct KalmanHedgeRatio *handle); + void wickra_kalman_hedge_ratio_reset(struct KalmanHedgeRatio *handle); void wickra_kalman_hedge_ratio_free(struct KalmanHedgeRatio *handle); @@ -11516,6 +12414,8 @@ uintptr_t wickra_kase_dev_stop_warmup_period(struct KaseDevStop *handle); bool wickra_kase_dev_stop_is_ready(struct KaseDevStop *handle); +const char *wickra_kase_dev_stop_name(struct KaseDevStop *handle); + void wickra_kase_dev_stop_reset(struct KaseDevStop *handle); void wickra_kase_dev_stop_free(struct KaseDevStop *handle); @@ -11536,6 +12436,8 @@ uintptr_t wickra_kase_permission_stochastic_warmup_period(struct KasePermissionS bool wickra_kase_permission_stochastic_is_ready(struct KasePermissionStochastic *handle); +const char *wickra_kase_permission_stochastic_name(struct KasePermissionStochastic *handle); + void wickra_kase_permission_stochastic_reset(struct KasePermissionStochastic *handle); void wickra_kase_permission_stochastic_free(struct KasePermissionStochastic *handle); @@ -11555,6 +12457,8 @@ uintptr_t wickra_keltner_warmup_period(struct Keltner *handle); bool wickra_keltner_is_ready(struct Keltner *handle); +const char *wickra_keltner_name(struct Keltner *handle); + void wickra_keltner_reset(struct Keltner *handle); void wickra_keltner_free(struct Keltner *handle); @@ -11575,6 +12479,8 @@ uintptr_t wickra_kst_warmup_period(struct Kst *handle); bool wickra_kst_is_ready(struct Kst *handle); +const char *wickra_kst_name(struct Kst *handle); + void wickra_kst_reset(struct Kst *handle); void wickra_kst_free(struct Kst *handle); @@ -11591,6 +12497,8 @@ uintptr_t wickra_lead_lag_cross_correlation_warmup_period(struct LeadLagCrossCor bool wickra_lead_lag_cross_correlation_is_ready(struct LeadLagCrossCorrelation *handle); +const char *wickra_lead_lag_cross_correlation_name(struct LeadLagCrossCorrelation *handle); + void wickra_lead_lag_cross_correlation_reset(struct LeadLagCrossCorrelation *handle); void wickra_lead_lag_cross_correlation_free(struct LeadLagCrossCorrelation *handle); @@ -11605,6 +12513,8 @@ uintptr_t wickra_lin_reg_channel_warmup_period(struct LinRegChannel *handle); bool wickra_lin_reg_channel_is_ready(struct LinRegChannel *handle); +const char *wickra_lin_reg_channel_name(struct LinRegChannel *handle); + void wickra_lin_reg_channel_reset(struct LinRegChannel *handle); void wickra_lin_reg_channel_free(struct LinRegChannel *handle); @@ -11630,6 +12540,8 @@ uintptr_t wickra_liquidation_features_warmup_period(struct LiquidationFeatures * bool wickra_liquidation_features_is_ready(struct LiquidationFeatures *handle); +const char *wickra_liquidation_features_name(struct LiquidationFeatures *handle); + void wickra_liquidation_features_reset(struct LiquidationFeatures *handle); void wickra_liquidation_features_free(struct LiquidationFeatures *handle); @@ -11644,6 +12556,8 @@ uintptr_t wickra_ma_envelope_warmup_period(struct MaEnvelope *handle); bool wickra_ma_envelope_is_ready(struct MaEnvelope *handle); +const char *wickra_ma_envelope_name(struct MaEnvelope *handle); + void wickra_ma_envelope_reset(struct MaEnvelope *handle); void wickra_ma_envelope_free(struct MaEnvelope *handle); @@ -11658,6 +12572,8 @@ uintptr_t wickra_macd_indicator_warmup_period(struct MacdIndicator *handle); bool wickra_macd_indicator_is_ready(struct MacdIndicator *handle); +const char *wickra_macd_indicator_name(struct MacdIndicator *handle); + void wickra_macd_indicator_reset(struct MacdIndicator *handle); void wickra_macd_indicator_free(struct MacdIndicator *handle); @@ -11670,6 +12586,8 @@ uintptr_t wickra_macd_fix_warmup_period(struct MacdFix *handle); bool wickra_macd_fix_is_ready(struct MacdFix *handle); +const char *wickra_macd_fix_name(struct MacdFix *handle); + void wickra_macd_fix_reset(struct MacdFix *handle); void wickra_macd_fix_free(struct MacdFix *handle); @@ -11682,6 +12600,8 @@ uintptr_t wickra_mama_warmup_period(struct Mama *handle); bool wickra_mama_is_ready(struct Mama *handle); +const char *wickra_mama_name(struct Mama *handle); + void wickra_mama_reset(struct Mama *handle); void wickra_mama_free(struct Mama *handle); @@ -11696,6 +12616,8 @@ uintptr_t wickra_median_channel_warmup_period(struct MedianChannel *handle); bool wickra_median_channel_is_ready(struct MedianChannel *handle); +const char *wickra_median_channel_name(struct MedianChannel *handle); + void wickra_median_channel_reset(struct MedianChannel *handle); void wickra_median_channel_free(struct MedianChannel *handle); @@ -11715,6 +12637,8 @@ uintptr_t wickra_modified_ma_stop_warmup_period(struct ModifiedMaStop *handle); bool wickra_modified_ma_stop_is_ready(struct ModifiedMaStop *handle); +const char *wickra_modified_ma_stop_name(struct ModifiedMaStop *handle); + void wickra_modified_ma_stop_reset(struct ModifiedMaStop *handle); void wickra_modified_ma_stop_free(struct ModifiedMaStop *handle); @@ -11734,6 +12658,8 @@ uintptr_t wickra_murrey_math_lines_warmup_period(struct MurreyMathLines *handle) bool wickra_murrey_math_lines_is_ready(struct MurreyMathLines *handle); +const char *wickra_murrey_math_lines_name(struct MurreyMathLines *handle); + void wickra_murrey_math_lines_reset(struct MurreyMathLines *handle); void wickra_murrey_math_lines_free(struct MurreyMathLines *handle); @@ -11753,6 +12679,8 @@ uintptr_t wickra_nrtr_warmup_period(struct Nrtr *handle); bool wickra_nrtr_is_ready(struct Nrtr *handle); +const char *wickra_nrtr_name(struct Nrtr *handle); + void wickra_nrtr_reset(struct Nrtr *handle); void wickra_nrtr_free(struct Nrtr *handle); @@ -11772,6 +12700,8 @@ uintptr_t wickra_opening_range_warmup_period(struct OpeningRange *handle); bool wickra_opening_range_is_ready(struct OpeningRange *handle); +const char *wickra_opening_range_name(struct OpeningRange *handle); + void wickra_opening_range_reset(struct OpeningRange *handle); void wickra_opening_range_free(struct OpeningRange *handle); @@ -11791,6 +12721,8 @@ uintptr_t wickra_overnight_intraday_return_warmup_period(struct OvernightIntrada bool wickra_overnight_intraday_return_is_ready(struct OvernightIntradayReturn *handle); +const char *wickra_overnight_intraday_return_name(struct OvernightIntradayReturn *handle); + void wickra_overnight_intraday_return_reset(struct OvernightIntradayReturn *handle); void wickra_overnight_intraday_return_free(struct OvernightIntradayReturn *handle); @@ -11810,6 +12742,8 @@ uintptr_t wickra_projection_bands_warmup_period(struct ProjectionBands *handle); bool wickra_projection_bands_is_ready(struct ProjectionBands *handle); +const char *wickra_projection_bands_name(struct ProjectionBands *handle); + void wickra_projection_bands_reset(struct ProjectionBands *handle); void wickra_projection_bands_free(struct ProjectionBands *handle); @@ -11822,6 +12756,8 @@ uintptr_t wickra_qqe_warmup_period(struct Qqe *handle); bool wickra_qqe_is_ready(struct Qqe *handle); +const char *wickra_qqe_name(struct Qqe *handle); + void wickra_qqe_reset(struct Qqe *handle); void wickra_qqe_free(struct Qqe *handle); @@ -11836,6 +12772,8 @@ uintptr_t wickra_quartile_bands_warmup_period(struct QuartileBands *handle); bool wickra_quartile_bands_is_ready(struct QuartileBands *handle); +const char *wickra_quartile_bands_name(struct QuartileBands *handle); + void wickra_quartile_bands_reset(struct QuartileBands *handle); void wickra_quartile_bands_free(struct QuartileBands *handle); @@ -11852,6 +12790,8 @@ uintptr_t wickra_relative_strength_ab_warmup_period(struct RelativeStrengthAB *h bool wickra_relative_strength_ab_is_ready(struct RelativeStrengthAB *handle); +const char *wickra_relative_strength_ab_name(struct RelativeStrengthAB *handle); + void wickra_relative_strength_ab_reset(struct RelativeStrengthAB *handle); void wickra_relative_strength_ab_free(struct RelativeStrengthAB *handle); @@ -11871,6 +12811,8 @@ uintptr_t wickra_rwi_warmup_period(struct Rwi *handle); bool wickra_rwi_is_ready(struct Rwi *handle); +const char *wickra_rwi_name(struct Rwi *handle); + void wickra_rwi_reset(struct Rwi *handle); void wickra_rwi_free(struct Rwi *handle); @@ -11890,6 +12832,8 @@ uintptr_t wickra_session_high_low_warmup_period(struct SessionHighLow *handle); bool wickra_session_high_low_is_ready(struct SessionHighLow *handle); +const char *wickra_session_high_low_name(struct SessionHighLow *handle); + void wickra_session_high_low_reset(struct SessionHighLow *handle); void wickra_session_high_low_free(struct SessionHighLow *handle); @@ -11909,6 +12853,8 @@ uintptr_t wickra_session_range_warmup_period(struct SessionRange *handle); bool wickra_session_range_is_ready(struct SessionRange *handle); +const char *wickra_session_range_name(struct SessionRange *handle); + void wickra_session_range_reset(struct SessionRange *handle); void wickra_session_range_free(struct SessionRange *handle); @@ -11928,6 +12874,8 @@ uintptr_t wickra_smoothed_heikin_ashi_warmup_period(struct SmoothedHeikinAshi *h bool wickra_smoothed_heikin_ashi_is_ready(struct SmoothedHeikinAshi *handle); +const char *wickra_smoothed_heikin_ashi_name(struct SmoothedHeikinAshi *handle); + void wickra_smoothed_heikin_ashi_reset(struct SmoothedHeikinAshi *handle); void wickra_smoothed_heikin_ashi_free(struct SmoothedHeikinAshi *handle); @@ -11943,6 +12891,8 @@ uintptr_t wickra_spread_bollinger_bands_warmup_period(struct SpreadBollingerBand bool wickra_spread_bollinger_bands_is_ready(struct SpreadBollingerBands *handle); +const char *wickra_spread_bollinger_bands_name(struct SpreadBollingerBands *handle); + void wickra_spread_bollinger_bands_reset(struct SpreadBollingerBands *handle); void wickra_spread_bollinger_bands_free(struct SpreadBollingerBands *handle); @@ -11957,6 +12907,8 @@ uintptr_t wickra_standard_error_bands_warmup_period(struct StandardErrorBands *h bool wickra_standard_error_bands_is_ready(struct StandardErrorBands *handle); +const char *wickra_standard_error_bands_name(struct StandardErrorBands *handle); + void wickra_standard_error_bands_reset(struct StandardErrorBands *handle); void wickra_standard_error_bands_free(struct StandardErrorBands *handle); @@ -11978,6 +12930,8 @@ uintptr_t wickra_starc_bands_warmup_period(struct StarcBands *handle); bool wickra_starc_bands_is_ready(struct StarcBands *handle); +const char *wickra_starc_bands_name(struct StarcBands *handle); + void wickra_starc_bands_reset(struct StarcBands *handle); void wickra_starc_bands_free(struct StarcBands *handle); @@ -11997,6 +12951,8 @@ uintptr_t wickra_stochastic_warmup_period(struct Stochastic *handle); bool wickra_stochastic_is_ready(struct Stochastic *handle); +const char *wickra_stochastic_name(struct Stochastic *handle); + void wickra_stochastic_reset(struct Stochastic *handle); void wickra_stochastic_free(struct Stochastic *handle); @@ -12016,6 +12972,8 @@ uintptr_t wickra_super_trend_warmup_period(struct SuperTrend *handle); bool wickra_super_trend_is_ready(struct SuperTrend *handle); +const char *wickra_super_trend_name(struct SuperTrend *handle); + void wickra_super_trend_reset(struct SuperTrend *handle); void wickra_super_trend_free(struct SuperTrend *handle); @@ -12035,6 +12993,8 @@ uintptr_t wickra_td_lines_warmup_period(struct TdLines *handle); bool wickra_td_lines_is_ready(struct TdLines *handle); +const char *wickra_td_lines_name(struct TdLines *handle); + void wickra_td_lines_reset(struct TdLines *handle); void wickra_td_lines_free(struct TdLines *handle); @@ -12054,6 +13014,8 @@ uintptr_t wickra_td_moving_average_warmup_period(struct TdMovingAverage *handle) bool wickra_td_moving_average_is_ready(struct TdMovingAverage *handle); +const char *wickra_td_moving_average_name(struct TdMovingAverage *handle); + void wickra_td_moving_average_reset(struct TdMovingAverage *handle); void wickra_td_moving_average_free(struct TdMovingAverage *handle); @@ -12073,6 +13035,8 @@ uintptr_t wickra_td_range_projection_warmup_period(struct TdRangeProjection *han bool wickra_td_range_projection_is_ready(struct TdRangeProjection *handle); +const char *wickra_td_range_projection_name(struct TdRangeProjection *handle); + void wickra_td_range_projection_reset(struct TdRangeProjection *handle); void wickra_td_range_projection_free(struct TdRangeProjection *handle); @@ -12092,6 +13056,8 @@ uintptr_t wickra_td_risk_level_warmup_period(struct TdRiskLevel *handle); bool wickra_td_risk_level_is_ready(struct TdRiskLevel *handle); +const char *wickra_td_risk_level_name(struct TdRiskLevel *handle); + void wickra_td_risk_level_reset(struct TdRiskLevel *handle); void wickra_td_risk_level_free(struct TdRiskLevel *handle); @@ -12114,6 +13080,8 @@ uintptr_t wickra_td_sequential_warmup_period(struct TdSequential *handle); bool wickra_td_sequential_is_ready(struct TdSequential *handle); +const char *wickra_td_sequential_name(struct TdSequential *handle); + void wickra_td_sequential_reset(struct TdSequential *handle); void wickra_td_sequential_free(struct TdSequential *handle); @@ -12133,6 +13101,8 @@ uintptr_t wickra_ttm_squeeze_warmup_period(struct TtmSqueeze *handle); bool wickra_ttm_squeeze_is_ready(struct TtmSqueeze *handle); +const char *wickra_ttm_squeeze_name(struct TtmSqueeze *handle); + void wickra_ttm_squeeze_reset(struct TtmSqueeze *handle); void wickra_ttm_squeeze_free(struct TtmSqueeze *handle); @@ -12154,6 +13124,8 @@ uintptr_t wickra_value_area_warmup_period(struct ValueArea *handle); bool wickra_value_area_is_ready(struct ValueArea *handle); +const char *wickra_value_area_name(struct ValueArea *handle); + void wickra_value_area_reset(struct ValueArea *handle); void wickra_value_area_free(struct ValueArea *handle); @@ -12173,6 +13145,8 @@ uintptr_t wickra_volatility_cone_warmup_period(struct VolatilityCone *handle); bool wickra_volatility_cone_is_ready(struct VolatilityCone *handle); +const char *wickra_volatility_cone_name(struct VolatilityCone *handle); + void wickra_volatility_cone_reset(struct VolatilityCone *handle); void wickra_volatility_cone_free(struct VolatilityCone *handle); @@ -12194,6 +13168,8 @@ uintptr_t wickra_volume_weighted_macd_warmup_period(struct VolumeWeightedMacd *h bool wickra_volume_weighted_macd_is_ready(struct VolumeWeightedMacd *handle); +const char *wickra_volume_weighted_macd_name(struct VolumeWeightedMacd *handle); + void wickra_volume_weighted_macd_reset(struct VolumeWeightedMacd *handle); void wickra_volume_weighted_macd_free(struct VolumeWeightedMacd *handle); @@ -12213,6 +13189,8 @@ uintptr_t wickra_volume_weighted_sr_warmup_period(struct VolumeWeightedSr *handl bool wickra_volume_weighted_sr_is_ready(struct VolumeWeightedSr *handle); +const char *wickra_volume_weighted_sr_name(struct VolumeWeightedSr *handle); + void wickra_volume_weighted_sr_reset(struct VolumeWeightedSr *handle); void wickra_volume_weighted_sr_free(struct VolumeWeightedSr *handle); @@ -12232,6 +13210,8 @@ uintptr_t wickra_vortex_warmup_period(struct Vortex *handle); bool wickra_vortex_is_ready(struct Vortex *handle); +const char *wickra_vortex_name(struct Vortex *handle); + void wickra_vortex_reset(struct Vortex *handle); void wickra_vortex_free(struct Vortex *handle); @@ -12251,6 +13231,8 @@ uintptr_t wickra_vwap_std_dev_bands_warmup_period(struct VwapStdDevBands *handle bool wickra_vwap_std_dev_bands_is_ready(struct VwapStdDevBands *handle); +const char *wickra_vwap_std_dev_bands_name(struct VwapStdDevBands *handle); + void wickra_vwap_std_dev_bands_reset(struct VwapStdDevBands *handle); void wickra_vwap_std_dev_bands_free(struct VwapStdDevBands *handle); @@ -12272,6 +13254,8 @@ uintptr_t wickra_wave_trend_warmup_period(struct WaveTrend *handle); bool wickra_wave_trend_is_ready(struct WaveTrend *handle); +const char *wickra_wave_trend_name(struct WaveTrend *handle); + void wickra_wave_trend_reset(struct WaveTrend *handle); void wickra_wave_trend_free(struct WaveTrend *handle); @@ -12291,6 +13275,8 @@ uintptr_t wickra_williams_fractals_warmup_period(struct WilliamsFractals *handle bool wickra_williams_fractals_is_ready(struct WilliamsFractals *handle); +const char *wickra_williams_fractals_name(struct WilliamsFractals *handle); + void wickra_williams_fractals_reset(struct WilliamsFractals *handle); void wickra_williams_fractals_free(struct WilliamsFractals *handle); @@ -12310,6 +13296,8 @@ uintptr_t wickra_woodie_pivots_warmup_period(struct WoodiePivots *handle); bool wickra_woodie_pivots_is_ready(struct WoodiePivots *handle); +const char *wickra_woodie_pivots_name(struct WoodiePivots *handle); + void wickra_woodie_pivots_reset(struct WoodiePivots *handle); void wickra_woodie_pivots_free(struct WoodiePivots *handle); @@ -12324,6 +13312,8 @@ uintptr_t wickra_zero_lag_macd_warmup_period(struct ZeroLagMacd *handle); bool wickra_zero_lag_macd_is_ready(struct ZeroLagMacd *handle); +const char *wickra_zero_lag_macd_name(struct ZeroLagMacd *handle); + void wickra_zero_lag_macd_reset(struct ZeroLagMacd *handle); void wickra_zero_lag_macd_free(struct ZeroLagMacd *handle); @@ -12343,6 +13333,8 @@ uintptr_t wickra_zig_zag_warmup_period(struct ZigZag *handle); bool wickra_zig_zag_is_ready(struct ZigZag *handle); +const char *wickra_zig_zag_name(struct ZigZag *handle); + void wickra_zig_zag_reset(struct ZigZag *handle); void wickra_zig_zag_free(struct ZigZag *handle); @@ -12363,6 +13355,8 @@ uintptr_t wickra_day_of_week_profile_warmup_period(struct DayOfWeekProfile *hand bool wickra_day_of_week_profile_is_ready(struct DayOfWeekProfile *handle); +const char *wickra_day_of_week_profile_name(struct DayOfWeekProfile *handle); + void wickra_day_of_week_profile_reset(struct DayOfWeekProfile *handle); void wickra_day_of_week_profile_free(struct DayOfWeekProfile *handle); @@ -12384,6 +13378,8 @@ uintptr_t wickra_intraday_volatility_profile_warmup_period(struct IntradayVolati bool wickra_intraday_volatility_profile_is_ready(struct IntradayVolatilityProfile *handle); +const char *wickra_intraday_volatility_profile_name(struct IntradayVolatilityProfile *handle); + void wickra_intraday_volatility_profile_reset(struct IntradayVolatilityProfile *handle); void wickra_intraday_volatility_profile_free(struct IntradayVolatilityProfile *handle); @@ -12405,6 +13401,8 @@ uintptr_t wickra_time_of_day_return_profile_warmup_period(struct TimeOfDayReturn bool wickra_time_of_day_return_profile_is_ready(struct TimeOfDayReturnProfile *handle); +const char *wickra_time_of_day_return_profile_name(struct TimeOfDayReturnProfile *handle); + void wickra_time_of_day_return_profile_reset(struct TimeOfDayReturnProfile *handle); void wickra_time_of_day_return_profile_free(struct TimeOfDayReturnProfile *handle); @@ -12426,6 +13424,8 @@ uintptr_t wickra_tpo_profile_warmup_period(struct TpoProfile *handle); bool wickra_tpo_profile_is_ready(struct TpoProfile *handle); +const char *wickra_tpo_profile_name(struct TpoProfile *handle); + void wickra_tpo_profile_reset(struct TpoProfile *handle); void wickra_tpo_profile_free(struct TpoProfile *handle); @@ -12447,6 +13447,8 @@ uintptr_t wickra_volume_by_time_profile_warmup_period(struct VolumeByTimeProfile bool wickra_volume_by_time_profile_is_ready(struct VolumeByTimeProfile *handle); +const char *wickra_volume_by_time_profile_name(struct VolumeByTimeProfile *handle); + void wickra_volume_by_time_profile_reset(struct VolumeByTimeProfile *handle); void wickra_volume_by_time_profile_free(struct VolumeByTimeProfile *handle); @@ -12468,6 +13470,8 @@ uintptr_t wickra_volume_profile_warmup_period(struct VolumeProfile *handle); bool wickra_volume_profile_is_ready(struct VolumeProfile *handle); +const char *wickra_volume_profile_name(struct VolumeProfile *handle); + void wickra_volume_profile_reset(struct VolumeProfile *handle); void wickra_volume_profile_free(struct VolumeProfile *handle); @@ -12484,6 +13488,8 @@ uintptr_t wickra_dollar_bars_update(struct DollarBars *handle, struct WickraDollarBar *out, uintptr_t cap); +const char *wickra_dollar_bars_name(struct DollarBars *handle); + void wickra_dollar_bars_reset(struct DollarBars *handle); void wickra_dollar_bars_free(struct DollarBars *handle); @@ -12500,6 +13506,8 @@ uintptr_t wickra_imbalance_bars_update(struct ImbalanceBars *handle, struct WickraImbalanceBar *out, uintptr_t cap); +const char *wickra_imbalance_bars_name(struct ImbalanceBars *handle); + void wickra_imbalance_bars_reset(struct ImbalanceBars *handle); void wickra_imbalance_bars_free(struct ImbalanceBars *handle); @@ -12516,6 +13524,8 @@ uintptr_t wickra_kagi_bars_update(struct KagiBars *handle, struct WickraKagiBar *out, uintptr_t cap); +const char *wickra_kagi_bars_name(struct KagiBars *handle); + void wickra_kagi_bars_reset(struct KagiBars *handle); void wickra_kagi_bars_free(struct KagiBars *handle); @@ -12532,6 +13542,8 @@ uintptr_t wickra_point_and_figure_bars_update(struct PointAndFigureBars *handle, struct WickraPnfColumn *out, uintptr_t cap); +const char *wickra_point_and_figure_bars_name(struct PointAndFigureBars *handle); + void wickra_point_and_figure_bars_reset(struct PointAndFigureBars *handle); void wickra_point_and_figure_bars_free(struct PointAndFigureBars *handle); @@ -12548,6 +13560,8 @@ uintptr_t wickra_range_bars_update(struct RangeBars *handle, struct WickraRangeBar *out, uintptr_t cap); +const char *wickra_range_bars_name(struct RangeBars *handle); + void wickra_range_bars_reset(struct RangeBars *handle); void wickra_range_bars_free(struct RangeBars *handle); @@ -12564,6 +13578,8 @@ uintptr_t wickra_renko_bars_update(struct RenkoBars *handle, struct WickraRenkoBrick *out, uintptr_t cap); +const char *wickra_renko_bars_name(struct RenkoBars *handle); + void wickra_renko_bars_reset(struct RenkoBars *handle); void wickra_renko_bars_free(struct RenkoBars *handle); @@ -12580,6 +13596,8 @@ uintptr_t wickra_run_bars_update(struct RunBars *handle, struct WickraRunBar *out, uintptr_t cap); +const char *wickra_run_bars_name(struct RunBars *handle); + void wickra_run_bars_reset(struct RunBars *handle); void wickra_run_bars_free(struct RunBars *handle); @@ -12596,6 +13614,8 @@ uintptr_t wickra_three_line_break_bars_update(struct ThreeLineBreakBars *handle, struct WickraLineBreakBar *out, uintptr_t cap); +const char *wickra_three_line_break_bars_name(struct ThreeLineBreakBars *handle); + void wickra_three_line_break_bars_reset(struct ThreeLineBreakBars *handle); void wickra_three_line_break_bars_free(struct ThreeLineBreakBars *handle); @@ -12612,6 +13632,8 @@ uintptr_t wickra_tick_bars_update(struct TickBars *handle, struct WickraTickBar *out, uintptr_t cap); +const char *wickra_tick_bars_name(struct TickBars *handle); + void wickra_tick_bars_reset(struct TickBars *handle); void wickra_tick_bars_free(struct TickBars *handle); @@ -12628,6 +13650,8 @@ uintptr_t wickra_volume_bars_update(struct VolumeBars *handle, struct WickraVolumeBar *out, uintptr_t cap); +const char *wickra_volume_bars_name(struct VolumeBars *handle); + void wickra_volume_bars_reset(struct VolumeBars *handle); void wickra_volume_bars_free(struct VolumeBars *handle); @@ -12645,6 +13669,8 @@ uintptr_t wickra_macd_ext_warmup_period(struct MacdExt *handle); bool wickra_macd_ext_is_ready(struct MacdExt *handle); +const char *wickra_macd_ext_name(struct MacdExt *handle); + void wickra_macd_ext_reset(struct MacdExt *handle); void wickra_macd_ext_free(struct MacdExt *handle); @@ -12663,6 +13689,8 @@ uintptr_t wickra_footprint_warmup_period(struct Footprint *handle); bool wickra_footprint_is_ready(struct Footprint *handle); +const char *wickra_footprint_name(struct Footprint *handle); + void wickra_footprint_reset(struct Footprint *handle); void wickra_footprint_free(struct Footprint *handle); diff --git a/bindings/go/indicators_gen.go b/bindings/go/indicators_gen.go index 7e76f499..ba37f544 100644 --- a/bindings/go/indicators_gen.go +++ b/bindings/go/indicators_gen.go @@ -791,6 +791,13 @@ func (ind *AbandonedBaby) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AbandonedBaby) Name() string { + r := C.GoString(C.wickra_abandoned_baby_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AbandonedBaby) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -882,6 +889,13 @@ func (ind *Abcd) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Abcd) Name() string { + r := C.GoString(C.wickra_abcd_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Abcd) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -973,6 +987,13 @@ func (ind *AbsoluteBreadthIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AbsoluteBreadthIndex) Name() string { + r := C.GoString(C.wickra_absolute_breadth_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *AbsoluteBreadthIndex) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -1051,6 +1072,13 @@ func (ind *AccelerationBands) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AccelerationBands) Name() string { + r := C.GoString(C.wickra_acceleration_bands_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *AccelerationBands) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (AccelerationBandsOutput, bool) { @@ -1112,6 +1140,13 @@ func (ind *AcceleratorOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AcceleratorOscillator) Name() string { + r := C.GoString(C.wickra_accelerator_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AcceleratorOscillator) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -1203,6 +1238,13 @@ func (ind *AdOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AdOscillator) Name() string { + r := C.GoString(C.wickra_ad_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AdOscillator) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -1294,6 +1336,13 @@ func (ind *AdVolumeLine) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AdVolumeLine) Name() string { + r := C.GoString(C.wickra_ad_volume_line_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *AdVolumeLine) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -1372,6 +1421,13 @@ func (ind *AdaptiveCci) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AdaptiveCci) Name() string { + r := C.GoString(C.wickra_adaptive_cci_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AdaptiveCci) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -1463,6 +1519,13 @@ func (ind *AdaptiveCycle) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AdaptiveCycle) Name() string { + r := C.GoString(C.wickra_adaptive_cycle_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AdaptiveCycle) Update(value float64) float64 { @@ -1534,6 +1597,13 @@ func (ind *AdaptiveLaguerreFilter) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AdaptiveLaguerreFilter) Name() string { + r := C.GoString(C.wickra_adaptive_laguerre_filter_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AdaptiveLaguerreFilter) Update(value float64) float64 { @@ -1605,6 +1675,13 @@ func (ind *AdaptiveRsi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AdaptiveRsi) Name() string { + r := C.GoString(C.wickra_adaptive_rsi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AdaptiveRsi) Update(value float64) float64 { @@ -1676,6 +1753,13 @@ func (ind *Adl) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Adl) Name() string { + r := C.GoString(C.wickra_adl_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Adl) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -1767,6 +1851,13 @@ func (ind *AdvanceBlock) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AdvanceBlock) Name() string { + r := C.GoString(C.wickra_advance_block_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AdvanceBlock) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -1858,6 +1949,13 @@ func (ind *AdvanceDecline) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AdvanceDecline) Name() string { + r := C.GoString(C.wickra_advance_decline_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *AdvanceDecline) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -1936,6 +2034,13 @@ func (ind *AdvanceDeclineRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AdvanceDeclineRatio) Name() string { + r := C.GoString(C.wickra_advance_decline_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *AdvanceDeclineRatio) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -2014,6 +2119,13 @@ func (ind *Adx) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Adx) Name() string { + r := C.GoString(C.wickra_adx_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Adx) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (AdxOutput, bool) { @@ -2075,6 +2187,13 @@ func (ind *Adxr) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Adxr) Name() string { + r := C.GoString(C.wickra_adxr_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Adxr) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -2166,6 +2285,13 @@ func (ind *Alligator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Alligator) Name() string { + r := C.GoString(C.wickra_alligator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Alligator) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (AlligatorOutput, bool) { @@ -2227,6 +2353,13 @@ func (ind *Alma) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Alma) Name() string { + r := C.GoString(C.wickra_alma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Alma) Update(value float64) float64 { @@ -2298,6 +2431,13 @@ func (ind *Alpha) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Alpha) Name() string { + r := C.GoString(C.wickra_alpha_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Alpha) Update(x float64, y float64) float64 { @@ -2373,6 +2513,13 @@ func (ind *AmihudIlliquidity) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AmihudIlliquidity) Name() string { + r := C.GoString(C.wickra_amihud_illiquidity_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AmihudIlliquidity) Update(price float64, size float64, isBuy bool, timestamp int64) float64 { @@ -2430,6 +2577,13 @@ func (ind *AnchoredRsi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AnchoredRsi) Name() string { + r := C.GoString(C.wickra_anchored_rsi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AnchoredRsi) Update(value float64) float64 { @@ -2501,6 +2655,13 @@ func (ind *AnchoredVwap) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AnchoredVwap) Name() string { + r := C.GoString(C.wickra_anchored_vwap_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AnchoredVwap) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -2592,6 +2753,13 @@ func (ind *AndrewsPitchfork) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AndrewsPitchfork) Name() string { + r := C.GoString(C.wickra_andrews_pitchfork_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *AndrewsPitchfork) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (AndrewsPitchforkOutput, bool) { @@ -2653,6 +2821,13 @@ func (ind *Apo) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Apo) Name() string { + r := C.GoString(C.wickra_apo_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Apo) Update(value float64) float64 { @@ -2724,6 +2899,13 @@ func (ind *Aroon) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Aroon) Name() string { + r := C.GoString(C.wickra_aroon_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Aroon) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (AroonOutput, bool) { @@ -2785,6 +2967,13 @@ func (ind *AroonOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AroonOscillator) Name() string { + r := C.GoString(C.wickra_aroon_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AroonOscillator) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -2876,6 +3065,13 @@ func (ind *Atr) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Atr) Name() string { + r := C.GoString(C.wickra_atr_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Atr) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -2967,6 +3163,13 @@ func (ind *AtrBands) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AtrBands) Name() string { + r := C.GoString(C.wickra_atr_bands_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *AtrBands) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (AtrBandsOutput, bool) { @@ -3028,6 +3231,13 @@ func (ind *AtrRatchet) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AtrRatchet) Name() string { + r := C.GoString(C.wickra_atr_ratchet_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *AtrRatchet) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (AtrRatchetOutput, bool) { @@ -3089,6 +3299,13 @@ func (ind *AtrTrailingStop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AtrTrailingStop) Name() string { + r := C.GoString(C.wickra_atr_trailing_stop_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AtrTrailingStop) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -3180,6 +3397,13 @@ func (ind *AutoFib) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AutoFib) Name() string { + r := C.GoString(C.wickra_auto_fib_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *AutoFib) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (AutoFibOutput, bool) { @@ -3241,6 +3465,13 @@ func (ind *Autocorrelation) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Autocorrelation) Name() string { + r := C.GoString(C.wickra_autocorrelation_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Autocorrelation) Update(value float64) float64 { @@ -3312,6 +3543,13 @@ func (ind *AutocorrelationPeriodogram) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AutocorrelationPeriodogram) Name() string { + r := C.GoString(C.wickra_autocorrelation_periodogram_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AutocorrelationPeriodogram) Update(value float64) float64 { @@ -3383,6 +3621,13 @@ func (ind *AverageDailyRange) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AverageDailyRange) Name() string { + r := C.GoString(C.wickra_average_daily_range_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AverageDailyRange) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -3474,6 +3719,13 @@ func (ind *AverageDrawdown) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AverageDrawdown) Name() string { + r := C.GoString(C.wickra_average_drawdown_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AverageDrawdown) Update(value float64) float64 { @@ -3545,6 +3797,13 @@ func (ind *AvgPrice) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AvgPrice) Name() string { + r := C.GoString(C.wickra_avg_price_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AvgPrice) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -3636,6 +3895,13 @@ func (ind *AwesomeOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AwesomeOscillator) Name() string { + r := C.GoString(C.wickra_awesome_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AwesomeOscillator) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -3701,8 +3967,8 @@ type AwesomeOscillatorHistogram struct { // NewAwesomeOscillatorHistogram constructs a AwesomeOscillatorHistogram. It returns ErrInvalidParams when the // native constructor rejects the arguments. -func NewAwesomeOscillatorHistogram(fast int, slow int, smaPeriod int) (*AwesomeOscillatorHistogram, error) { - ptr := C.wickra_awesome_oscillator_histogram_new(C.uintptr_t(fast), C.uintptr_t(slow), C.uintptr_t(smaPeriod)) +func NewAwesomeOscillatorHistogram(fast int, slow int, lookback int) (*AwesomeOscillatorHistogram, error) { + ptr := C.wickra_awesome_oscillator_histogram_new(C.uintptr_t(fast), C.uintptr_t(slow), C.uintptr_t(lookback)) if ptr == nil { return nil, ErrInvalidParams } @@ -3727,6 +3993,13 @@ func (ind *AwesomeOscillatorHistogram) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *AwesomeOscillatorHistogram) Name() string { + r := C.GoString(C.wickra_awesome_oscillator_histogram_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *AwesomeOscillatorHistogram) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -3818,6 +4091,13 @@ func (ind *BalanceOfPower) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BalanceOfPower) Name() string { + r := C.GoString(C.wickra_balance_of_power_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *BalanceOfPower) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -3909,6 +4189,13 @@ func (ind *BandpassFilter) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BandpassFilter) Name() string { + r := C.GoString(C.wickra_bandpass_filter_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *BandpassFilter) Update(value float64) float64 { @@ -3980,6 +4267,13 @@ func (ind *Bat) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Bat) Name() string { + r := C.GoString(C.wickra_bat_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Bat) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -4071,6 +4365,13 @@ func (ind *BeltHold) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BeltHold) Name() string { + r := C.GoString(C.wickra_belt_hold_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *BeltHold) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -4162,6 +4463,13 @@ func (ind *Beta) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Beta) Name() string { + r := C.GoString(C.wickra_beta_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Beta) Update(x float64, y float64) float64 { @@ -4237,6 +4545,13 @@ func (ind *BetaNeutralSpread) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BetaNeutralSpread) Name() string { + r := C.GoString(C.wickra_beta_neutral_spread_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *BetaNeutralSpread) Update(x float64, y float64) float64 { @@ -4312,6 +4627,13 @@ func (ind *BetterVolume) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BetterVolume) Name() string { + r := C.GoString(C.wickra_better_volume_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *BetterVolume) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -4403,6 +4725,13 @@ func (ind *BipowerVariation) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BipowerVariation) Name() string { + r := C.GoString(C.wickra_bipower_variation_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *BipowerVariation) Update(value float64) float64 { @@ -4474,6 +4803,13 @@ func (ind *BodySizePct) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BodySizePct) Name() string { + r := C.GoString(C.wickra_body_size_pct_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *BodySizePct) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -4565,6 +4901,13 @@ func (ind *BollingerBands) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BollingerBands) Name() string { + r := C.GoString(C.wickra_bollinger_bands_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *BollingerBands) Update(value float64) (BollingerOutput, bool) { @@ -4626,6 +4969,13 @@ func (ind *BollingerBandwidth) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BollingerBandwidth) Name() string { + r := C.GoString(C.wickra_bollinger_bandwidth_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *BollingerBandwidth) Update(value float64) float64 { @@ -4697,6 +5047,13 @@ func (ind *BomarBands) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BomarBands) Name() string { + r := C.GoString(C.wickra_bomar_bands_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *BomarBands) Update(value float64) (BomarBandsOutput, bool) { @@ -4758,6 +5115,13 @@ func (ind *BreadthThrust) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BreadthThrust) Name() string { + r := C.GoString(C.wickra_breadth_thrust_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *BreadthThrust) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -4836,6 +5200,13 @@ func (ind *Breakaway) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Breakaway) Name() string { + r := C.GoString(C.wickra_breakaway_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Breakaway) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -4927,6 +5298,13 @@ func (ind *BullishPercentIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BullishPercentIndex) Name() string { + r := C.GoString(C.wickra_bullish_percent_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *BullishPercentIndex) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -5005,6 +5383,13 @@ func (ind *BurkeRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *BurkeRatio) Name() string { + r := C.GoString(C.wickra_burke_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *BurkeRatio) Update(value float64) float64 { @@ -5076,6 +5461,13 @@ func (ind *Butterfly) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Butterfly) Name() string { + r := C.GoString(C.wickra_butterfly_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Butterfly) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -5167,6 +5559,13 @@ func (ind *CalendarSpread) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CalendarSpread) Name() string { + r := C.GoString(C.wickra_calendar_spread_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *CalendarSpread) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -5224,6 +5623,13 @@ func (ind *CalmarRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CalmarRatio) Name() string { + r := C.GoString(C.wickra_calmar_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *CalmarRatio) Update(value float64) float64 { @@ -5295,6 +5701,13 @@ func (ind *Camarilla) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Camarilla) Name() string { + r := C.GoString(C.wickra_camarilla_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Camarilla) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (CamarillaPivotsOutput, bool) { @@ -5356,6 +5769,13 @@ func (ind *CandleVolume) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CandleVolume) Name() string { + r := C.GoString(C.wickra_candle_volume_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *CandleVolume) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (CandleVolumeOutput, bool) { @@ -5417,6 +5837,13 @@ func (ind *Cci) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Cci) Name() string { + r := C.GoString(C.wickra_cci_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Cci) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -5508,6 +5935,13 @@ func (ind *CenterOfGravity) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CenterOfGravity) Name() string { + r := C.GoString(C.wickra_center_of_gravity_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *CenterOfGravity) Update(value float64) float64 { @@ -5579,6 +6013,13 @@ func (ind *CentralPivotRange) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CentralPivotRange) Name() string { + r := C.GoString(C.wickra_central_pivot_range_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *CentralPivotRange) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (CentralPivotRangeOutput, bool) { @@ -5640,6 +6081,13 @@ func (ind *Cfo) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Cfo) Name() string { + r := C.GoString(C.wickra_cfo_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Cfo) Update(value float64) float64 { @@ -5711,6 +6159,13 @@ func (ind *ChaikinMoneyFlow) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ChaikinMoneyFlow) Name() string { + r := C.GoString(C.wickra_chaikin_money_flow_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ChaikinMoneyFlow) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -5802,6 +6257,13 @@ func (ind *ChaikinOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ChaikinOscillator) Name() string { + r := C.GoString(C.wickra_chaikin_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ChaikinOscillator) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -5893,6 +6355,13 @@ func (ind *ChaikinVolatility) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ChaikinVolatility) Name() string { + r := C.GoString(C.wickra_chaikin_volatility_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ChaikinVolatility) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -5984,6 +6453,13 @@ func (ind *ChandeKrollStop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ChandeKrollStop) Name() string { + r := C.GoString(C.wickra_chande_kroll_stop_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *ChandeKrollStop) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (ChandeKrollStopOutput, bool) { @@ -6045,6 +6521,13 @@ func (ind *ChandelierExit) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ChandelierExit) Name() string { + r := C.GoString(C.wickra_chandelier_exit_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *ChandelierExit) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (ChandelierExitOutput, bool) { @@ -6106,6 +6589,13 @@ func (ind *ChoppinessIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ChoppinessIndex) Name() string { + r := C.GoString(C.wickra_choppiness_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ChoppinessIndex) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -6197,6 +6687,13 @@ func (ind *ClassicPivots) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ClassicPivots) Name() string { + r := C.GoString(C.wickra_classic_pivots_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *ClassicPivots) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (ClassicPivotsOutput, bool) { @@ -6258,6 +6755,13 @@ func (ind *CloseVsOpen) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CloseVsOpen) Name() string { + r := C.GoString(C.wickra_close_vs_open_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *CloseVsOpen) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -6349,6 +6853,13 @@ func (ind *ClosingMarubozu) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ClosingMarubozu) Name() string { + r := C.GoString(C.wickra_closing_marubozu_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ClosingMarubozu) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -6440,6 +6951,13 @@ func (ind *Cmo) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Cmo) Name() string { + r := C.GoString(C.wickra_cmo_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Cmo) Update(value float64) float64 { @@ -6511,6 +7029,13 @@ func (ind *CoefficientOfVariation) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CoefficientOfVariation) Name() string { + r := C.GoString(C.wickra_coefficient_of_variation_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *CoefficientOfVariation) Update(value float64) float64 { @@ -6582,6 +7107,13 @@ func (ind *Cointegration) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Cointegration) Name() string { + r := C.GoString(C.wickra_cointegration_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Cointegration) Update(x float64, y float64) (CointegrationOutput, bool) { @@ -6643,6 +7175,13 @@ func (ind *CommonSenseRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CommonSenseRatio) Name() string { + r := C.GoString(C.wickra_common_sense_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *CommonSenseRatio) Update(value float64) float64 { @@ -6714,6 +7253,13 @@ func (ind *CompositeProfile) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CompositeProfile) Name() string { + r := C.GoString(C.wickra_composite_profile_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *CompositeProfile) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (CompositeProfileOutput, bool) { @@ -6775,6 +7321,13 @@ func (ind *ConcealingBabySwallow) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ConcealingBabySwallow) Name() string { + r := C.GoString(C.wickra_concealing_baby_swallow_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ConcealingBabySwallow) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -6866,6 +7419,13 @@ func (ind *ConditionalValueAtRisk) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ConditionalValueAtRisk) Name() string { + r := C.GoString(C.wickra_conditional_value_at_risk_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ConditionalValueAtRisk) Update(value float64) float64 { @@ -6937,6 +7497,13 @@ func (ind *ConnorsRsi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ConnorsRsi) Name() string { + r := C.GoString(C.wickra_connors_rsi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ConnorsRsi) Update(value float64) float64 { @@ -7008,6 +7575,13 @@ func (ind *Coppock) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Coppock) Name() string { + r := C.GoString(C.wickra_coppock_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Coppock) Update(value float64) float64 { @@ -7079,6 +7653,13 @@ func (ind *CorrelationTrendIndicator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CorrelationTrendIndicator) Name() string { + r := C.GoString(C.wickra_correlation_trend_indicator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *CorrelationTrendIndicator) Update(value float64) float64 { @@ -7150,6 +7731,13 @@ func (ind *Counterattack) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Counterattack) Name() string { + r := C.GoString(C.wickra_counterattack_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Counterattack) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -7241,6 +7829,13 @@ func (ind *Crab) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Crab) Name() string { + r := C.GoString(C.wickra_crab_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Crab) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -7332,6 +7927,13 @@ func (ind *CumulativeVolumeDelta) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CumulativeVolumeDelta) Name() string { + r := C.GoString(C.wickra_cumulative_volume_delta_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *CumulativeVolumeDelta) Update(price float64, size float64, isBuy bool, timestamp int64) float64 { @@ -7389,6 +7991,13 @@ func (ind *CumulativeVolumeIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CumulativeVolumeIndex) Name() string { + r := C.GoString(C.wickra_cumulative_volume_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *CumulativeVolumeIndex) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -7467,6 +8076,13 @@ func (ind *CupAndHandle) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CupAndHandle) Name() string { + r := C.GoString(C.wickra_cup_and_handle_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *CupAndHandle) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -7558,6 +8174,13 @@ func (ind *CyberneticCycle) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *CyberneticCycle) Name() string { + r := C.GoString(C.wickra_cybernetic_cycle_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *CyberneticCycle) Update(value float64) float64 { @@ -7629,6 +8252,13 @@ func (ind *Cypher) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Cypher) Name() string { + r := C.GoString(C.wickra_cypher_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Cypher) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -7722,6 +8352,13 @@ func (ind *DayOfWeekProfile) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DayOfWeekProfile) Name() string { + r := C.GoString(C.wickra_day_of_week_profile_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the profile values // (ok is false during warmup). func (ind *DayOfWeekProfile) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) ([]float64, bool) { @@ -7783,6 +8420,13 @@ func (ind *Decycler) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Decycler) Name() string { + r := C.GoString(C.wickra_decycler_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Decycler) Update(value float64) float64 { @@ -7854,6 +8498,13 @@ func (ind *DecyclerOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DecyclerOscillator) Name() string { + r := C.GoString(C.wickra_decycler_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DecyclerOscillator) Update(value float64) float64 { @@ -7925,6 +8576,13 @@ func (ind *Dema) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Dema) Name() string { + r := C.GoString(C.wickra_dema_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Dema) Update(value float64) float64 { @@ -7996,6 +8654,13 @@ func (ind *DemandIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DemandIndex) Name() string { + r := C.GoString(C.wickra_demand_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DemandIndex) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -8087,6 +8752,13 @@ func (ind *DemarkPivots) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DemarkPivots) Name() string { + r := C.GoString(C.wickra_demark_pivots_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *DemarkPivots) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (DemarkPivotsOutput, bool) { @@ -8148,6 +8820,13 @@ func (ind *DepthSlope) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DepthSlope) Name() string { + r := C.GoString(C.wickra_depth_slope_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *DepthSlope) Update(bidPrice []float64, bidSize []float64, askPrice []float64, askSize []float64) float64 { @@ -8215,6 +8894,13 @@ func (ind *DerivativeOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DerivativeOscillator) Name() string { + r := C.GoString(C.wickra_derivative_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DerivativeOscillator) Update(value float64) float64 { @@ -8286,6 +8972,13 @@ func (ind *DetrendedStdDev) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DetrendedStdDev) Name() string { + r := C.GoString(C.wickra_detrended_std_dev_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DetrendedStdDev) Update(value float64) float64 { @@ -8357,6 +9050,13 @@ func (ind *DisparityIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DisparityIndex) Name() string { + r := C.GoString(C.wickra_disparity_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DisparityIndex) Update(value float64) float64 { @@ -8428,6 +9128,13 @@ func (ind *DistanceSsd) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DistanceSsd) Name() string { + r := C.GoString(C.wickra_distance_ssd_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DistanceSsd) Update(x float64, y float64) float64 { @@ -8503,6 +9210,13 @@ func (ind *Doji) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Doji) Name() string { + r := C.GoString(C.wickra_doji_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Doji) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -8594,6 +9308,13 @@ func (ind *DojiStar) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DojiStar) Name() string { + r := C.GoString(C.wickra_doji_star_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DojiStar) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -8669,6 +9390,13 @@ func NewDollarBars(dollarPerBar float64) (*DollarBars, error) { return obj, nil } +// Name returns the indicator's canonical name. +func (ind *DollarBars) Name() string { + r := C.GoString(C.wickra_dollar_bars_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one candle and returns any bars completed by it // (a single candle may complete several). func (ind *DollarBars) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) []DollarBar { @@ -8735,6 +9463,13 @@ func (ind *Donchian) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Donchian) Name() string { + r := C.GoString(C.wickra_donchian_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Donchian) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (DonchianOutput, bool) { @@ -8796,6 +9531,13 @@ func (ind *DonchianStop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DonchianStop) Name() string { + r := C.GoString(C.wickra_donchian_stop_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *DonchianStop) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (DonchianStopOutput, bool) { @@ -8857,6 +9599,13 @@ func (ind *DoubleBollinger) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DoubleBollinger) Name() string { + r := C.GoString(C.wickra_double_bollinger_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *DoubleBollinger) Update(value float64) (DoubleBollingerOutput, bool) { @@ -8918,6 +9667,13 @@ func (ind *DoubleTopBottom) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DoubleTopBottom) Name() string { + r := C.GoString(C.wickra_double_top_bottom_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DoubleTopBottom) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -9009,6 +9765,13 @@ func (ind *DownsideGapThreeMethods) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DownsideGapThreeMethods) Name() string { + r := C.GoString(C.wickra_downside_gap_three_methods_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DownsideGapThreeMethods) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -9100,6 +9863,13 @@ func (ind *Dpo) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Dpo) Name() string { + r := C.GoString(C.wickra_dpo_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Dpo) Update(value float64) float64 { @@ -9171,6 +9941,13 @@ func (ind *DragonflyDoji) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DragonflyDoji) Name() string { + r := C.GoString(C.wickra_dragonfly_doji_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DragonflyDoji) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -9262,6 +10039,13 @@ func (ind *DrawdownDuration) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DrawdownDuration) Name() string { + r := C.GoString(C.wickra_drawdown_duration_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DrawdownDuration) Update(value float64) float64 { @@ -9333,6 +10117,13 @@ func (ind *DumplingTop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DumplingTop) Name() string { + r := C.GoString(C.wickra_dumpling_top_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DumplingTop) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -9424,6 +10215,13 @@ func (ind *Dx) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Dx) Name() string { + r := C.GoString(C.wickra_dx_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Dx) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -9515,6 +10313,13 @@ func (ind *DynamicMomentumIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *DynamicMomentumIndex) Name() string { + r := C.GoString(C.wickra_dynamic_momentum_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *DynamicMomentumIndex) Update(value float64) float64 { @@ -9586,6 +10391,13 @@ func (ind *EaseOfMovement) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *EaseOfMovement) Name() string { + r := C.GoString(C.wickra_ease_of_movement_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *EaseOfMovement) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -9677,6 +10489,13 @@ func (ind *EffectiveSpread) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *EffectiveSpread) Name() string { + r := C.GoString(C.wickra_effective_spread_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *EffectiveSpread) Update(price float64, size float64, isBuy bool, timestamp int64, mid float64) float64 { @@ -9734,6 +10553,13 @@ func (ind *EhlersStochastic) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *EhlersStochastic) Name() string { + r := C.GoString(C.wickra_ehlers_stochastic_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *EhlersStochastic) Update(value float64) float64 { @@ -9805,6 +10631,13 @@ func (ind *Ehma) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Ehma) Name() string { + r := C.GoString(C.wickra_ehma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Ehma) Update(value float64) float64 { @@ -9876,6 +10709,13 @@ func (ind *ElderImpulse) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ElderImpulse) Name() string { + r := C.GoString(C.wickra_elder_impulse_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ElderImpulse) Update(value float64) float64 { @@ -9947,6 +10787,13 @@ func (ind *ElderRay) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ElderRay) Name() string { + r := C.GoString(C.wickra_elder_ray_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *ElderRay) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (ElderRayOutput, bool) { @@ -10008,6 +10855,13 @@ func (ind *ElderSafeZone) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ElderSafeZone) Name() string { + r := C.GoString(C.wickra_elder_safe_zone_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *ElderSafeZone) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (ElderSafeZoneOutput, bool) { @@ -10069,6 +10923,13 @@ func (ind *Ema) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Ema) Name() string { + r := C.GoString(C.wickra_ema_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Ema) Update(value float64) float64 { @@ -10140,6 +11001,13 @@ func (ind *EmpiricalModeDecomposition) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *EmpiricalModeDecomposition) Name() string { + r := C.GoString(C.wickra_empirical_mode_decomposition_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *EmpiricalModeDecomposition) Update(value float64) float64 { @@ -10211,6 +11079,13 @@ func (ind *Engulfing) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Engulfing) Name() string { + r := C.GoString(C.wickra_engulfing_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Engulfing) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -10302,6 +11177,13 @@ func (ind *Equivolume) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Equivolume) Name() string { + r := C.GoString(C.wickra_equivolume_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Equivolume) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (EquivolumeOutput, bool) { @@ -10363,6 +11245,13 @@ func (ind *EstimatedLeverageRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *EstimatedLeverageRatio) Name() string { + r := C.GoString(C.wickra_estimated_leverage_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *EstimatedLeverageRatio) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -10420,6 +11309,13 @@ func (ind *EvenBetterSinewave) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *EvenBetterSinewave) Name() string { + r := C.GoString(C.wickra_even_better_sinewave_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *EvenBetterSinewave) Update(value float64) float64 { @@ -10491,6 +11387,13 @@ func (ind *EveningDojiStar) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *EveningDojiStar) Name() string { + r := C.GoString(C.wickra_evening_doji_star_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *EveningDojiStar) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -10582,6 +11485,13 @@ func (ind *Evwma) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Evwma) Name() string { + r := C.GoString(C.wickra_evwma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Evwma) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -10673,6 +11583,13 @@ func (ind *EwmaVolatility) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *EwmaVolatility) Name() string { + r := C.GoString(C.wickra_ewma_volatility_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *EwmaVolatility) Update(value float64) float64 { @@ -10744,6 +11661,13 @@ func (ind *Expectancy) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Expectancy) Name() string { + r := C.GoString(C.wickra_expectancy_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Expectancy) Update(value float64) float64 { @@ -10815,6 +11739,13 @@ func (ind *FallingThreeMethods) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FallingThreeMethods) Name() string { + r := C.GoString(C.wickra_falling_three_methods_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *FallingThreeMethods) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -10906,6 +11837,13 @@ func (ind *Fama) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Fama) Name() string { + r := C.GoString(C.wickra_fama_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Fama) Update(value float64) float64 { @@ -10977,6 +11915,13 @@ func (ind *FibArcs) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FibArcs) Name() string { + r := C.GoString(C.wickra_fib_arcs_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *FibArcs) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (FibArcsOutput, bool) { @@ -11038,6 +11983,13 @@ func (ind *FibChannel) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FibChannel) Name() string { + r := C.GoString(C.wickra_fib_channel_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *FibChannel) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (FibChannelOutput, bool) { @@ -11099,6 +12051,13 @@ func (ind *FibConfluence) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FibConfluence) Name() string { + r := C.GoString(C.wickra_fib_confluence_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *FibConfluence) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (FibConfluenceOutput, bool) { @@ -11160,6 +12119,13 @@ func (ind *FibExtension) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FibExtension) Name() string { + r := C.GoString(C.wickra_fib_extension_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *FibExtension) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (FibExtensionOutput, bool) { @@ -11221,6 +12187,13 @@ func (ind *FibFan) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FibFan) Name() string { + r := C.GoString(C.wickra_fib_fan_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *FibFan) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (FibFanOutput, bool) { @@ -11282,6 +12255,13 @@ func (ind *FibProjection) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FibProjection) Name() string { + r := C.GoString(C.wickra_fib_projection_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *FibProjection) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (FibProjectionOutput, bool) { @@ -11343,6 +12323,13 @@ func (ind *FibRetracement) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FibRetracement) Name() string { + r := C.GoString(C.wickra_fib_retracement_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *FibRetracement) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (FibRetracementOutput, bool) { @@ -11404,6 +12391,13 @@ func (ind *FibTimeZones) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FibTimeZones) Name() string { + r := C.GoString(C.wickra_fib_time_zones_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *FibTimeZones) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (FibTimeZonesOutput, bool) { @@ -11465,6 +12459,13 @@ func (ind *FibonacciPivots) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FibonacciPivots) Name() string { + r := C.GoString(C.wickra_fibonacci_pivots_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *FibonacciPivots) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (FibonacciPivotsOutput, bool) { @@ -11526,6 +12527,13 @@ func (ind *FisherRsi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FisherRsi) Name() string { + r := C.GoString(C.wickra_fisher_rsi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *FisherRsi) Update(value float64) float64 { @@ -11597,6 +12605,13 @@ func (ind *FisherTransform) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FisherTransform) Name() string { + r := C.GoString(C.wickra_fisher_transform_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *FisherTransform) Update(value float64) float64 { @@ -11668,6 +12683,13 @@ func (ind *FlagPennant) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FlagPennant) Name() string { + r := C.GoString(C.wickra_flag_pennant_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *FlagPennant) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -11759,6 +12781,13 @@ func (ind *Footprint) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Footprint) Name() string { + r := C.GoString(C.wickra_footprint_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one candle and returns any bars completed by it // (a single candle may complete several). func (ind *Footprint) Update(price float64, size float64, isBuy bool, timestamp int64) []FootprintLevel { @@ -11825,6 +12854,13 @@ func (ind *ForceIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ForceIndex) Name() string { + r := C.GoString(C.wickra_force_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ForceIndex) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -11916,6 +12952,13 @@ func (ind *FractalChaosBands) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FractalChaosBands) Name() string { + r := C.GoString(C.wickra_fractal_chaos_bands_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *FractalChaosBands) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (FractalChaosBandsOutput, bool) { @@ -11977,6 +13020,13 @@ func (ind *Frama) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Frama) Name() string { + r := C.GoString(C.wickra_frama_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Frama) Update(value float64) float64 { @@ -12048,6 +13098,13 @@ func (ind *FryPanBottom) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FryPanBottom) Name() string { + r := C.GoString(C.wickra_fry_pan_bottom_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *FryPanBottom) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -12139,6 +13196,13 @@ func (ind *FundingBasis) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FundingBasis) Name() string { + r := C.GoString(C.wickra_funding_basis_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *FundingBasis) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -12196,6 +13260,13 @@ func (ind *FundingImpliedApr) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FundingImpliedApr) Name() string { + r := C.GoString(C.wickra_funding_implied_apr_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *FundingImpliedApr) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -12253,6 +13324,13 @@ func (ind *FundingRate) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FundingRate) Name() string { + r := C.GoString(C.wickra_funding_rate_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *FundingRate) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -12310,6 +13388,13 @@ func (ind *FundingRateMean) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FundingRateMean) Name() string { + r := C.GoString(C.wickra_funding_rate_mean_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *FundingRateMean) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -12367,6 +13452,13 @@ func (ind *FundingRateZScore) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *FundingRateZScore) Name() string { + r := C.GoString(C.wickra_funding_rate_z_score_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *FundingRateZScore) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -12424,6 +13516,13 @@ func (ind *GainLossRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *GainLossRatio) Name() string { + r := C.GoString(C.wickra_gain_loss_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *GainLossRatio) Update(value float64) float64 { @@ -12495,6 +13594,13 @@ func (ind *GainToPainRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *GainToPainRatio) Name() string { + r := C.GoString(C.wickra_gain_to_pain_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *GainToPainRatio) Update(value float64) float64 { @@ -12566,6 +13672,13 @@ func (ind *GapSideBySideWhite) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *GapSideBySideWhite) Name() string { + r := C.GoString(C.wickra_gap_side_by_side_white_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *GapSideBySideWhite) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -12657,6 +13770,13 @@ func (ind *Garch11) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Garch11) Name() string { + r := C.GoString(C.wickra_garch11_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Garch11) Update(value float64) float64 { @@ -12728,6 +13848,13 @@ func (ind *GarmanKlassVolatility) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *GarmanKlassVolatility) Name() string { + r := C.GoString(C.wickra_garman_klass_volatility_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *GarmanKlassVolatility) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -12819,6 +13946,13 @@ func (ind *Gartley) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Gartley) Name() string { + r := C.GoString(C.wickra_gartley_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Gartley) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -12910,6 +14044,13 @@ func (ind *GatorOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *GatorOscillator) Name() string { + r := C.GoString(C.wickra_gator_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *GatorOscillator) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (GatorOscillatorOutput, bool) { @@ -12971,6 +14112,13 @@ func (ind *GeneralizedDema) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *GeneralizedDema) Name() string { + r := C.GoString(C.wickra_generalized_dema_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *GeneralizedDema) Update(value float64) float64 { @@ -13042,6 +14190,13 @@ func (ind *GeometricMa) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *GeometricMa) Name() string { + r := C.GoString(C.wickra_geometric_ma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *GeometricMa) Update(value float64) float64 { @@ -13113,6 +14268,13 @@ func (ind *GoldenPocket) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *GoldenPocket) Name() string { + r := C.GoString(C.wickra_golden_pocket_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *GoldenPocket) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (GoldenPocketOutput, bool) { @@ -13174,6 +14336,13 @@ func (ind *GrangerCausality) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *GrangerCausality) Name() string { + r := C.GoString(C.wickra_granger_causality_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *GrangerCausality) Update(x float64, y float64) float64 { @@ -13249,6 +14418,13 @@ func (ind *GravestoneDoji) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *GravestoneDoji) Name() string { + r := C.GoString(C.wickra_gravestone_doji_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *GravestoneDoji) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -13340,6 +14516,13 @@ func (ind *Hammer) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Hammer) Name() string { + r := C.GoString(C.wickra_hammer_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Hammer) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -13431,6 +14614,13 @@ func (ind *HangingMan) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HangingMan) Name() string { + r := C.GoString(C.wickra_hanging_man_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HangingMan) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -13522,6 +14712,13 @@ func (ind *Harami) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Harami) Name() string { + r := C.GoString(C.wickra_harami_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Harami) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -13613,6 +14810,13 @@ func (ind *HaramiCross) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HaramiCross) Name() string { + r := C.GoString(C.wickra_harami_cross_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HaramiCross) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -13704,6 +14908,13 @@ func (ind *HasbrouckInformationShare) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HasbrouckInformationShare) Name() string { + r := C.GoString(C.wickra_hasbrouck_information_share_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HasbrouckInformationShare) Update(x float64, y float64) float64 { @@ -13779,6 +14990,13 @@ func (ind *HeadAndShoulders) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HeadAndShoulders) Name() string { + r := C.GoString(C.wickra_head_and_shoulders_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HeadAndShoulders) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -13870,6 +15088,13 @@ func (ind *HeikinAshi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HeikinAshi) Name() string { + r := C.GoString(C.wickra_heikin_ashi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *HeikinAshi) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (HeikinAshiOutput, bool) { @@ -13931,6 +15156,13 @@ func (ind *HeikinAshiOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HeikinAshiOscillator) Name() string { + r := C.GoString(C.wickra_heikin_ashi_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HeikinAshiOscillator) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -14022,6 +15254,13 @@ func (ind *HiLoActivator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HiLoActivator) Name() string { + r := C.GoString(C.wickra_hi_lo_activator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HiLoActivator) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -14113,6 +15352,13 @@ func (ind *HighLowIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HighLowIndex) Name() string { + r := C.GoString(C.wickra_high_low_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *HighLowIndex) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -14191,6 +15437,13 @@ func (ind *HighLowRange) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HighLowRange) Name() string { + r := C.GoString(C.wickra_high_low_range_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HighLowRange) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -14282,6 +15535,13 @@ func (ind *HighLowVolumeNodes) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HighLowVolumeNodes) Name() string { + r := C.GoString(C.wickra_high_low_volume_nodes_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *HighLowVolumeNodes) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (HighLowVolumeNodesOutput, bool) { @@ -14343,6 +15603,13 @@ func (ind *HighWave) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HighWave) Name() string { + r := C.GoString(C.wickra_high_wave_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HighWave) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -14434,6 +15701,13 @@ func (ind *HighpassFilter) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HighpassFilter) Name() string { + r := C.GoString(C.wickra_highpass_filter_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HighpassFilter) Update(value float64) float64 { @@ -14505,6 +15779,13 @@ func (ind *Hikkake) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Hikkake) Name() string { + r := C.GoString(C.wickra_hikkake_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Hikkake) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -14596,6 +15877,13 @@ func (ind *HikkakeModified) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HikkakeModified) Name() string { + r := C.GoString(C.wickra_hikkake_modified_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HikkakeModified) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -14687,6 +15975,13 @@ func (ind *HilbertDominantCycle) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HilbertDominantCycle) Name() string { + r := C.GoString(C.wickra_hilbert_dominant_cycle_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HilbertDominantCycle) Update(value float64) float64 { @@ -14758,6 +16053,13 @@ func (ind *HistoricalVolatility) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HistoricalVolatility) Name() string { + r := C.GoString(C.wickra_historical_volatility_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HistoricalVolatility) Update(value float64) float64 { @@ -14829,6 +16131,13 @@ func (ind *Hma) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Hma) Name() string { + r := C.GoString(C.wickra_hma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Hma) Update(value float64) float64 { @@ -14900,6 +16209,13 @@ func (ind *HoltWinters) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HoltWinters) Name() string { + r := C.GoString(C.wickra_holt_winters_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HoltWinters) Update(value float64) float64 { @@ -14971,6 +16287,13 @@ func (ind *HomingPigeon) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HomingPigeon) Name() string { + r := C.GoString(C.wickra_homing_pigeon_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HomingPigeon) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -15062,6 +16385,13 @@ func (ind *HtDcPhase) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HtDcPhase) Name() string { + r := C.GoString(C.wickra_ht_dc_phase_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HtDcPhase) Update(value float64) float64 { @@ -15133,6 +16463,13 @@ func (ind *HtPhasor) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HtPhasor) Name() string { + r := C.GoString(C.wickra_ht_phasor_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *HtPhasor) Update(value float64) (HtPhasorOutput, bool) { @@ -15194,6 +16531,13 @@ func (ind *HtTrendMode) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HtTrendMode) Name() string { + r := C.GoString(C.wickra_ht_trend_mode_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HtTrendMode) Update(value float64) float64 { @@ -15265,6 +16609,13 @@ func (ind *HurstChannel) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HurstChannel) Name() string { + r := C.GoString(C.wickra_hurst_channel_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *HurstChannel) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (HurstChannelOutput, bool) { @@ -15326,6 +16677,13 @@ func (ind *HurstExponent) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *HurstExponent) Name() string { + r := C.GoString(C.wickra_hurst_exponent_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *HurstExponent) Update(value float64) float64 { @@ -15397,6 +16755,13 @@ func (ind *Ichimoku) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Ichimoku) Name() string { + r := C.GoString(C.wickra_ichimoku_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Ichimoku) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (IchimokuOutput, bool) { @@ -15458,6 +16823,13 @@ func (ind *IdenticalThreeCrows) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *IdenticalThreeCrows) Name() string { + r := C.GoString(C.wickra_identical_three_crows_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *IdenticalThreeCrows) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -15533,6 +16905,13 @@ func NewImbalanceBars(threshold float64) (*ImbalanceBars, error) { return obj, nil } +// Name returns the indicator's canonical name. +func (ind *ImbalanceBars) Name() string { + r := C.GoString(C.wickra_imbalance_bars_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one candle and returns any bars completed by it // (a single candle may complete several). func (ind *ImbalanceBars) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) []ImbalanceBar { @@ -15599,6 +16978,13 @@ func (ind *InNeck) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *InNeck) Name() string { + r := C.GoString(C.wickra_in_neck_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *InNeck) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -15690,6 +17076,13 @@ func (ind *Inertia) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Inertia) Name() string { + r := C.GoString(C.wickra_inertia_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Inertia) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -15781,6 +17174,13 @@ func (ind *InformationRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *InformationRatio) Name() string { + r := C.GoString(C.wickra_information_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *InformationRatio) Update(x float64, y float64) float64 { @@ -15856,6 +17256,13 @@ func (ind *InitialBalance) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *InitialBalance) Name() string { + r := C.GoString(C.wickra_initial_balance_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *InitialBalance) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (InitialBalanceOutput, bool) { @@ -15917,6 +17324,13 @@ func (ind *InstantaneousTrendline) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *InstantaneousTrendline) Name() string { + r := C.GoString(C.wickra_instantaneous_trendline_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *InstantaneousTrendline) Update(value float64) float64 { @@ -15988,6 +17402,13 @@ func (ind *IntradayIntensity) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *IntradayIntensity) Name() string { + r := C.GoString(C.wickra_intraday_intensity_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *IntradayIntensity) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -16079,6 +17500,13 @@ func (ind *IntradayMomentumIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *IntradayMomentumIndex) Name() string { + r := C.GoString(C.wickra_intraday_momentum_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *IntradayMomentumIndex) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -16172,6 +17600,13 @@ func (ind *IntradayVolatilityProfile) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *IntradayVolatilityProfile) Name() string { + r := C.GoString(C.wickra_intraday_volatility_profile_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the profile values // (ok is false during warmup). func (ind *IntradayVolatilityProfile) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) ([]float64, bool) { @@ -16233,6 +17668,13 @@ func (ind *InverseFisherTransform) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *InverseFisherTransform) Name() string { + r := C.GoString(C.wickra_inverse_fisher_transform_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *InverseFisherTransform) Update(value float64) float64 { @@ -16304,6 +17746,13 @@ func (ind *InvertedHammer) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *InvertedHammer) Name() string { + r := C.GoString(C.wickra_inverted_hammer_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *InvertedHammer) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -16395,6 +17844,13 @@ func (ind *JarqueBera) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *JarqueBera) Name() string { + r := C.GoString(C.wickra_jarque_bera_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *JarqueBera) Update(value float64) float64 { @@ -16466,6 +17922,13 @@ func (ind *Jma) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Jma) Name() string { + r := C.GoString(C.wickra_jma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Jma) Update(value float64) float64 { @@ -16537,6 +18000,13 @@ func (ind *JumpIndicator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *JumpIndicator) Name() string { + r := C.GoString(C.wickra_jump_indicator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *JumpIndicator) Update(value float64) float64 { @@ -16608,6 +18078,13 @@ func (ind *KRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *KRatio) Name() string { + r := C.GoString(C.wickra_k_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *KRatio) Update(value float64) float64 { @@ -16663,6 +18140,13 @@ func NewKagiBars(reversal float64) (*KagiBars, error) { return obj, nil } +// Name returns the indicator's canonical name. +func (ind *KagiBars) Name() string { + r := C.GoString(C.wickra_kagi_bars_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one candle and returns any bars completed by it // (a single candle may complete several). func (ind *KagiBars) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) []KagiBar { @@ -16729,6 +18213,13 @@ func (ind *KalmanHedgeRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *KalmanHedgeRatio) Name() string { + r := C.GoString(C.wickra_kalman_hedge_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *KalmanHedgeRatio) Update(x float64, y float64) (KalmanHedgeRatioOutput, bool) { @@ -16790,6 +18281,13 @@ func (ind *Kama) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Kama) Name() string { + r := C.GoString(C.wickra_kama_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Kama) Update(value float64) float64 { @@ -16861,6 +18359,13 @@ func (ind *KaseDevStop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *KaseDevStop) Name() string { + r := C.GoString(C.wickra_kase_dev_stop_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *KaseDevStop) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (KaseDevStopOutput, bool) { @@ -16922,6 +18427,13 @@ func (ind *KasePermissionStochastic) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *KasePermissionStochastic) Name() string { + r := C.GoString(C.wickra_kase_permission_stochastic_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *KasePermissionStochastic) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (KasePermissionStochasticOutput, bool) { @@ -16983,6 +18495,13 @@ func (ind *KellyCriterion) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *KellyCriterion) Name() string { + r := C.GoString(C.wickra_kelly_criterion_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *KellyCriterion) Update(value float64) float64 { @@ -17054,6 +18573,13 @@ func (ind *Keltner) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Keltner) Name() string { + r := C.GoString(C.wickra_keltner_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Keltner) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (KeltnerOutput, bool) { @@ -17115,6 +18641,13 @@ func (ind *KendallTau) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *KendallTau) Name() string { + r := C.GoString(C.wickra_kendall_tau_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *KendallTau) Update(x float64, y float64) float64 { @@ -17190,6 +18723,13 @@ func (ind *Kicking) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Kicking) Name() string { + r := C.GoString(C.wickra_kicking_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Kicking) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -17281,6 +18821,13 @@ func (ind *KickingByLength) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *KickingByLength) Name() string { + r := C.GoString(C.wickra_kicking_by_length_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *KickingByLength) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -17372,6 +18919,13 @@ func (ind *Kst) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Kst) Name() string { + r := C.GoString(C.wickra_kst_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Kst) Update(value float64) (KstOutput, bool) { @@ -17433,6 +18987,13 @@ func (ind *Kurtosis) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Kurtosis) Name() string { + r := C.GoString(C.wickra_kurtosis_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Kurtosis) Update(value float64) float64 { @@ -17504,6 +19065,13 @@ func (ind *Kvo) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Kvo) Name() string { + r := C.GoString(C.wickra_kvo_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Kvo) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -17595,6 +19163,13 @@ func (ind *KylesLambda) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *KylesLambda) Name() string { + r := C.GoString(C.wickra_kyles_lambda_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *KylesLambda) Update(price float64, size float64, isBuy bool, timestamp int64, mid float64) float64 { @@ -17652,6 +19227,13 @@ func (ind *LadderBottom) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LadderBottom) Name() string { + r := C.GoString(C.wickra_ladder_bottom_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *LadderBottom) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -17743,6 +19325,13 @@ func (ind *LaguerreRsi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LaguerreRsi) Name() string { + r := C.GoString(C.wickra_laguerre_rsi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *LaguerreRsi) Update(value float64) float64 { @@ -17814,6 +19403,13 @@ func (ind *LeadLagCrossCorrelation) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LeadLagCrossCorrelation) Name() string { + r := C.GoString(C.wickra_lead_lag_cross_correlation_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *LeadLagCrossCorrelation) Update(x float64, y float64) (LeadLagCrossCorrelationOutput, bool) { @@ -17875,6 +19471,13 @@ func (ind *LinRegAngle) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LinRegAngle) Name() string { + r := C.GoString(C.wickra_lin_reg_angle_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *LinRegAngle) Update(value float64) float64 { @@ -17946,6 +19549,13 @@ func (ind *LinRegChannel) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LinRegChannel) Name() string { + r := C.GoString(C.wickra_lin_reg_channel_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *LinRegChannel) Update(value float64) (LinRegChannelOutput, bool) { @@ -18007,6 +19617,13 @@ func (ind *LinRegIntercept) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LinRegIntercept) Name() string { + r := C.GoString(C.wickra_lin_reg_intercept_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *LinRegIntercept) Update(value float64) float64 { @@ -18078,6 +19695,13 @@ func (ind *LinRegSlope) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LinRegSlope) Name() string { + r := C.GoString(C.wickra_lin_reg_slope_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *LinRegSlope) Update(value float64) float64 { @@ -18149,6 +19773,13 @@ func (ind *LinearRegression) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LinearRegression) Name() string { + r := C.GoString(C.wickra_linear_regression_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *LinearRegression) Update(value float64) float64 { @@ -18220,6 +19851,13 @@ func (ind *LiquidationFeatures) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LiquidationFeatures) Name() string { + r := C.GoString(C.wickra_liquidation_features_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *LiquidationFeatures) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) (LiquidationFeaturesOutput, bool) { @@ -18281,6 +19919,13 @@ func (ind *LogReturn) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LogReturn) Name() string { + r := C.GoString(C.wickra_log_return_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *LogReturn) Update(value float64) float64 { @@ -18352,6 +19997,13 @@ func (ind *LongLeggedDoji) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LongLeggedDoji) Name() string { + r := C.GoString(C.wickra_long_legged_doji_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *LongLeggedDoji) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -18443,6 +20095,13 @@ func (ind *LongLine) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LongLine) Name() string { + r := C.GoString(C.wickra_long_line_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *LongLine) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -18534,6 +20193,13 @@ func (ind *LongShortRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *LongShortRatio) Name() string { + r := C.GoString(C.wickra_long_short_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *LongShortRatio) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -18591,6 +20257,13 @@ func (ind *M2Measure) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *M2Measure) Name() string { + r := C.GoString(C.wickra_m2_measure_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *M2Measure) Update(value float64) float64 { @@ -18662,6 +20335,13 @@ func (ind *MaEnvelope) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MaEnvelope) Name() string { + r := C.GoString(C.wickra_ma_envelope_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *MaEnvelope) Update(value float64) (MaEnvelopeOutput, bool) { @@ -18723,6 +20403,13 @@ func (ind *MacdExt) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MacdExt) Name() string { + r := C.GoString(C.wickra_macd_ext_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *MacdExt) Update(value float64) (MacdOutput, bool) { @@ -18784,6 +20471,13 @@ func (ind *MacdFix) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MacdFix) Name() string { + r := C.GoString(C.wickra_macd_fix_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *MacdFix) Update(value float64) (MacdOutput, bool) { @@ -18845,6 +20539,13 @@ func (ind *MacdHistogram) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MacdHistogram) Name() string { + r := C.GoString(C.wickra_macd_histogram_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MacdHistogram) Update(value float64) float64 { @@ -18916,6 +20617,13 @@ func (ind *MacdIndicator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MacdIndicator) Name() string { + r := C.GoString(C.wickra_macd_indicator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *MacdIndicator) Update(value float64) (MacdOutput, bool) { @@ -18977,6 +20685,13 @@ func (ind *Mama) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Mama) Name() string { + r := C.GoString(C.wickra_mama_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Mama) Update(value float64) (MamaOutput, bool) { @@ -19038,6 +20753,13 @@ func (ind *MarketFacilitationIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MarketFacilitationIndex) Name() string { + r := C.GoString(C.wickra_market_facilitation_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MarketFacilitationIndex) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -19129,6 +20851,13 @@ func (ind *MartinRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MartinRatio) Name() string { + r := C.GoString(C.wickra_martin_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MartinRatio) Update(value float64) float64 { @@ -19200,6 +20929,13 @@ func (ind *Marubozu) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Marubozu) Name() string { + r := C.GoString(C.wickra_marubozu_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Marubozu) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -19291,6 +21027,13 @@ func (ind *MassIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MassIndex) Name() string { + r := C.GoString(C.wickra_mass_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MassIndex) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -19382,6 +21125,13 @@ func (ind *MatHold) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MatHold) Name() string { + r := C.GoString(C.wickra_mat_hold_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MatHold) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -19473,6 +21223,13 @@ func (ind *MatchingLow) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MatchingLow) Name() string { + r := C.GoString(C.wickra_matching_low_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MatchingLow) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -19564,6 +21321,13 @@ func (ind *MaxDrawdown) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MaxDrawdown) Name() string { + r := C.GoString(C.wickra_max_drawdown_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MaxDrawdown) Update(value float64) float64 { @@ -19635,6 +21399,13 @@ func (ind *McClellanOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *McClellanOscillator) Name() string { + r := C.GoString(C.wickra_mc_clellan_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *McClellanOscillator) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -19713,6 +21484,13 @@ func (ind *McClellanSummationIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *McClellanSummationIndex) Name() string { + r := C.GoString(C.wickra_mc_clellan_summation_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *McClellanSummationIndex) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -19791,6 +21569,13 @@ func (ind *McGinleyDynamic) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *McGinleyDynamic) Name() string { + r := C.GoString(C.wickra_mc_ginley_dynamic_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *McGinleyDynamic) Update(value float64) float64 { @@ -19862,6 +21647,13 @@ func (ind *MedianAbsoluteDeviation) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MedianAbsoluteDeviation) Name() string { + r := C.GoString(C.wickra_median_absolute_deviation_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MedianAbsoluteDeviation) Update(value float64) float64 { @@ -19933,6 +21725,13 @@ func (ind *MedianChannel) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MedianChannel) Name() string { + r := C.GoString(C.wickra_median_channel_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *MedianChannel) Update(value float64) (MedianChannelOutput, bool) { @@ -19994,6 +21793,13 @@ func (ind *MedianMa) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MedianMa) Name() string { + r := C.GoString(C.wickra_median_ma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MedianMa) Update(value float64) float64 { @@ -20065,6 +21871,13 @@ func (ind *MedianPrice) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MedianPrice) Name() string { + r := C.GoString(C.wickra_median_price_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MedianPrice) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -20156,6 +21969,13 @@ func (ind *Mfi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Mfi) Name() string { + r := C.GoString(C.wickra_mfi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Mfi) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -20247,6 +22067,13 @@ func (ind *Microprice) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Microprice) Name() string { + r := C.GoString(C.wickra_microprice_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *Microprice) Update(bidPrice []float64, bidSize []float64, askPrice []float64, askSize []float64) float64 { @@ -20314,6 +22141,13 @@ func (ind *MidPoint) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MidPoint) Name() string { + r := C.GoString(C.wickra_mid_point_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MidPoint) Update(value float64) float64 { @@ -20385,6 +22219,13 @@ func (ind *MidPrice) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MidPrice) Name() string { + r := C.GoString(C.wickra_mid_price_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MidPrice) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -20476,6 +22317,13 @@ func (ind *MinusDi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MinusDi) Name() string { + r := C.GoString(C.wickra_minus_di_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MinusDi) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -20567,6 +22415,13 @@ func (ind *MinusDm) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MinusDm) Name() string { + r := C.GoString(C.wickra_minus_dm_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MinusDm) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -20658,6 +22513,13 @@ func (ind *ModifiedMaStop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ModifiedMaStop) Name() string { + r := C.GoString(C.wickra_modified_ma_stop_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *ModifiedMaStop) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (ModifiedMaStopOutput, bool) { @@ -20719,6 +22581,13 @@ func (ind *Mom) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Mom) Name() string { + r := C.GoString(C.wickra_mom_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Mom) Update(value float64) float64 { @@ -20790,6 +22659,13 @@ func (ind *MorningDojiStar) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MorningDojiStar) Name() string { + r := C.GoString(C.wickra_morning_doji_star_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MorningDojiStar) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -20881,6 +22757,13 @@ func (ind *MorningEveningStar) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MorningEveningStar) Name() string { + r := C.GoString(C.wickra_morning_evening_star_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *MorningEveningStar) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -20972,6 +22855,13 @@ func (ind *MurreyMathLines) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *MurreyMathLines) Name() string { + r := C.GoString(C.wickra_murrey_math_lines_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *MurreyMathLines) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (MurreyMathLinesOutput, bool) { @@ -21033,6 +22923,13 @@ func (ind *NakedPoc) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *NakedPoc) Name() string { + r := C.GoString(C.wickra_naked_poc_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *NakedPoc) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -21124,6 +23021,13 @@ func (ind *Natr) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Natr) Name() string { + r := C.GoString(C.wickra_natr_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Natr) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -21215,6 +23119,13 @@ func (ind *NewHighsNewLows) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *NewHighsNewLows) Name() string { + r := C.GoString(C.wickra_new_highs_new_lows_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *NewHighsNewLows) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -21293,6 +23204,13 @@ func (ind *NewPriceLines) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *NewPriceLines) Name() string { + r := C.GoString(C.wickra_new_price_lines_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *NewPriceLines) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -21384,6 +23302,13 @@ func (ind *Nrtr) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Nrtr) Name() string { + r := C.GoString(C.wickra_nrtr_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Nrtr) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (NrtrOutput, bool) { @@ -21445,6 +23370,13 @@ func (ind *Nvi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Nvi) Name() string { + r := C.GoString(C.wickra_nvi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Nvi) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -21536,6 +23468,13 @@ func (ind *Obv) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Obv) Name() string { + r := C.GoString(C.wickra_obv_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Obv) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -21627,6 +23566,13 @@ func (ind *OIPriceDivergence) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OIPriceDivergence) Name() string { + r := C.GoString(C.wickra_oi_price_divergence_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *OIPriceDivergence) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -21684,6 +23630,13 @@ func (ind *OiToVolumeRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OiToVolumeRatio) Name() string { + r := C.GoString(C.wickra_oi_to_volume_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *OiToVolumeRatio) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -21741,6 +23694,13 @@ func (ind *OIWeighted) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OIWeighted) Name() string { + r := C.GoString(C.wickra_oi_weighted_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *OIWeighted) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -21798,6 +23758,13 @@ func (ind *OmegaRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OmegaRatio) Name() string { + r := C.GoString(C.wickra_omega_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *OmegaRatio) Update(value float64) float64 { @@ -21869,6 +23836,13 @@ func (ind *OnNeck) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OnNeck) Name() string { + r := C.GoString(C.wickra_on_neck_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *OnNeck) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -21960,6 +23934,13 @@ func (ind *OpenInterestDelta) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OpenInterestDelta) Name() string { + r := C.GoString(C.wickra_open_interest_delta_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *OpenInterestDelta) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -22017,6 +23998,13 @@ func (ind *OpenInterestMomentum) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OpenInterestMomentum) Name() string { + r := C.GoString(C.wickra_open_interest_momentum_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *OpenInterestMomentum) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -22074,6 +24062,13 @@ func (ind *OpeningMarubozu) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OpeningMarubozu) Name() string { + r := C.GoString(C.wickra_opening_marubozu_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *OpeningMarubozu) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -22165,6 +24160,13 @@ func (ind *OpeningRange) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OpeningRange) Name() string { + r := C.GoString(C.wickra_opening_range_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *OpeningRange) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (OpeningRangeOutput, bool) { @@ -22226,6 +24228,13 @@ func (ind *OrderBookImbalanceFull) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OrderBookImbalanceFull) Name() string { + r := C.GoString(C.wickra_order_book_imbalance_full_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *OrderBookImbalanceFull) Update(bidPrice []float64, bidSize []float64, askPrice []float64, askSize []float64) float64 { @@ -22293,6 +24302,13 @@ func (ind *OrderBookImbalanceTop1) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OrderBookImbalanceTop1) Name() string { + r := C.GoString(C.wickra_order_book_imbalance_top1_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *OrderBookImbalanceTop1) Update(bidPrice []float64, bidSize []float64, askPrice []float64, askSize []float64) float64 { @@ -22360,6 +24376,13 @@ func (ind *OrderBookImbalanceTopN) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OrderBookImbalanceTopN) Name() string { + r := C.GoString(C.wickra_order_book_imbalance_top_n_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *OrderBookImbalanceTopN) Update(bidPrice []float64, bidSize []float64, askPrice []float64, askSize []float64) float64 { @@ -22427,6 +24450,13 @@ func (ind *OrderFlowImbalance) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OrderFlowImbalance) Name() string { + r := C.GoString(C.wickra_order_flow_imbalance_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *OrderFlowImbalance) Update(bidPrice []float64, bidSize []float64, askPrice []float64, askSize []float64) float64 { @@ -22494,6 +24524,13 @@ func (ind *OuHalfLife) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OuHalfLife) Name() string { + r := C.GoString(C.wickra_ou_half_life_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *OuHalfLife) Update(x float64, y float64) float64 { @@ -22569,6 +24606,13 @@ func (ind *OvernightGap) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OvernightGap) Name() string { + r := C.GoString(C.wickra_overnight_gap_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *OvernightGap) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -22660,6 +24704,13 @@ func (ind *OvernightIntradayReturn) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *OvernightIntradayReturn) Name() string { + r := C.GoString(C.wickra_overnight_intraday_return_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *OvernightIntradayReturn) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (OvernightIntradayReturnOutput, bool) { @@ -22721,6 +24772,13 @@ func (ind *PainIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PainIndex) Name() string { + r := C.GoString(C.wickra_pain_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PainIndex) Update(value float64) float64 { @@ -22792,6 +24850,13 @@ func (ind *PairSpreadZScore) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PairSpreadZScore) Name() string { + r := C.GoString(C.wickra_pair_spread_z_score_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PairSpreadZScore) Update(x float64, y float64) float64 { @@ -22867,6 +24932,13 @@ func (ind *PairwiseBeta) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PairwiseBeta) Name() string { + r := C.GoString(C.wickra_pairwise_beta_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PairwiseBeta) Update(x float64, y float64) float64 { @@ -22942,6 +25014,13 @@ func (ind *ParkinsonVolatility) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ParkinsonVolatility) Name() string { + r := C.GoString(C.wickra_parkinson_volatility_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ParkinsonVolatility) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -23033,6 +25112,13 @@ func (ind *PearsonCorrelation) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PearsonCorrelation) Name() string { + r := C.GoString(C.wickra_pearson_correlation_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PearsonCorrelation) Update(x float64, y float64) float64 { @@ -23108,6 +25194,13 @@ func (ind *PercentAboveMa) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PercentAboveMa) Name() string { + r := C.GoString(C.wickra_percent_above_ma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *PercentAboveMa) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -23186,6 +25279,13 @@ func (ind *PercentB) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PercentB) Name() string { + r := C.GoString(C.wickra_percent_b_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PercentB) Update(value float64) float64 { @@ -23257,6 +25357,13 @@ func (ind *PercentageTrailingStop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PercentageTrailingStop) Name() string { + r := C.GoString(C.wickra_percentage_trailing_stop_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PercentageTrailingStop) Update(value float64) float64 { @@ -23328,6 +25435,13 @@ func (ind *PerpetualPremiumIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PerpetualPremiumIndex) Name() string { + r := C.GoString(C.wickra_perpetual_premium_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PerpetualPremiumIndex) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -23385,6 +25499,13 @@ func (ind *Pgo) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Pgo) Name() string { + r := C.GoString(C.wickra_pgo_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Pgo) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -23476,6 +25597,13 @@ func (ind *PiercingDarkCloud) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PiercingDarkCloud) Name() string { + r := C.GoString(C.wickra_piercing_dark_cloud_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PiercingDarkCloud) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -23567,6 +25695,13 @@ func (ind *Pin) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Pin) Name() string { + r := C.GoString(C.wickra_pin_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Pin) Update(price float64, size float64, isBuy bool, timestamp int64) float64 { @@ -23624,6 +25759,13 @@ func (ind *PivotReversal) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PivotReversal) Name() string { + r := C.GoString(C.wickra_pivot_reversal_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PivotReversal) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -23715,6 +25857,13 @@ func (ind *PlusDi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PlusDi) Name() string { + r := C.GoString(C.wickra_plus_di_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PlusDi) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -23806,6 +25955,13 @@ func (ind *PlusDm) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PlusDm) Name() string { + r := C.GoString(C.wickra_plus_dm_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PlusDm) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -23897,6 +26053,13 @@ func (ind *Pmo) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Pmo) Name() string { + r := C.GoString(C.wickra_pmo_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Pmo) Update(value float64) float64 { @@ -23952,6 +26115,13 @@ func NewPointAndFigureBars(boxSize float64, reversal int) (*PointAndFigureBars, return obj, nil } +// Name returns the indicator's canonical name. +func (ind *PointAndFigureBars) Name() string { + r := C.GoString(C.wickra_point_and_figure_bars_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one candle and returns any bars completed by it // (a single candle may complete several). func (ind *PointAndFigureBars) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) []PnfColumn { @@ -24018,6 +26188,13 @@ func (ind *PolarizedFractalEfficiency) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PolarizedFractalEfficiency) Name() string { + r := C.GoString(C.wickra_polarized_fractal_efficiency_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PolarizedFractalEfficiency) Update(value float64) float64 { @@ -24089,6 +26266,13 @@ func (ind *Ppo) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Ppo) Name() string { + r := C.GoString(C.wickra_ppo_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Ppo) Update(value float64) float64 { @@ -24160,6 +26344,13 @@ func (ind *PpoHistogram) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *PpoHistogram) Name() string { + r := C.GoString(C.wickra_ppo_histogram_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *PpoHistogram) Update(value float64) float64 { @@ -24231,6 +26422,13 @@ func (ind *ProfileShape) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ProfileShape) Name() string { + r := C.GoString(C.wickra_profile_shape_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ProfileShape) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -24322,6 +26520,13 @@ func (ind *ProfitFactor) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ProfitFactor) Name() string { + r := C.GoString(C.wickra_profit_factor_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ProfitFactor) Update(value float64) float64 { @@ -24393,6 +26598,13 @@ func (ind *ProjectionBands) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ProjectionBands) Name() string { + r := C.GoString(C.wickra_projection_bands_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *ProjectionBands) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (ProjectionBandsOutput, bool) { @@ -24454,6 +26666,13 @@ func (ind *ProjectionOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ProjectionOscillator) Name() string { + r := C.GoString(C.wickra_projection_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ProjectionOscillator) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -24545,6 +26764,13 @@ func (ind *Psar) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Psar) Name() string { + r := C.GoString(C.wickra_psar_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Psar) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -24636,6 +26862,13 @@ func (ind *Pvi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Pvi) Name() string { + r := C.GoString(C.wickra_pvi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Pvi) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -24727,6 +26960,13 @@ func (ind *Qqe) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Qqe) Name() string { + r := C.GoString(C.wickra_qqe_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Qqe) Update(value float64) (QqeOutput, bool) { @@ -24788,6 +27028,13 @@ func (ind *Qstick) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Qstick) Name() string { + r := C.GoString(C.wickra_qstick_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Qstick) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -24879,6 +27126,13 @@ func (ind *QuartileBands) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *QuartileBands) Name() string { + r := C.GoString(C.wickra_quartile_bands_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *QuartileBands) Update(value float64) (QuartileBandsOutput, bool) { @@ -24940,6 +27194,13 @@ func (ind *QuotedSpread) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *QuotedSpread) Name() string { + r := C.GoString(C.wickra_quoted_spread_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *QuotedSpread) Update(bidPrice []float64, bidSize []float64, askPrice []float64, askSize []float64) float64 { @@ -25007,6 +27268,13 @@ func (ind *RSquared) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RSquared) Name() string { + r := C.GoString(C.wickra_r_squared_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RSquared) Update(value float64) float64 { @@ -25062,6 +27330,13 @@ func NewRangeBars(range_ float64) (*RangeBars, error) { return obj, nil } +// Name returns the indicator's canonical name. +func (ind *RangeBars) Name() string { + r := C.GoString(C.wickra_range_bars_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one candle and returns any bars completed by it // (a single candle may complete several). func (ind *RangeBars) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) []RangeBar { @@ -25128,6 +27403,13 @@ func (ind *RealizedSpread) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RealizedSpread) Name() string { + r := C.GoString(C.wickra_realized_spread_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RealizedSpread) Update(price float64, size float64, isBuy bool, timestamp int64, mid float64) float64 { @@ -25185,6 +27467,13 @@ func (ind *RealizedVolatility) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RealizedVolatility) Name() string { + r := C.GoString(C.wickra_realized_volatility_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RealizedVolatility) Update(value float64) float64 { @@ -25256,6 +27545,13 @@ func (ind *RecoveryFactor) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RecoveryFactor) Name() string { + r := C.GoString(C.wickra_recovery_factor_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RecoveryFactor) Update(value float64) float64 { @@ -25327,6 +27623,13 @@ func (ind *RectangleRange) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RectangleRange) Name() string { + r := C.GoString(C.wickra_rectangle_range_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RectangleRange) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -25418,6 +27721,13 @@ func (ind *Reflex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Reflex) Name() string { + r := C.GoString(C.wickra_reflex_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Reflex) Update(value float64) float64 { @@ -25489,6 +27799,13 @@ func (ind *RegimeLabel) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RegimeLabel) Name() string { + r := C.GoString(C.wickra_regime_label_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RegimeLabel) Update(value float64) float64 { @@ -25560,6 +27877,13 @@ func (ind *RelativeStrengthAB) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RelativeStrengthAB) Name() string { + r := C.GoString(C.wickra_relative_strength_ab_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *RelativeStrengthAB) Update(x float64, y float64) (RelativeStrengthOutput, bool) { @@ -25605,6 +27929,13 @@ func NewRenkoBars(boxSize float64) (*RenkoBars, error) { return obj, nil } +// Name returns the indicator's canonical name. +func (ind *RenkoBars) Name() string { + r := C.GoString(C.wickra_renko_bars_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one candle and returns any bars completed by it // (a single candle may complete several). func (ind *RenkoBars) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) []RenkoBrick { @@ -25671,6 +28002,13 @@ func (ind *RenkoTrailingStop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RenkoTrailingStop) Name() string { + r := C.GoString(C.wickra_renko_trailing_stop_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RenkoTrailingStop) Update(value float64) float64 { @@ -25742,6 +28080,13 @@ func (ind *RickshawMan) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RickshawMan) Name() string { + r := C.GoString(C.wickra_rickshaw_man_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RickshawMan) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -25833,6 +28178,13 @@ func (ind *RisingThreeMethods) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RisingThreeMethods) Name() string { + r := C.GoString(C.wickra_rising_three_methods_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RisingThreeMethods) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -25924,6 +28276,13 @@ func (ind *Rmi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Rmi) Name() string { + r := C.GoString(C.wickra_rmi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Rmi) Update(value float64) float64 { @@ -25995,6 +28354,13 @@ func (ind *Roc) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Roc) Name() string { + r := C.GoString(C.wickra_roc_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Roc) Update(value float64) float64 { @@ -26066,6 +28432,13 @@ func (ind *Rocp) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Rocp) Name() string { + r := C.GoString(C.wickra_rocp_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Rocp) Update(value float64) float64 { @@ -26137,6 +28510,13 @@ func (ind *Rocr) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Rocr) Name() string { + r := C.GoString(C.wickra_rocr_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Rocr) Update(value float64) float64 { @@ -26208,6 +28588,13 @@ func (ind *Rocr100) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Rocr100) Name() string { + r := C.GoString(C.wickra_rocr100_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Rocr100) Update(value float64) float64 { @@ -26279,6 +28666,13 @@ func (ind *RogersSatchellVolatility) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RogersSatchellVolatility) Name() string { + r := C.GoString(C.wickra_rogers_satchell_volatility_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RogersSatchellVolatility) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -26370,6 +28764,13 @@ func (ind *RollMeasure) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RollMeasure) Name() string { + r := C.GoString(C.wickra_roll_measure_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RollMeasure) Update(price float64, size float64, isBuy bool, timestamp int64) float64 { @@ -26427,6 +28828,13 @@ func (ind *RollingCorrelation) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RollingCorrelation) Name() string { + r := C.GoString(C.wickra_rolling_correlation_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RollingCorrelation) Update(x float64, y float64) float64 { @@ -26502,6 +28910,13 @@ func (ind *RollingCovariance) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RollingCovariance) Name() string { + r := C.GoString(C.wickra_rolling_covariance_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RollingCovariance) Update(x float64, y float64) float64 { @@ -26577,6 +28992,13 @@ func (ind *RollingIqr) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RollingIqr) Name() string { + r := C.GoString(C.wickra_rolling_iqr_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RollingIqr) Update(value float64) float64 { @@ -26648,6 +29070,13 @@ func (ind *RollingMinMaxScaler) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RollingMinMaxScaler) Name() string { + r := C.GoString(C.wickra_rolling_min_max_scaler_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RollingMinMaxScaler) Update(value float64) float64 { @@ -26719,6 +29148,13 @@ func (ind *RollingPercentileRank) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RollingPercentileRank) Name() string { + r := C.GoString(C.wickra_rolling_percentile_rank_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RollingPercentileRank) Update(value float64) float64 { @@ -26790,6 +29226,13 @@ func (ind *RollingQuantile) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RollingQuantile) Name() string { + r := C.GoString(C.wickra_rolling_quantile_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RollingQuantile) Update(value float64) float64 { @@ -26861,6 +29304,13 @@ func (ind *RollingVwap) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RollingVwap) Name() string { + r := C.GoString(C.wickra_rolling_vwap_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RollingVwap) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -26952,6 +29402,13 @@ func (ind *RoofingFilter) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RoofingFilter) Name() string { + r := C.GoString(C.wickra_roofing_filter_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RoofingFilter) Update(value float64) float64 { @@ -27023,6 +29480,13 @@ func (ind *Rsi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Rsi) Name() string { + r := C.GoString(C.wickra_rsi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Rsi) Update(value float64) float64 { @@ -27094,6 +29558,13 @@ func (ind *Rsx) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Rsx) Name() string { + r := C.GoString(C.wickra_rsx_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Rsx) Update(value float64) float64 { @@ -27149,6 +29620,13 @@ func NewRunBars(runLength int) (*RunBars, error) { return obj, nil } +// Name returns the indicator's canonical name. +func (ind *RunBars) Name() string { + r := C.GoString(C.wickra_run_bars_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one candle and returns any bars completed by it // (a single candle may complete several). func (ind *RunBars) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) []RunBar { @@ -27215,6 +29693,13 @@ func (ind *Rvi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Rvi) Name() string { + r := C.GoString(C.wickra_rvi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Rvi) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -27306,6 +29791,13 @@ func (ind *RviVolatility) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *RviVolatility) Name() string { + r := C.GoString(C.wickra_rvi_volatility_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *RviVolatility) Update(value float64) float64 { @@ -27377,6 +29869,13 @@ func (ind *Rwi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Rwi) Name() string { + r := C.GoString(C.wickra_rwi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Rwi) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (RwiOutput, bool) { @@ -27438,6 +29937,13 @@ func (ind *SampleEntropy) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SampleEntropy) Name() string { + r := C.GoString(C.wickra_sample_entropy_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SampleEntropy) Update(value float64) float64 { @@ -27509,6 +30015,13 @@ func (ind *SarExt) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SarExt) Name() string { + r := C.GoString(C.wickra_sar_ext_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SarExt) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -27600,6 +30113,13 @@ func (ind *SeasonalZScore) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SeasonalZScore) Name() string { + r := C.GoString(C.wickra_seasonal_z_score_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SeasonalZScore) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -27691,6 +30211,13 @@ func (ind *SeparatingLines) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SeparatingLines) Name() string { + r := C.GoString(C.wickra_separating_lines_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SeparatingLines) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -27782,6 +30309,13 @@ func (ind *SessionHighLow) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SessionHighLow) Name() string { + r := C.GoString(C.wickra_session_high_low_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *SessionHighLow) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (SessionHighLowOutput, bool) { @@ -27843,6 +30377,13 @@ func (ind *SessionRange) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SessionRange) Name() string { + r := C.GoString(C.wickra_session_range_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *SessionRange) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (SessionRangeOutput, bool) { @@ -27904,6 +30445,13 @@ func (ind *SessionVwap) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SessionVwap) Name() string { + r := C.GoString(C.wickra_session_vwap_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SessionVwap) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -27995,6 +30543,13 @@ func (ind *ShannonEntropy) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ShannonEntropy) Name() string { + r := C.GoString(C.wickra_shannon_entropy_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ShannonEntropy) Update(value float64) float64 { @@ -28066,6 +30621,13 @@ func (ind *Shark) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Shark) Name() string { + r := C.GoString(C.wickra_shark_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Shark) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -28157,6 +30719,13 @@ func (ind *SharpeRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SharpeRatio) Name() string { + r := C.GoString(C.wickra_sharpe_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SharpeRatio) Update(value float64) float64 { @@ -28228,6 +30797,13 @@ func (ind *ShootingStar) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ShootingStar) Name() string { + r := C.GoString(C.wickra_shooting_star_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ShootingStar) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -28319,6 +30895,13 @@ func (ind *ShortLine) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ShortLine) Name() string { + r := C.GoString(C.wickra_short_line_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ShortLine) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -28410,6 +30993,13 @@ func (ind *SignedVolume) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SignedVolume) Name() string { + r := C.GoString(C.wickra_signed_volume_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SignedVolume) Update(price float64, size float64, isBuy bool, timestamp int64) float64 { @@ -28467,6 +31057,13 @@ func (ind *SineWave) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SineWave) Name() string { + r := C.GoString(C.wickra_sine_wave_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SineWave) Update(value float64) float64 { @@ -28538,6 +31135,13 @@ func (ind *SineWeightedMa) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SineWeightedMa) Name() string { + r := C.GoString(C.wickra_sine_weighted_ma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SineWeightedMa) Update(value float64) float64 { @@ -28609,6 +31213,13 @@ func (ind *SinglePrints) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SinglePrints) Name() string { + r := C.GoString(C.wickra_single_prints_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SinglePrints) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -28700,6 +31311,13 @@ func (ind *Skewness) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Skewness) Name() string { + r := C.GoString(C.wickra_skewness_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Skewness) Update(value float64) float64 { @@ -28771,6 +31389,13 @@ func (ind *Sma) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Sma) Name() string { + r := C.GoString(C.wickra_sma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Sma) Update(value float64) float64 { @@ -28842,6 +31467,13 @@ func (ind *Smi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Smi) Name() string { + r := C.GoString(C.wickra_smi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Smi) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -28933,6 +31565,13 @@ func (ind *Smma) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Smma) Name() string { + r := C.GoString(C.wickra_smma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Smma) Update(value float64) float64 { @@ -29004,6 +31643,13 @@ func (ind *SmoothedHeikinAshi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SmoothedHeikinAshi) Name() string { + r := C.GoString(C.wickra_smoothed_heikin_ashi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *SmoothedHeikinAshi) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (SmoothedHeikinAshiOutput, bool) { @@ -29065,6 +31711,13 @@ func (ind *SortinoRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SortinoRatio) Name() string { + r := C.GoString(C.wickra_sortino_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SortinoRatio) Update(value float64) float64 { @@ -29136,6 +31789,13 @@ func (ind *SpearmanCorrelation) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SpearmanCorrelation) Name() string { + r := C.GoString(C.wickra_spearman_correlation_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SpearmanCorrelation) Update(x float64, y float64) float64 { @@ -29211,6 +31871,13 @@ func (ind *SpinningTop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SpinningTop) Name() string { + r := C.GoString(C.wickra_spinning_top_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SpinningTop) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -29302,6 +31969,13 @@ func (ind *SpreadAr1Coefficient) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SpreadAr1Coefficient) Name() string { + r := C.GoString(C.wickra_spread_ar1_coefficient_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SpreadAr1Coefficient) Update(x float64, y float64) float64 { @@ -29377,6 +32051,13 @@ func (ind *SpreadBollingerBands) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SpreadBollingerBands) Name() string { + r := C.GoString(C.wickra_spread_bollinger_bands_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *SpreadBollingerBands) Update(x float64, y float64) (SpreadBollingerBandsOutput, bool) { @@ -29438,6 +32119,13 @@ func (ind *SpreadHurst) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SpreadHurst) Name() string { + r := C.GoString(C.wickra_spread_hurst_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SpreadHurst) Update(x float64, y float64) float64 { @@ -29513,6 +32201,13 @@ func (ind *StalledPattern) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *StalledPattern) Name() string { + r := C.GoString(C.wickra_stalled_pattern_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *StalledPattern) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -29604,6 +32299,13 @@ func (ind *StandardError) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *StandardError) Name() string { + r := C.GoString(C.wickra_standard_error_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *StandardError) Update(value float64) float64 { @@ -29675,6 +32377,13 @@ func (ind *StandardErrorBands) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *StandardErrorBands) Name() string { + r := C.GoString(C.wickra_standard_error_bands_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *StandardErrorBands) Update(value float64) (StandardErrorBandsOutput, bool) { @@ -29736,6 +32445,13 @@ func (ind *StarcBands) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *StarcBands) Name() string { + r := C.GoString(C.wickra_starc_bands_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *StarcBands) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (StarcBandsOutput, bool) { @@ -29797,6 +32513,13 @@ func (ind *Stc) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Stc) Name() string { + r := C.GoString(C.wickra_stc_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Stc) Update(value float64) float64 { @@ -29868,6 +32591,13 @@ func (ind *StdDev) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *StdDev) Name() string { + r := C.GoString(C.wickra_std_dev_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *StdDev) Update(value float64) float64 { @@ -29939,6 +32669,13 @@ func (ind *StepTrailingStop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *StepTrailingStop) Name() string { + r := C.GoString(C.wickra_step_trailing_stop_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *StepTrailingStop) Update(value float64) float64 { @@ -30010,6 +32747,13 @@ func (ind *SterlingRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SterlingRatio) Name() string { + r := C.GoString(C.wickra_sterling_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SterlingRatio) Update(value float64) float64 { @@ -30081,6 +32825,13 @@ func (ind *StickSandwich) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *StickSandwich) Name() string { + r := C.GoString(C.wickra_stick_sandwich_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *StickSandwich) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -30172,6 +32923,13 @@ func (ind *StochRsi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *StochRsi) Name() string { + r := C.GoString(C.wickra_stoch_rsi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *StochRsi) Update(value float64) float64 { @@ -30243,6 +33001,13 @@ func (ind *Stochastic) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Stochastic) Name() string { + r := C.GoString(C.wickra_stochastic_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Stochastic) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (StochasticOutput, bool) { @@ -30304,6 +33069,13 @@ func (ind *StochasticCci) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *StochasticCci) Name() string { + r := C.GoString(C.wickra_stochastic_cci_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *StochasticCci) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -30395,6 +33167,13 @@ func (ind *SuperSmoother) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SuperSmoother) Name() string { + r := C.GoString(C.wickra_super_smoother_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *SuperSmoother) Update(value float64) float64 { @@ -30466,6 +33245,13 @@ func (ind *SuperTrend) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *SuperTrend) Name() string { + r := C.GoString(C.wickra_super_trend_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *SuperTrend) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (SuperTrendOutput, bool) { @@ -30527,6 +33313,13 @@ func (ind *T3) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *T3) Name() string { + r := C.GoString(C.wickra_t3_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *T3) Update(value float64) float64 { @@ -30598,6 +33391,13 @@ func (ind *TailRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TailRatio) Name() string { + r := C.GoString(C.wickra_tail_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TailRatio) Update(value float64) float64 { @@ -30669,6 +33469,13 @@ func (ind *TakerBuySellRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TakerBuySellRatio) Name() string { + r := C.GoString(C.wickra_taker_buy_sell_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TakerBuySellRatio) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -30726,6 +33533,13 @@ func (ind *Takuri) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Takuri) Name() string { + r := C.GoString(C.wickra_takuri_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Takuri) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -30817,6 +33631,13 @@ func (ind *TasukiGap) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TasukiGap) Name() string { + r := C.GoString(C.wickra_tasuki_gap_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TasukiGap) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -30908,6 +33729,13 @@ func (ind *TdCamouflage) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdCamouflage) Name() string { + r := C.GoString(C.wickra_td_camouflage_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdCamouflage) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -30999,6 +33827,13 @@ func (ind *TdClop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdClop) Name() string { + r := C.GoString(C.wickra_td_clop_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdClop) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -31090,6 +33925,13 @@ func (ind *TdClopwin) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdClopwin) Name() string { + r := C.GoString(C.wickra_td_clopwin_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdClopwin) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -31181,6 +34023,13 @@ func (ind *TdCombo) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdCombo) Name() string { + r := C.GoString(C.wickra_td_combo_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdCombo) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -31272,6 +34121,13 @@ func (ind *TdCountdown) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdCountdown) Name() string { + r := C.GoString(C.wickra_td_countdown_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdCountdown) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -31363,6 +34219,13 @@ func (ind *TdDWave) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdDWave) Name() string { + r := C.GoString(C.wickra_td_d_wave_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdDWave) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -31454,6 +34317,13 @@ func (ind *TdDeMarker) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdDeMarker) Name() string { + r := C.GoString(C.wickra_td_de_marker_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdDeMarker) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -31545,6 +34415,13 @@ func (ind *TdDifferential) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdDifferential) Name() string { + r := C.GoString(C.wickra_td_differential_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdDifferential) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -31636,6 +34513,13 @@ func (ind *TdLines) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdLines) Name() string { + r := C.GoString(C.wickra_td_lines_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *TdLines) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (TdLinesOutput, bool) { @@ -31697,6 +34581,13 @@ func (ind *TdMovingAverage) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdMovingAverage) Name() string { + r := C.GoString(C.wickra_td_moving_average_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *TdMovingAverage) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (TdMovingAverageOutput, bool) { @@ -31758,6 +34649,13 @@ func (ind *TdOpen) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdOpen) Name() string { + r := C.GoString(C.wickra_td_open_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdOpen) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -31849,6 +34747,13 @@ func (ind *TdPressure) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdPressure) Name() string { + r := C.GoString(C.wickra_td_pressure_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdPressure) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -31940,6 +34845,13 @@ func (ind *TdPropulsion) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdPropulsion) Name() string { + r := C.GoString(C.wickra_td_propulsion_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdPropulsion) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -32031,6 +34943,13 @@ func (ind *TdRangeProjection) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdRangeProjection) Name() string { + r := C.GoString(C.wickra_td_range_projection_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *TdRangeProjection) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (TdRangeProjectionOutput, bool) { @@ -32092,6 +35011,13 @@ func (ind *TdRei) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdRei) Name() string { + r := C.GoString(C.wickra_td_rei_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdRei) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -32183,6 +35109,13 @@ func (ind *TdRiskLevel) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdRiskLevel) Name() string { + r := C.GoString(C.wickra_td_risk_level_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *TdRiskLevel) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (TdRiskLevelOutput, bool) { @@ -32244,6 +35177,13 @@ func (ind *TdSequential) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdSequential) Name() string { + r := C.GoString(C.wickra_td_sequential_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *TdSequential) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (TdSequentialOutput, bool) { @@ -32305,6 +35245,13 @@ func (ind *TdSetup) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdSetup) Name() string { + r := C.GoString(C.wickra_td_setup_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdSetup) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -32396,6 +35343,13 @@ func (ind *TdTrap) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TdTrap) Name() string { + r := C.GoString(C.wickra_td_trap_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TdTrap) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -32487,6 +35441,13 @@ func (ind *Tema) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Tema) Name() string { + r := C.GoString(C.wickra_tema_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Tema) Update(value float64) float64 { @@ -32558,6 +35519,13 @@ func (ind *TermStructureBasis) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TermStructureBasis) Name() string { + r := C.GoString(C.wickra_term_structure_basis_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TermStructureBasis) Update(fundingRate float64, markPrice float64, indexPrice float64, futuresPrice float64, openInterest float64, longSize float64, shortSize float64, takerBuyVolume float64, takerSellVolume float64, longLiquidation float64, shortLiquidation float64, timestamp int64) float64 { @@ -32615,6 +35583,13 @@ func (ind *ThreeDrives) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ThreeDrives) Name() string { + r := C.GoString(C.wickra_three_drives_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ThreeDrives) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -32706,6 +35681,13 @@ func (ind *ThreeInside) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ThreeInside) Name() string { + r := C.GoString(C.wickra_three_inside_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ThreeInside) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -32797,6 +35779,13 @@ func (ind *ThreeLineBreak) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ThreeLineBreak) Name() string { + r := C.GoString(C.wickra_three_line_break_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ThreeLineBreak) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -32872,6 +35861,13 @@ func NewThreeLineBreakBars(lines int) (*ThreeLineBreakBars, error) { return obj, nil } +// Name returns the indicator's canonical name. +func (ind *ThreeLineBreakBars) Name() string { + r := C.GoString(C.wickra_three_line_break_bars_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one candle and returns any bars completed by it // (a single candle may complete several). func (ind *ThreeLineBreakBars) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) []LineBreakBar { @@ -32938,6 +35934,13 @@ func (ind *ThreeLineStrike) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ThreeLineStrike) Name() string { + r := C.GoString(C.wickra_three_line_strike_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ThreeLineStrike) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -33029,6 +36032,13 @@ func (ind *ThreeOutside) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ThreeOutside) Name() string { + r := C.GoString(C.wickra_three_outside_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ThreeOutside) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -33120,6 +36130,13 @@ func (ind *ThreeSoldiersOrCrows) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ThreeSoldiersOrCrows) Name() string { + r := C.GoString(C.wickra_three_soldiers_or_crows_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ThreeSoldiersOrCrows) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -33211,6 +36228,13 @@ func (ind *ThreeStarsInSouth) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ThreeStarsInSouth) Name() string { + r := C.GoString(C.wickra_three_stars_in_south_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ThreeStarsInSouth) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -33302,6 +36326,13 @@ func (ind *Thrusting) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Thrusting) Name() string { + r := C.GoString(C.wickra_thrusting_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Thrusting) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -33377,6 +36408,13 @@ func NewTickBars(ticks int) (*TickBars, error) { return obj, nil } +// Name returns the indicator's canonical name. +func (ind *TickBars) Name() string { + r := C.GoString(C.wickra_tick_bars_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one candle and returns any bars completed by it // (a single candle may complete several). func (ind *TickBars) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) []TickBar { @@ -33443,6 +36481,13 @@ func (ind *TickIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TickIndex) Name() string { + r := C.GoString(C.wickra_tick_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *TickIndex) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -33521,6 +36566,13 @@ func (ind *Tii) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Tii) Name() string { + r := C.GoString(C.wickra_tii_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Tii) Update(value float64) float64 { @@ -33592,6 +36644,13 @@ func (ind *TimeBasedStop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TimeBasedStop) Name() string { + r := C.GoString(C.wickra_time_based_stop_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TimeBasedStop) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -33685,6 +36744,13 @@ func (ind *TimeOfDayReturnProfile) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TimeOfDayReturnProfile) Name() string { + r := C.GoString(C.wickra_time_of_day_return_profile_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the profile values // (ok is false during warmup). func (ind *TimeOfDayReturnProfile) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) ([]float64, bool) { @@ -33746,6 +36812,13 @@ func (ind *TowerTopBottom) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TowerTopBottom) Name() string { + r := C.GoString(C.wickra_tower_top_bottom_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TowerTopBottom) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -33839,6 +36912,13 @@ func (ind *TpoProfile) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TpoProfile) Name() string { + r := C.GoString(C.wickra_tpo_profile_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the profile snapshot // (ok is false during warmup). func (ind *TpoProfile) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (TpoProfileOutputScalars, bool) { @@ -33901,6 +36981,13 @@ func (ind *TradeImbalance) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TradeImbalance) Name() string { + r := C.GoString(C.wickra_trade_imbalance_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TradeImbalance) Update(price float64, size float64, isBuy bool, timestamp int64) float64 { @@ -33958,6 +37045,13 @@ func (ind *TradeSignAutocorrelation) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TradeSignAutocorrelation) Name() string { + r := C.GoString(C.wickra_trade_sign_autocorrelation_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TradeSignAutocorrelation) Update(price float64, size float64, isBuy bool, timestamp int64) float64 { @@ -34015,6 +37109,13 @@ func (ind *TradeVolumeIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TradeVolumeIndex) Name() string { + r := C.GoString(C.wickra_trade_volume_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TradeVolumeIndex) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -34106,6 +37207,13 @@ func (ind *TrendLabel) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TrendLabel) Name() string { + r := C.GoString(C.wickra_trend_label_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TrendLabel) Update(value float64) float64 { @@ -34177,6 +37285,13 @@ func (ind *TrendStrengthIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TrendStrengthIndex) Name() string { + r := C.GoString(C.wickra_trend_strength_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TrendStrengthIndex) Update(value float64) float64 { @@ -34248,6 +37363,13 @@ func (ind *Trendflex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Trendflex) Name() string { + r := C.GoString(C.wickra_trendflex_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Trendflex) Update(value float64) float64 { @@ -34319,6 +37441,13 @@ func (ind *TreynorRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TreynorRatio) Name() string { + r := C.GoString(C.wickra_treynor_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TreynorRatio) Update(x float64, y float64) float64 { @@ -34394,6 +37523,13 @@ func (ind *Triangle) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Triangle) Name() string { + r := C.GoString(C.wickra_triangle_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Triangle) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -34485,6 +37621,13 @@ func (ind *Trima) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Trima) Name() string { + r := C.GoString(C.wickra_trima_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Trima) Update(value float64) float64 { @@ -34556,6 +37699,13 @@ func (ind *Trin) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Trin) Name() string { + r := C.GoString(C.wickra_trin_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *Trin) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -34634,6 +37784,13 @@ func (ind *TripleTopBottom) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TripleTopBottom) Name() string { + r := C.GoString(C.wickra_triple_top_bottom_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TripleTopBottom) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -34725,6 +37882,13 @@ func (ind *Tristar) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Tristar) Name() string { + r := C.GoString(C.wickra_tristar_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Tristar) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -34816,6 +37980,13 @@ func (ind *Trix) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Trix) Name() string { + r := C.GoString(C.wickra_trix_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Trix) Update(value float64) float64 { @@ -34887,6 +38058,13 @@ func (ind *TrueRange) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TrueRange) Name() string { + r := C.GoString(C.wickra_true_range_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TrueRange) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -34978,6 +38156,13 @@ func (ind *Tsf) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Tsf) Name() string { + r := C.GoString(C.wickra_tsf_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Tsf) Update(value float64) float64 { @@ -35049,6 +38234,13 @@ func (ind *TsfOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TsfOscillator) Name() string { + r := C.GoString(C.wickra_tsf_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TsfOscillator) Update(value float64) float64 { @@ -35120,6 +38312,13 @@ func (ind *Tsi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Tsi) Name() string { + r := C.GoString(C.wickra_tsi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Tsi) Update(value float64) float64 { @@ -35191,6 +38390,13 @@ func (ind *Tsv) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Tsv) Name() string { + r := C.GoString(C.wickra_tsv_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Tsv) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -35282,6 +38488,13 @@ func (ind *TtmSqueeze) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TtmSqueeze) Name() string { + r := C.GoString(C.wickra_ttm_squeeze_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *TtmSqueeze) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (TtmSqueezeOutput, bool) { @@ -35343,6 +38556,13 @@ func (ind *TtmTrend) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TtmTrend) Name() string { + r := C.GoString(C.wickra_ttm_trend_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TtmTrend) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -35434,6 +38654,13 @@ func (ind *TurnOfMonth) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TurnOfMonth) Name() string { + r := C.GoString(C.wickra_turn_of_month_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TurnOfMonth) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -35525,6 +38752,13 @@ func (ind *Tweezer) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Tweezer) Name() string { + r := C.GoString(C.wickra_tweezer_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Tweezer) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -35616,6 +38850,13 @@ func (ind *TwiggsMoneyFlow) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TwiggsMoneyFlow) Name() string { + r := C.GoString(C.wickra_twiggs_money_flow_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TwiggsMoneyFlow) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -35707,6 +38948,13 @@ func (ind *TwoCrows) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TwoCrows) Name() string { + r := C.GoString(C.wickra_two_crows_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TwoCrows) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -35798,6 +39046,13 @@ func (ind *TypicalPrice) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *TypicalPrice) Name() string { + r := C.GoString(C.wickra_typical_price_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *TypicalPrice) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -35889,6 +39144,13 @@ func (ind *UlcerIndex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *UlcerIndex) Name() string { + r := C.GoString(C.wickra_ulcer_index_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *UlcerIndex) Update(value float64) float64 { @@ -35960,6 +39222,13 @@ func (ind *UltimateOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *UltimateOscillator) Name() string { + r := C.GoString(C.wickra_ultimate_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *UltimateOscillator) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -36051,6 +39320,13 @@ func (ind *UniqueThreeRiver) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *UniqueThreeRiver) Name() string { + r := C.GoString(C.wickra_unique_three_river_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *UniqueThreeRiver) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -36142,6 +39418,13 @@ func (ind *UniversalOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *UniversalOscillator) Name() string { + r := C.GoString(C.wickra_universal_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *UniversalOscillator) Update(value float64) float64 { @@ -36213,6 +39496,13 @@ func (ind *UpDownVolumeRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *UpDownVolumeRatio) Name() string { + r := C.GoString(C.wickra_up_down_volume_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one cross-sectional snapshot and returns the indicator // value (NaN until warmed up). Slices in a group must share a length. func (ind *UpDownVolumeRatio) Update(change []float64, volume []float64, newHigh []bool, newLow []bool, aboveMa []bool, onBuySignal []bool, timestamp int64) float64 { @@ -36291,6 +39581,13 @@ func (ind *UpsideGapThreeMethods) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *UpsideGapThreeMethods) Name() string { + r := C.GoString(C.wickra_upside_gap_three_methods_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *UpsideGapThreeMethods) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -36382,6 +39679,13 @@ func (ind *UpsideGapTwoCrows) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *UpsideGapTwoCrows) Name() string { + r := C.GoString(C.wickra_upside_gap_two_crows_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *UpsideGapTwoCrows) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -36473,6 +39777,13 @@ func (ind *UpsidePotentialRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *UpsidePotentialRatio) Name() string { + r := C.GoString(C.wickra_upside_potential_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *UpsidePotentialRatio) Update(value float64) float64 { @@ -36544,6 +39855,13 @@ func (ind *ValueArea) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ValueArea) Name() string { + r := C.GoString(C.wickra_value_area_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *ValueArea) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (ValueAreaOutput, bool) { @@ -36605,6 +39923,13 @@ func (ind *ValueAtRisk) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ValueAtRisk) Name() string { + r := C.GoString(C.wickra_value_at_risk_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ValueAtRisk) Update(value float64) float64 { @@ -36676,6 +40001,13 @@ func (ind *Variance) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Variance) Name() string { + r := C.GoString(C.wickra_variance_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Variance) Update(value float64) float64 { @@ -36747,6 +40079,13 @@ func (ind *VarianceRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VarianceRatio) Name() string { + r := C.GoString(C.wickra_variance_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *VarianceRatio) Update(x float64, y float64) float64 { @@ -36822,6 +40161,13 @@ func (ind *VerticalHorizontalFilter) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VerticalHorizontalFilter) Name() string { + r := C.GoString(C.wickra_vertical_horizontal_filter_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *VerticalHorizontalFilter) Update(value float64) float64 { @@ -36893,6 +40239,13 @@ func (ind *Vidya) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Vidya) Name() string { + r := C.GoString(C.wickra_vidya_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Vidya) Update(value float64) float64 { @@ -36964,6 +40317,13 @@ func (ind *VolatilityCone) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VolatilityCone) Name() string { + r := C.GoString(C.wickra_volatility_cone_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *VolatilityCone) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (VolatilityConeOutput, bool) { @@ -37025,6 +40385,13 @@ func (ind *VolatilityOfVolatility) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VolatilityOfVolatility) Name() string { + r := C.GoString(C.wickra_volatility_of_volatility_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *VolatilityOfVolatility) Update(value float64) float64 { @@ -37096,6 +40463,13 @@ func (ind *VolatilityRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VolatilityRatio) Name() string { + r := C.GoString(C.wickra_volatility_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *VolatilityRatio) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -37187,6 +40561,13 @@ func (ind *VoltyStop) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VoltyStop) Name() string { + r := C.GoString(C.wickra_volty_stop_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *VoltyStop) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -37262,6 +40643,13 @@ func NewVolumeBars(volumePerBar float64) (*VolumeBars, error) { return obj, nil } +// Name returns the indicator's canonical name. +func (ind *VolumeBars) Name() string { + r := C.GoString(C.wickra_volume_bars_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one candle and returns any bars completed by it // (a single candle may complete several). func (ind *VolumeBars) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) []VolumeBar { @@ -37330,6 +40718,13 @@ func (ind *VolumeByTimeProfile) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VolumeByTimeProfile) Name() string { + r := C.GoString(C.wickra_volume_by_time_profile_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the profile values // (ok is false during warmup). func (ind *VolumeByTimeProfile) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) ([]float64, bool) { @@ -37391,6 +40786,13 @@ func (ind *VolumeOscillator) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VolumeOscillator) Name() string { + r := C.GoString(C.wickra_volume_oscillator_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *VolumeOscillator) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -37482,6 +40884,13 @@ func (ind *VolumePriceTrend) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VolumePriceTrend) Name() string { + r := C.GoString(C.wickra_volume_price_trend_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *VolumePriceTrend) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -37575,6 +40984,13 @@ func (ind *VolumeProfile) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VolumeProfile) Name() string { + r := C.GoString(C.wickra_volume_profile_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the profile snapshot // (ok is false during warmup). func (ind *VolumeProfile) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (VolumeProfileOutputScalars, bool) { @@ -37637,6 +41053,13 @@ func (ind *VolumeRsi) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VolumeRsi) Name() string { + r := C.GoString(C.wickra_volume_rsi_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *VolumeRsi) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -37728,6 +41151,13 @@ func (ind *VolumeWeightedMacd) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VolumeWeightedMacd) Name() string { + r := C.GoString(C.wickra_volume_weighted_macd_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *VolumeWeightedMacd) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (VolumeWeightedMacdOutput, bool) { @@ -37789,6 +41219,13 @@ func (ind *VolumeWeightedSr) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VolumeWeightedSr) Name() string { + r := C.GoString(C.wickra_volume_weighted_sr_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *VolumeWeightedSr) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (VolumeWeightedSrOutput, bool) { @@ -37850,6 +41287,13 @@ func (ind *Vortex) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Vortex) Name() string { + r := C.GoString(C.wickra_vortex_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *Vortex) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (VortexOutput, bool) { @@ -37911,6 +41355,13 @@ func (ind *Vpin) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Vpin) Name() string { + r := C.GoString(C.wickra_vpin_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Vpin) Update(price float64, size float64, isBuy bool, timestamp int64) float64 { @@ -37968,6 +41419,13 @@ func (ind *Vwap) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Vwap) Name() string { + r := C.GoString(C.wickra_vwap_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Vwap) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -38059,6 +41517,13 @@ func (ind *VwapStdDevBands) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *VwapStdDevBands) Name() string { + r := C.GoString(C.wickra_vwap_std_dev_bands_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *VwapStdDevBands) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (VwapStdDevBandsOutput, bool) { @@ -38120,6 +41585,13 @@ func (ind *Vwma) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Vwma) Name() string { + r := C.GoString(C.wickra_vwma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Vwma) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -38211,6 +41683,13 @@ func (ind *Vzo) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Vzo) Name() string { + r := C.GoString(C.wickra_vzo_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Vzo) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -38302,6 +41781,13 @@ func (ind *Wad) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Wad) Name() string { + r := C.GoString(C.wickra_wad_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Wad) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -38393,6 +41879,13 @@ func (ind *WavePm) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *WavePm) Name() string { + r := C.GoString(C.wickra_wave_pm_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *WavePm) Update(value float64) float64 { @@ -38464,6 +41957,13 @@ func (ind *WaveTrend) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *WaveTrend) Name() string { + r := C.GoString(C.wickra_wave_trend_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *WaveTrend) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (WaveTrendOutput, bool) { @@ -38525,6 +42025,13 @@ func (ind *Wedge) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Wedge) Name() string { + r := C.GoString(C.wickra_wedge_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Wedge) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -38616,6 +42123,13 @@ func (ind *WeightedClose) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *WeightedClose) Name() string { + r := C.GoString(C.wickra_weighted_close_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *WeightedClose) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -38707,6 +42221,13 @@ func (ind *WickRatio) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *WickRatio) Name() string { + r := C.GoString(C.wickra_wick_ratio_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *WickRatio) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -38798,6 +42319,13 @@ func (ind *WilliamsFractals) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *WilliamsFractals) Name() string { + r := C.GoString(C.wickra_williams_fractals_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *WilliamsFractals) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (WilliamsFractalsOutput, bool) { @@ -38859,6 +42387,13 @@ func (ind *WilliamsR) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *WilliamsR) Name() string { + r := C.GoString(C.wickra_williams_r_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *WilliamsR) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -38950,6 +42485,13 @@ func (ind *WinRate) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *WinRate) Name() string { + r := C.GoString(C.wickra_win_rate_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *WinRate) Update(value float64) float64 { @@ -39021,6 +42563,13 @@ func (ind *Wma) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Wma) Name() string { + r := C.GoString(C.wickra_wma_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Wma) Update(value float64) float64 { @@ -39092,6 +42641,13 @@ func (ind *WoodiePivots) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *WoodiePivots) Name() string { + r := C.GoString(C.wickra_woodie_pivots_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *WoodiePivots) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (WoodiePivotsOutput, bool) { @@ -39153,6 +42709,13 @@ func (ind *YangZhangVolatility) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *YangZhangVolatility) Name() string { + r := C.GoString(C.wickra_yang_zhang_volatility_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *YangZhangVolatility) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -39244,6 +42807,13 @@ func (ind *YoyoExit) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *YoyoExit) Name() string { + r := C.GoString(C.wickra_yoyo_exit_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *YoyoExit) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) float64 { @@ -39335,6 +42905,13 @@ func (ind *ZScore) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ZScore) Name() string { + r := C.GoString(C.wickra_z_score_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *ZScore) Update(value float64) float64 { @@ -39406,6 +42983,13 @@ func (ind *ZeroLagMacd) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ZeroLagMacd) Name() string { + r := C.GoString(C.wickra_zero_lag_macd_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *ZeroLagMacd) Update(value float64) (ZeroLagMacdOutput, bool) { @@ -39467,6 +43051,13 @@ func (ind *ZigZag) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *ZigZag) Name() string { + r := C.GoString(C.wickra_zig_zag_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation. The bool reports whether a value is // available yet (false during warmup). func (ind *ZigZag) Update(open float64, high float64, low float64, close float64, volume float64, timestamp int64) (ZigZagOutput, bool) { @@ -39528,6 +43119,13 @@ func (ind *Zlema) IsReady() bool { return r } +// Name returns the indicator's canonical name. +func (ind *Zlema) Name() string { + r := C.GoString(C.wickra_zlema_name(ind.handle)) + runtime.KeepAlive(ind) + return r +} + // Update feeds one observation and returns the indicator value // (NaN until warmed up). func (ind *Zlema) Update(value float64) float64 { diff --git a/bindings/java/gen_golden_test.py b/bindings/java/gen_golden_test.py index 0398cf83..4d36f3c3 100644 --- a/bindings/java/gen_golden_test.py +++ b/bindings/java/gen_golden_test.py @@ -25,6 +25,12 @@ for e in MAN: specs.append(f' new Spec("{e["canonical"]}", "{e["arch"]}", {params_lit(e["params"])}, {n}),') specs_block = "\n".join(specs) +# Canonical core Indicator::name() per indicator, shared across every binding. +NAMES = json.load(open(os.path.join(ROOT, "testdata", "golden", "names.json"))) +names_block = "\n".join( + f" NAMES.put({json.dumps(c)}, {json.dumps(NAMES[c])});" for c in sorted(NAMES) +) + TEMPLATE = '''// Code generated by gen_golden_test.py. DO NOT EDIT. package org.wickra; @@ -60,6 +66,11 @@ class GoldenAllTest { %SPECS% }; + private static final java.util.Map NAMES = new java.util.HashMap<>(); + static { +%NAMES% + } + private static Path goldenDir() { java.io.File d = new java.io.File("").getAbsoluteFile(); while (d != null) { @@ -244,6 +255,9 @@ class GoldenAllTest { for (Spec s : SPECS) { tests.add(dynamicTest(s.canonical(), () -> { Object ind = construct(s); + String gotName = (String) ind.getClass().getMethod("name").invoke(ind); + assertTrue(gotName.equals(NAMES.get(s.canonical())), + s.canonical() + ": name() " + gotName + " != " + NAMES.get(s.canonical())); Method upd = updateMethod(ind); double[][] exp = fixture(s.canonical()); assertTrue(exp.length == rows.length, s.canonical() + ": row count " + exp.length + " vs " + rows.length); @@ -273,7 +287,7 @@ class GoldenAllTest { } ''' -out = TEMPLATE.replace("%SPECS%", specs_block) +out = TEMPLATE.replace("%SPECS%", specs_block).replace("%NAMES%", names_block) dest = os.path.join(ROOT, "bindings", "java", "src", "test", "java", "org", "wickra", "GoldenAllTest.java") open(dest, "w", encoding="utf-8").write(out) print("generated GoldenAllTest.java with", len(MAN), "indicators") diff --git a/bindings/java/src/main/java/org/wickra/AbandonedBaby.java b/bindings/java/src/main/java/org/wickra/AbandonedBaby.java index 9870ee51..e50b2a0d 100644 --- a/bindings/java/src/main/java/org/wickra/AbandonedBaby.java +++ b/bindings/java/src/main/java/org/wickra/AbandonedBaby.java @@ -91,6 +91,16 @@ public final class AbandonedBaby implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ABANDONED_BABY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Abcd.java b/bindings/java/src/main/java/org/wickra/Abcd.java index 8d4c3039..642d088c 100644 --- a/bindings/java/src/main/java/org/wickra/Abcd.java +++ b/bindings/java/src/main/java/org/wickra/Abcd.java @@ -91,6 +91,16 @@ public final class Abcd implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ABCD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AbsoluteBreadthIndex.java b/bindings/java/src/main/java/org/wickra/AbsoluteBreadthIndex.java index 211da5ae..8448042a 100644 --- a/bindings/java/src/main/java/org/wickra/AbsoluteBreadthIndex.java +++ b/bindings/java/src/main/java/org/wickra/AbsoluteBreadthIndex.java @@ -77,6 +77,16 @@ public final class AbsoluteBreadthIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ABSOLUTE_BREADTH_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AccelerationBands.java b/bindings/java/src/main/java/org/wickra/AccelerationBands.java index 8a275ffa..add79eff 100644 --- a/bindings/java/src/main/java/org/wickra/AccelerationBands.java +++ b/bindings/java/src/main/java/org/wickra/AccelerationBands.java @@ -67,6 +67,16 @@ public final class AccelerationBands implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ACCELERATION_BANDS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AcceleratorOscillator.java b/bindings/java/src/main/java/org/wickra/AcceleratorOscillator.java index b8f8c049..98d6fc69 100644 --- a/bindings/java/src/main/java/org/wickra/AcceleratorOscillator.java +++ b/bindings/java/src/main/java/org/wickra/AcceleratorOscillator.java @@ -100,6 +100,16 @@ public final class AcceleratorOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ACCELERATOR_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AdOscillator.java b/bindings/java/src/main/java/org/wickra/AdOscillator.java index e7c76a90..9234fab3 100644 --- a/bindings/java/src/main/java/org/wickra/AdOscillator.java +++ b/bindings/java/src/main/java/org/wickra/AdOscillator.java @@ -91,6 +91,16 @@ public final class AdOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AD_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AdVolumeLine.java b/bindings/java/src/main/java/org/wickra/AdVolumeLine.java index 58a6ab22..a42eac09 100644 --- a/bindings/java/src/main/java/org/wickra/AdVolumeLine.java +++ b/bindings/java/src/main/java/org/wickra/AdVolumeLine.java @@ -77,6 +77,16 @@ public final class AdVolumeLine implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AD_VOLUME_LINE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AdaptiveCci.java b/bindings/java/src/main/java/org/wickra/AdaptiveCci.java index 742c0f32..209793f8 100644 --- a/bindings/java/src/main/java/org/wickra/AdaptiveCci.java +++ b/bindings/java/src/main/java/org/wickra/AdaptiveCci.java @@ -94,6 +94,16 @@ public final class AdaptiveCci implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ADAPTIVE_CCI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AdaptiveCycle.java b/bindings/java/src/main/java/org/wickra/AdaptiveCycle.java index 278f990c..8a019ef4 100644 --- a/bindings/java/src/main/java/org/wickra/AdaptiveCycle.java +++ b/bindings/java/src/main/java/org/wickra/AdaptiveCycle.java @@ -71,6 +71,16 @@ public final class AdaptiveCycle implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ADAPTIVE_CYCLE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AdaptiveLaguerreFilter.java b/bindings/java/src/main/java/org/wickra/AdaptiveLaguerreFilter.java index ecbc0be6..b44fe5ec 100644 --- a/bindings/java/src/main/java/org/wickra/AdaptiveLaguerreFilter.java +++ b/bindings/java/src/main/java/org/wickra/AdaptiveLaguerreFilter.java @@ -74,6 +74,16 @@ public final class AdaptiveLaguerreFilter implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ADAPTIVE_LAGUERRE_FILTER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AdaptiveRsi.java b/bindings/java/src/main/java/org/wickra/AdaptiveRsi.java index b5295216..9726d2d9 100644 --- a/bindings/java/src/main/java/org/wickra/AdaptiveRsi.java +++ b/bindings/java/src/main/java/org/wickra/AdaptiveRsi.java @@ -74,6 +74,16 @@ public final class AdaptiveRsi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ADAPTIVE_RSI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Adl.java b/bindings/java/src/main/java/org/wickra/Adl.java index 03d4caf8..1fa5df12 100644 --- a/bindings/java/src/main/java/org/wickra/Adl.java +++ b/bindings/java/src/main/java/org/wickra/Adl.java @@ -91,6 +91,16 @@ public final class Adl implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ADL_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AdvanceBlock.java b/bindings/java/src/main/java/org/wickra/AdvanceBlock.java index bb34c76b..2c6381f4 100644 --- a/bindings/java/src/main/java/org/wickra/AdvanceBlock.java +++ b/bindings/java/src/main/java/org/wickra/AdvanceBlock.java @@ -91,6 +91,16 @@ public final class AdvanceBlock implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ADVANCE_BLOCK_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AdvanceDecline.java b/bindings/java/src/main/java/org/wickra/AdvanceDecline.java index bc6e9974..bdaaed3e 100644 --- a/bindings/java/src/main/java/org/wickra/AdvanceDecline.java +++ b/bindings/java/src/main/java/org/wickra/AdvanceDecline.java @@ -77,6 +77,16 @@ public final class AdvanceDecline implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ADVANCE_DECLINE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AdvanceDeclineRatio.java b/bindings/java/src/main/java/org/wickra/AdvanceDeclineRatio.java index 8e50d714..002d647d 100644 --- a/bindings/java/src/main/java/org/wickra/AdvanceDeclineRatio.java +++ b/bindings/java/src/main/java/org/wickra/AdvanceDeclineRatio.java @@ -77,6 +77,16 @@ public final class AdvanceDeclineRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ADVANCE_DECLINE_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Adx.java b/bindings/java/src/main/java/org/wickra/Adx.java index 3f0c377d..d1ae80d6 100644 --- a/bindings/java/src/main/java/org/wickra/Adx.java +++ b/bindings/java/src/main/java/org/wickra/Adx.java @@ -67,6 +67,16 @@ public final class Adx implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ADX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Adxr.java b/bindings/java/src/main/java/org/wickra/Adxr.java index bc025115..5d8137dd 100644 --- a/bindings/java/src/main/java/org/wickra/Adxr.java +++ b/bindings/java/src/main/java/org/wickra/Adxr.java @@ -94,6 +94,16 @@ public final class Adxr implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ADXR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Alligator.java b/bindings/java/src/main/java/org/wickra/Alligator.java index 43fcf21b..aa6027f3 100644 --- a/bindings/java/src/main/java/org/wickra/Alligator.java +++ b/bindings/java/src/main/java/org/wickra/Alligator.java @@ -73,6 +73,16 @@ public final class Alligator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ALLIGATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Alma.java b/bindings/java/src/main/java/org/wickra/Alma.java index fdbf40f9..d91c98a2 100644 --- a/bindings/java/src/main/java/org/wickra/Alma.java +++ b/bindings/java/src/main/java/org/wickra/Alma.java @@ -74,6 +74,16 @@ public final class Alma implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ALMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Alpha.java b/bindings/java/src/main/java/org/wickra/Alpha.java index 193f3a1e..3626cd74 100644 --- a/bindings/java/src/main/java/org/wickra/Alpha.java +++ b/bindings/java/src/main/java/org/wickra/Alpha.java @@ -78,6 +78,16 @@ public final class Alpha implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ALPHA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AmihudIlliquidity.java b/bindings/java/src/main/java/org/wickra/AmihudIlliquidity.java index 9600a996..a31849b8 100644 --- a/bindings/java/src/main/java/org/wickra/AmihudIlliquidity.java +++ b/bindings/java/src/main/java/org/wickra/AmihudIlliquidity.java @@ -59,6 +59,16 @@ public final class AmihudIlliquidity implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AMIHUD_ILLIQUIDITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AnchoredRsi.java b/bindings/java/src/main/java/org/wickra/AnchoredRsi.java index 5a72b6a6..955ae899 100644 --- a/bindings/java/src/main/java/org/wickra/AnchoredRsi.java +++ b/bindings/java/src/main/java/org/wickra/AnchoredRsi.java @@ -71,6 +71,16 @@ public final class AnchoredRsi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ANCHORED_RSI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AnchoredVwap.java b/bindings/java/src/main/java/org/wickra/AnchoredVwap.java index acd95045..93757089 100644 --- a/bindings/java/src/main/java/org/wickra/AnchoredVwap.java +++ b/bindings/java/src/main/java/org/wickra/AnchoredVwap.java @@ -91,6 +91,16 @@ public final class AnchoredVwap implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ANCHORED_VWAP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AndrewsPitchfork.java b/bindings/java/src/main/java/org/wickra/AndrewsPitchfork.java index 3c16db25..1129947e 100644 --- a/bindings/java/src/main/java/org/wickra/AndrewsPitchfork.java +++ b/bindings/java/src/main/java/org/wickra/AndrewsPitchfork.java @@ -67,6 +67,16 @@ public final class AndrewsPitchfork implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ANDREWS_PITCHFORK_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Apo.java b/bindings/java/src/main/java/org/wickra/Apo.java index fc2a4e8b..3e7344a2 100644 --- a/bindings/java/src/main/java/org/wickra/Apo.java +++ b/bindings/java/src/main/java/org/wickra/Apo.java @@ -77,6 +77,16 @@ public final class Apo implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_APO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Aroon.java b/bindings/java/src/main/java/org/wickra/Aroon.java index 9c6feffa..4422f5e3 100644 --- a/bindings/java/src/main/java/org/wickra/Aroon.java +++ b/bindings/java/src/main/java/org/wickra/Aroon.java @@ -66,6 +66,16 @@ public final class Aroon implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AROON_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AroonOscillator.java b/bindings/java/src/main/java/org/wickra/AroonOscillator.java index e480ef9a..80188165 100644 --- a/bindings/java/src/main/java/org/wickra/AroonOscillator.java +++ b/bindings/java/src/main/java/org/wickra/AroonOscillator.java @@ -94,6 +94,16 @@ public final class AroonOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AROON_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Atr.java b/bindings/java/src/main/java/org/wickra/Atr.java index 25910ad5..6448308b 100644 --- a/bindings/java/src/main/java/org/wickra/Atr.java +++ b/bindings/java/src/main/java/org/wickra/Atr.java @@ -94,6 +94,16 @@ public final class Atr implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ATR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AtrBands.java b/bindings/java/src/main/java/org/wickra/AtrBands.java index 2416f878..11407dfd 100644 --- a/bindings/java/src/main/java/org/wickra/AtrBands.java +++ b/bindings/java/src/main/java/org/wickra/AtrBands.java @@ -67,6 +67,16 @@ public final class AtrBands implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ATR_BANDS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AtrRatchet.java b/bindings/java/src/main/java/org/wickra/AtrRatchet.java index 385845d8..ebf5a4c4 100644 --- a/bindings/java/src/main/java/org/wickra/AtrRatchet.java +++ b/bindings/java/src/main/java/org/wickra/AtrRatchet.java @@ -66,6 +66,16 @@ public final class AtrRatchet implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ATR_RATCHET_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AtrTrailingStop.java b/bindings/java/src/main/java/org/wickra/AtrTrailingStop.java index 8a02a6dd..f4c279a3 100644 --- a/bindings/java/src/main/java/org/wickra/AtrTrailingStop.java +++ b/bindings/java/src/main/java/org/wickra/AtrTrailingStop.java @@ -94,6 +94,16 @@ public final class AtrTrailingStop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ATR_TRAILING_STOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AutoFib.java b/bindings/java/src/main/java/org/wickra/AutoFib.java index d16d1a60..2a935c27 100644 --- a/bindings/java/src/main/java/org/wickra/AutoFib.java +++ b/bindings/java/src/main/java/org/wickra/AutoFib.java @@ -68,6 +68,16 @@ public final class AutoFib implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AUTO_FIB_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Autocorrelation.java b/bindings/java/src/main/java/org/wickra/Autocorrelation.java index 86972592..a4997776 100644 --- a/bindings/java/src/main/java/org/wickra/Autocorrelation.java +++ b/bindings/java/src/main/java/org/wickra/Autocorrelation.java @@ -77,6 +77,16 @@ public final class Autocorrelation implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AUTOCORRELATION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AutocorrelationPeriodogram.java b/bindings/java/src/main/java/org/wickra/AutocorrelationPeriodogram.java index 78ecada2..4d8d0b50 100644 --- a/bindings/java/src/main/java/org/wickra/AutocorrelationPeriodogram.java +++ b/bindings/java/src/main/java/org/wickra/AutocorrelationPeriodogram.java @@ -77,6 +77,16 @@ public final class AutocorrelationPeriodogram implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AUTOCORRELATION_PERIODOGRAM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AverageDailyRange.java b/bindings/java/src/main/java/org/wickra/AverageDailyRange.java index 63d4086a..00c2e01d 100644 --- a/bindings/java/src/main/java/org/wickra/AverageDailyRange.java +++ b/bindings/java/src/main/java/org/wickra/AverageDailyRange.java @@ -94,6 +94,16 @@ public final class AverageDailyRange implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AVERAGE_DAILY_RANGE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AverageDrawdown.java b/bindings/java/src/main/java/org/wickra/AverageDrawdown.java index 3363c0f4..9a7d9ca5 100644 --- a/bindings/java/src/main/java/org/wickra/AverageDrawdown.java +++ b/bindings/java/src/main/java/org/wickra/AverageDrawdown.java @@ -74,6 +74,16 @@ public final class AverageDrawdown implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AVERAGE_DRAWDOWN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AvgPrice.java b/bindings/java/src/main/java/org/wickra/AvgPrice.java index ebe3b40a..0f0fe413 100644 --- a/bindings/java/src/main/java/org/wickra/AvgPrice.java +++ b/bindings/java/src/main/java/org/wickra/AvgPrice.java @@ -91,6 +91,16 @@ public final class AvgPrice implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AVG_PRICE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AwesomeOscillator.java b/bindings/java/src/main/java/org/wickra/AwesomeOscillator.java index bc806224..e9caea2d 100644 --- a/bindings/java/src/main/java/org/wickra/AwesomeOscillator.java +++ b/bindings/java/src/main/java/org/wickra/AwesomeOscillator.java @@ -97,6 +97,16 @@ public final class AwesomeOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AWESOME_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/AwesomeOscillatorHistogram.java b/bindings/java/src/main/java/org/wickra/AwesomeOscillatorHistogram.java index f96d7e86..7f4646e8 100644 --- a/bindings/java/src/main/java/org/wickra/AwesomeOscillatorHistogram.java +++ b/bindings/java/src/main/java/org/wickra/AwesomeOscillatorHistogram.java @@ -13,19 +13,19 @@ public final class AwesomeOscillatorHistogram implements AutoCloseable { private final MemorySegment handle; private final Cleaner.Cleanable cleanable; - public AwesomeOscillatorHistogram(int fast, int slow, int smaPeriod) { + public AwesomeOscillatorHistogram(int fast, int slow, int lookback) { if (fast < 0) { throw new IllegalArgumentException("fast must be non-negative"); } if (slow < 0) { throw new IllegalArgumentException("slow must be non-negative"); } - if (smaPeriod < 0) { - throw new IllegalArgumentException("smaPeriod must be non-negative"); + if (lookback < 0) { + throw new IllegalArgumentException("lookback must be non-negative"); } MemorySegment h; try { - h = (MemorySegment) NativeMethods.WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_NEW.invokeExact((long) fast, (long) slow, (long) smaPeriod); + h = (MemorySegment) NativeMethods.WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_NEW.invokeExact((long) fast, (long) slow, (long) lookback); } catch (Throwable t) { throw WickraNative.rethrow(t); } @@ -100,6 +100,16 @@ public final class AwesomeOscillatorHistogram implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BalanceOfPower.java b/bindings/java/src/main/java/org/wickra/BalanceOfPower.java index f7719f6b..825b7eca 100644 --- a/bindings/java/src/main/java/org/wickra/BalanceOfPower.java +++ b/bindings/java/src/main/java/org/wickra/BalanceOfPower.java @@ -91,6 +91,16 @@ public final class BalanceOfPower implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BALANCE_OF_POWER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BandpassFilter.java b/bindings/java/src/main/java/org/wickra/BandpassFilter.java index a5ed7267..bfca5a6b 100644 --- a/bindings/java/src/main/java/org/wickra/BandpassFilter.java +++ b/bindings/java/src/main/java/org/wickra/BandpassFilter.java @@ -74,6 +74,16 @@ public final class BandpassFilter implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BANDPASS_FILTER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Bat.java b/bindings/java/src/main/java/org/wickra/Bat.java index 72e31e6d..64bd4b6e 100644 --- a/bindings/java/src/main/java/org/wickra/Bat.java +++ b/bindings/java/src/main/java/org/wickra/Bat.java @@ -91,6 +91,16 @@ public final class Bat implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BAT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BeltHold.java b/bindings/java/src/main/java/org/wickra/BeltHold.java index 40a9d419..00ac7aef 100644 --- a/bindings/java/src/main/java/org/wickra/BeltHold.java +++ b/bindings/java/src/main/java/org/wickra/BeltHold.java @@ -91,6 +91,16 @@ public final class BeltHold implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BELT_HOLD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Beta.java b/bindings/java/src/main/java/org/wickra/Beta.java index dc6f29e3..2a8d3f33 100644 --- a/bindings/java/src/main/java/org/wickra/Beta.java +++ b/bindings/java/src/main/java/org/wickra/Beta.java @@ -78,6 +78,16 @@ public final class Beta implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BETA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BetaNeutralSpread.java b/bindings/java/src/main/java/org/wickra/BetaNeutralSpread.java index a55e57a5..439fd154 100644 --- a/bindings/java/src/main/java/org/wickra/BetaNeutralSpread.java +++ b/bindings/java/src/main/java/org/wickra/BetaNeutralSpread.java @@ -78,6 +78,16 @@ public final class BetaNeutralSpread implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BETA_NEUTRAL_SPREAD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BetterVolume.java b/bindings/java/src/main/java/org/wickra/BetterVolume.java index 650cd147..e2b3f581 100644 --- a/bindings/java/src/main/java/org/wickra/BetterVolume.java +++ b/bindings/java/src/main/java/org/wickra/BetterVolume.java @@ -94,6 +94,16 @@ public final class BetterVolume implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BETTER_VOLUME_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BipowerVariation.java b/bindings/java/src/main/java/org/wickra/BipowerVariation.java index d2ea3c16..9564f39b 100644 --- a/bindings/java/src/main/java/org/wickra/BipowerVariation.java +++ b/bindings/java/src/main/java/org/wickra/BipowerVariation.java @@ -74,6 +74,16 @@ public final class BipowerVariation implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BIPOWER_VARIATION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BodySizePct.java b/bindings/java/src/main/java/org/wickra/BodySizePct.java index 74bd7a1d..bc05dc1b 100644 --- a/bindings/java/src/main/java/org/wickra/BodySizePct.java +++ b/bindings/java/src/main/java/org/wickra/BodySizePct.java @@ -91,6 +91,16 @@ public final class BodySizePct implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BODY_SIZE_PCT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BollingerBands.java b/bindings/java/src/main/java/org/wickra/BollingerBands.java index d6b3954b..122db289 100644 --- a/bindings/java/src/main/java/org/wickra/BollingerBands.java +++ b/bindings/java/src/main/java/org/wickra/BollingerBands.java @@ -68,6 +68,16 @@ public final class BollingerBands implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BOLLINGER_BANDS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BollingerBandwidth.java b/bindings/java/src/main/java/org/wickra/BollingerBandwidth.java index 20421c8d..b18447cc 100644 --- a/bindings/java/src/main/java/org/wickra/BollingerBandwidth.java +++ b/bindings/java/src/main/java/org/wickra/BollingerBandwidth.java @@ -74,6 +74,16 @@ public final class BollingerBandwidth implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BOLLINGER_BANDWIDTH_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BomarBands.java b/bindings/java/src/main/java/org/wickra/BomarBands.java index 395ec81c..98a32a94 100644 --- a/bindings/java/src/main/java/org/wickra/BomarBands.java +++ b/bindings/java/src/main/java/org/wickra/BomarBands.java @@ -67,6 +67,16 @@ public final class BomarBands implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BOMAR_BANDS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BreadthThrust.java b/bindings/java/src/main/java/org/wickra/BreadthThrust.java index 3601bd6e..d389f260 100644 --- a/bindings/java/src/main/java/org/wickra/BreadthThrust.java +++ b/bindings/java/src/main/java/org/wickra/BreadthThrust.java @@ -80,6 +80,16 @@ public final class BreadthThrust implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BREADTH_THRUST_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Breakaway.java b/bindings/java/src/main/java/org/wickra/Breakaway.java index 704b7818..8b8f19a6 100644 --- a/bindings/java/src/main/java/org/wickra/Breakaway.java +++ b/bindings/java/src/main/java/org/wickra/Breakaway.java @@ -91,6 +91,16 @@ public final class Breakaway implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BREAKAWAY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BullishPercentIndex.java b/bindings/java/src/main/java/org/wickra/BullishPercentIndex.java index 1079a5f8..3a407682 100644 --- a/bindings/java/src/main/java/org/wickra/BullishPercentIndex.java +++ b/bindings/java/src/main/java/org/wickra/BullishPercentIndex.java @@ -77,6 +77,16 @@ public final class BullishPercentIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BULLISH_PERCENT_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/BurkeRatio.java b/bindings/java/src/main/java/org/wickra/BurkeRatio.java index 51d2d76f..22381ca4 100644 --- a/bindings/java/src/main/java/org/wickra/BurkeRatio.java +++ b/bindings/java/src/main/java/org/wickra/BurkeRatio.java @@ -74,6 +74,16 @@ public final class BurkeRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BURKE_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Butterfly.java b/bindings/java/src/main/java/org/wickra/Butterfly.java index 91b011d9..5a9862fb 100644 --- a/bindings/java/src/main/java/org/wickra/Butterfly.java +++ b/bindings/java/src/main/java/org/wickra/Butterfly.java @@ -91,6 +91,16 @@ public final class Butterfly implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_BUTTERFLY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CalendarSpread.java b/bindings/java/src/main/java/org/wickra/CalendarSpread.java index b5481e95..a837785f 100644 --- a/bindings/java/src/main/java/org/wickra/CalendarSpread.java +++ b/bindings/java/src/main/java/org/wickra/CalendarSpread.java @@ -56,6 +56,16 @@ public final class CalendarSpread implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CALENDAR_SPREAD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CalmarRatio.java b/bindings/java/src/main/java/org/wickra/CalmarRatio.java index d5164cc9..2d9908f1 100644 --- a/bindings/java/src/main/java/org/wickra/CalmarRatio.java +++ b/bindings/java/src/main/java/org/wickra/CalmarRatio.java @@ -74,6 +74,16 @@ public final class CalmarRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CALMAR_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Camarilla.java b/bindings/java/src/main/java/org/wickra/Camarilla.java index fa4f25a0..22982b63 100644 --- a/bindings/java/src/main/java/org/wickra/Camarilla.java +++ b/bindings/java/src/main/java/org/wickra/Camarilla.java @@ -70,6 +70,16 @@ public final class Camarilla implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CAMARILLA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CandleVolume.java b/bindings/java/src/main/java/org/wickra/CandleVolume.java index 5b7bd457..a9526a4f 100644 --- a/bindings/java/src/main/java/org/wickra/CandleVolume.java +++ b/bindings/java/src/main/java/org/wickra/CandleVolume.java @@ -66,6 +66,16 @@ public final class CandleVolume implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CANDLE_VOLUME_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Cci.java b/bindings/java/src/main/java/org/wickra/Cci.java index 5973b20d..be1314ca 100644 --- a/bindings/java/src/main/java/org/wickra/Cci.java +++ b/bindings/java/src/main/java/org/wickra/Cci.java @@ -94,6 +94,16 @@ public final class Cci implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CCI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CenterOfGravity.java b/bindings/java/src/main/java/org/wickra/CenterOfGravity.java index 3b1e6ca0..74323875 100644 --- a/bindings/java/src/main/java/org/wickra/CenterOfGravity.java +++ b/bindings/java/src/main/java/org/wickra/CenterOfGravity.java @@ -74,6 +74,16 @@ public final class CenterOfGravity implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CENTER_OF_GRAVITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CentralPivotRange.java b/bindings/java/src/main/java/org/wickra/CentralPivotRange.java index 6f88ffb2..e15b2ba0 100644 --- a/bindings/java/src/main/java/org/wickra/CentralPivotRange.java +++ b/bindings/java/src/main/java/org/wickra/CentralPivotRange.java @@ -64,6 +64,16 @@ public final class CentralPivotRange implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CENTRAL_PIVOT_RANGE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Cfo.java b/bindings/java/src/main/java/org/wickra/Cfo.java index 8b4cab78..c062b020 100644 --- a/bindings/java/src/main/java/org/wickra/Cfo.java +++ b/bindings/java/src/main/java/org/wickra/Cfo.java @@ -74,6 +74,16 @@ public final class Cfo implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CFO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ChaikinMoneyFlow.java b/bindings/java/src/main/java/org/wickra/ChaikinMoneyFlow.java index 6eb2a5f9..968a2358 100644 --- a/bindings/java/src/main/java/org/wickra/ChaikinMoneyFlow.java +++ b/bindings/java/src/main/java/org/wickra/ChaikinMoneyFlow.java @@ -94,6 +94,16 @@ public final class ChaikinMoneyFlow implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CHAIKIN_MONEY_FLOW_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ChaikinOscillator.java b/bindings/java/src/main/java/org/wickra/ChaikinOscillator.java index 2d2a3e94..8d0ceda0 100644 --- a/bindings/java/src/main/java/org/wickra/ChaikinOscillator.java +++ b/bindings/java/src/main/java/org/wickra/ChaikinOscillator.java @@ -97,6 +97,16 @@ public final class ChaikinOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CHAIKIN_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ChaikinVolatility.java b/bindings/java/src/main/java/org/wickra/ChaikinVolatility.java index 9c633ea3..1cdea71c 100644 --- a/bindings/java/src/main/java/org/wickra/ChaikinVolatility.java +++ b/bindings/java/src/main/java/org/wickra/ChaikinVolatility.java @@ -97,6 +97,16 @@ public final class ChaikinVolatility implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CHAIKIN_VOLATILITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ChandeKrollStop.java b/bindings/java/src/main/java/org/wickra/ChandeKrollStop.java index 819a28ba..96671e46 100644 --- a/bindings/java/src/main/java/org/wickra/ChandeKrollStop.java +++ b/bindings/java/src/main/java/org/wickra/ChandeKrollStop.java @@ -69,6 +69,16 @@ public final class ChandeKrollStop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CHANDE_KROLL_STOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ChandelierExit.java b/bindings/java/src/main/java/org/wickra/ChandelierExit.java index f38a3354..b7545325 100644 --- a/bindings/java/src/main/java/org/wickra/ChandelierExit.java +++ b/bindings/java/src/main/java/org/wickra/ChandelierExit.java @@ -66,6 +66,16 @@ public final class ChandelierExit implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CHANDELIER_EXIT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ChoppinessIndex.java b/bindings/java/src/main/java/org/wickra/ChoppinessIndex.java index 84fb44fa..0e2259b7 100644 --- a/bindings/java/src/main/java/org/wickra/ChoppinessIndex.java +++ b/bindings/java/src/main/java/org/wickra/ChoppinessIndex.java @@ -94,6 +94,16 @@ public final class ChoppinessIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CHOPPINESS_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ClassicPivots.java b/bindings/java/src/main/java/org/wickra/ClassicPivots.java index e2eeb99d..3a084d73 100644 --- a/bindings/java/src/main/java/org/wickra/ClassicPivots.java +++ b/bindings/java/src/main/java/org/wickra/ClassicPivots.java @@ -68,6 +68,16 @@ public final class ClassicPivots implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CLASSIC_PIVOTS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CloseVsOpen.java b/bindings/java/src/main/java/org/wickra/CloseVsOpen.java index 04c9ca82..77cdea8d 100644 --- a/bindings/java/src/main/java/org/wickra/CloseVsOpen.java +++ b/bindings/java/src/main/java/org/wickra/CloseVsOpen.java @@ -91,6 +91,16 @@ public final class CloseVsOpen implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CLOSE_VS_OPEN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ClosingMarubozu.java b/bindings/java/src/main/java/org/wickra/ClosingMarubozu.java index 65a33acc..6110fc4f 100644 --- a/bindings/java/src/main/java/org/wickra/ClosingMarubozu.java +++ b/bindings/java/src/main/java/org/wickra/ClosingMarubozu.java @@ -91,6 +91,16 @@ public final class ClosingMarubozu implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CLOSING_MARUBOZU_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Cmo.java b/bindings/java/src/main/java/org/wickra/Cmo.java index 8606d38c..3c85b0ee 100644 --- a/bindings/java/src/main/java/org/wickra/Cmo.java +++ b/bindings/java/src/main/java/org/wickra/Cmo.java @@ -74,6 +74,16 @@ public final class Cmo implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CMO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CoefficientOfVariation.java b/bindings/java/src/main/java/org/wickra/CoefficientOfVariation.java index 6691bd02..6283c61d 100644 --- a/bindings/java/src/main/java/org/wickra/CoefficientOfVariation.java +++ b/bindings/java/src/main/java/org/wickra/CoefficientOfVariation.java @@ -74,6 +74,16 @@ public final class CoefficientOfVariation implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_COEFFICIENT_OF_VARIATION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Cointegration.java b/bindings/java/src/main/java/org/wickra/Cointegration.java index eda1aa9a..e1d5a0a5 100644 --- a/bindings/java/src/main/java/org/wickra/Cointegration.java +++ b/bindings/java/src/main/java/org/wickra/Cointegration.java @@ -70,6 +70,16 @@ public final class Cointegration implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_COINTEGRATION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CommonSenseRatio.java b/bindings/java/src/main/java/org/wickra/CommonSenseRatio.java index 09b95d35..4e968a27 100644 --- a/bindings/java/src/main/java/org/wickra/CommonSenseRatio.java +++ b/bindings/java/src/main/java/org/wickra/CommonSenseRatio.java @@ -74,6 +74,16 @@ public final class CommonSenseRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_COMMON_SENSE_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CompositeProfile.java b/bindings/java/src/main/java/org/wickra/CompositeProfile.java index 65cff4b3..fcb3f72b 100644 --- a/bindings/java/src/main/java/org/wickra/CompositeProfile.java +++ b/bindings/java/src/main/java/org/wickra/CompositeProfile.java @@ -70,6 +70,16 @@ public final class CompositeProfile implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_COMPOSITE_PROFILE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ConcealingBabySwallow.java b/bindings/java/src/main/java/org/wickra/ConcealingBabySwallow.java index 2943bda4..1053855f 100644 --- a/bindings/java/src/main/java/org/wickra/ConcealingBabySwallow.java +++ b/bindings/java/src/main/java/org/wickra/ConcealingBabySwallow.java @@ -91,6 +91,16 @@ public final class ConcealingBabySwallow implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CONCEALING_BABY_SWALLOW_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ConditionalValueAtRisk.java b/bindings/java/src/main/java/org/wickra/ConditionalValueAtRisk.java index 74940c0f..ebae1499 100644 --- a/bindings/java/src/main/java/org/wickra/ConditionalValueAtRisk.java +++ b/bindings/java/src/main/java/org/wickra/ConditionalValueAtRisk.java @@ -74,6 +74,16 @@ public final class ConditionalValueAtRisk implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CONDITIONAL_VALUE_AT_RISK_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ConnorsRsi.java b/bindings/java/src/main/java/org/wickra/ConnorsRsi.java index 4b5e072c..9ac34698 100644 --- a/bindings/java/src/main/java/org/wickra/ConnorsRsi.java +++ b/bindings/java/src/main/java/org/wickra/ConnorsRsi.java @@ -80,6 +80,16 @@ public final class ConnorsRsi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CONNORS_RSI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Coppock.java b/bindings/java/src/main/java/org/wickra/Coppock.java index a0307b95..c714bd55 100644 --- a/bindings/java/src/main/java/org/wickra/Coppock.java +++ b/bindings/java/src/main/java/org/wickra/Coppock.java @@ -80,6 +80,16 @@ public final class Coppock implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_COPPOCK_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CorrelationTrendIndicator.java b/bindings/java/src/main/java/org/wickra/CorrelationTrendIndicator.java index 774d4d7f..2a914f90 100644 --- a/bindings/java/src/main/java/org/wickra/CorrelationTrendIndicator.java +++ b/bindings/java/src/main/java/org/wickra/CorrelationTrendIndicator.java @@ -74,6 +74,16 @@ public final class CorrelationTrendIndicator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CORRELATION_TREND_INDICATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Counterattack.java b/bindings/java/src/main/java/org/wickra/Counterattack.java index 02ab4ab6..93afbc57 100644 --- a/bindings/java/src/main/java/org/wickra/Counterattack.java +++ b/bindings/java/src/main/java/org/wickra/Counterattack.java @@ -91,6 +91,16 @@ public final class Counterattack implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_COUNTERATTACK_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Crab.java b/bindings/java/src/main/java/org/wickra/Crab.java index ed4d8e1a..4ab5be6c 100644 --- a/bindings/java/src/main/java/org/wickra/Crab.java +++ b/bindings/java/src/main/java/org/wickra/Crab.java @@ -91,6 +91,16 @@ public final class Crab implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CRAB_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CumulativeVolumeDelta.java b/bindings/java/src/main/java/org/wickra/CumulativeVolumeDelta.java index ab2a5aac..1a69fcab 100644 --- a/bindings/java/src/main/java/org/wickra/CumulativeVolumeDelta.java +++ b/bindings/java/src/main/java/org/wickra/CumulativeVolumeDelta.java @@ -56,6 +56,16 @@ public final class CumulativeVolumeDelta implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CUMULATIVE_VOLUME_DELTA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CumulativeVolumeIndex.java b/bindings/java/src/main/java/org/wickra/CumulativeVolumeIndex.java index 312d97a2..77d97cd7 100644 --- a/bindings/java/src/main/java/org/wickra/CumulativeVolumeIndex.java +++ b/bindings/java/src/main/java/org/wickra/CumulativeVolumeIndex.java @@ -77,6 +77,16 @@ public final class CumulativeVolumeIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CUMULATIVE_VOLUME_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CupAndHandle.java b/bindings/java/src/main/java/org/wickra/CupAndHandle.java index 826289a0..a3073206 100644 --- a/bindings/java/src/main/java/org/wickra/CupAndHandle.java +++ b/bindings/java/src/main/java/org/wickra/CupAndHandle.java @@ -91,6 +91,16 @@ public final class CupAndHandle implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CUP_AND_HANDLE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/CyberneticCycle.java b/bindings/java/src/main/java/org/wickra/CyberneticCycle.java index 38faa671..f289e374 100644 --- a/bindings/java/src/main/java/org/wickra/CyberneticCycle.java +++ b/bindings/java/src/main/java/org/wickra/CyberneticCycle.java @@ -74,6 +74,16 @@ public final class CyberneticCycle implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CYBERNETIC_CYCLE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Cypher.java b/bindings/java/src/main/java/org/wickra/Cypher.java index 49963479..1ccdb781 100644 --- a/bindings/java/src/main/java/org/wickra/Cypher.java +++ b/bindings/java/src/main/java/org/wickra/Cypher.java @@ -91,6 +91,16 @@ public final class Cypher implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_CYPHER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DayOfWeekProfile.java b/bindings/java/src/main/java/org/wickra/DayOfWeekProfile.java index b0662e60..2fdfb53f 100644 --- a/bindings/java/src/main/java/org/wickra/DayOfWeekProfile.java +++ b/bindings/java/src/main/java/org/wickra/DayOfWeekProfile.java @@ -67,6 +67,16 @@ public final class DayOfWeekProfile implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DAY_OF_WEEK_PROFILE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Decycler.java b/bindings/java/src/main/java/org/wickra/Decycler.java index ace326d4..cb7e4ddb 100644 --- a/bindings/java/src/main/java/org/wickra/Decycler.java +++ b/bindings/java/src/main/java/org/wickra/Decycler.java @@ -74,6 +74,16 @@ public final class Decycler implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DECYCLER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DecyclerOscillator.java b/bindings/java/src/main/java/org/wickra/DecyclerOscillator.java index 024b7c88..da3d1c32 100644 --- a/bindings/java/src/main/java/org/wickra/DecyclerOscillator.java +++ b/bindings/java/src/main/java/org/wickra/DecyclerOscillator.java @@ -77,6 +77,16 @@ public final class DecyclerOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DECYCLER_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Dema.java b/bindings/java/src/main/java/org/wickra/Dema.java index 92b2ebc4..410e5b82 100644 --- a/bindings/java/src/main/java/org/wickra/Dema.java +++ b/bindings/java/src/main/java/org/wickra/Dema.java @@ -74,6 +74,16 @@ public final class Dema implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DEMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DemandIndex.java b/bindings/java/src/main/java/org/wickra/DemandIndex.java index 7e7f8629..97a39983 100644 --- a/bindings/java/src/main/java/org/wickra/DemandIndex.java +++ b/bindings/java/src/main/java/org/wickra/DemandIndex.java @@ -94,6 +94,16 @@ public final class DemandIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DEMAND_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DemarkPivots.java b/bindings/java/src/main/java/org/wickra/DemarkPivots.java index 20e42457..9d96d177 100644 --- a/bindings/java/src/main/java/org/wickra/DemarkPivots.java +++ b/bindings/java/src/main/java/org/wickra/DemarkPivots.java @@ -64,6 +64,16 @@ public final class DemarkPivots implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DEMARK_PIVOTS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DepthSlope.java b/bindings/java/src/main/java/org/wickra/DepthSlope.java index 7e8f5d5e..e826b13d 100644 --- a/bindings/java/src/main/java/org/wickra/DepthSlope.java +++ b/bindings/java/src/main/java/org/wickra/DepthSlope.java @@ -66,6 +66,16 @@ public final class DepthSlope implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DEPTH_SLOPE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DerivativeOscillator.java b/bindings/java/src/main/java/org/wickra/DerivativeOscillator.java index c2057811..38d759d9 100644 --- a/bindings/java/src/main/java/org/wickra/DerivativeOscillator.java +++ b/bindings/java/src/main/java/org/wickra/DerivativeOscillator.java @@ -83,6 +83,16 @@ public final class DerivativeOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DERIVATIVE_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DetrendedStdDev.java b/bindings/java/src/main/java/org/wickra/DetrendedStdDev.java index e517d539..99766966 100644 --- a/bindings/java/src/main/java/org/wickra/DetrendedStdDev.java +++ b/bindings/java/src/main/java/org/wickra/DetrendedStdDev.java @@ -74,6 +74,16 @@ public final class DetrendedStdDev implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DETRENDED_STD_DEV_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DisparityIndex.java b/bindings/java/src/main/java/org/wickra/DisparityIndex.java index 64ece9d7..046bcb62 100644 --- a/bindings/java/src/main/java/org/wickra/DisparityIndex.java +++ b/bindings/java/src/main/java/org/wickra/DisparityIndex.java @@ -74,6 +74,16 @@ public final class DisparityIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DISPARITY_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DistanceSsd.java b/bindings/java/src/main/java/org/wickra/DistanceSsd.java index 73e789d3..5996e434 100644 --- a/bindings/java/src/main/java/org/wickra/DistanceSsd.java +++ b/bindings/java/src/main/java/org/wickra/DistanceSsd.java @@ -78,6 +78,16 @@ public final class DistanceSsd implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DISTANCE_SSD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Doji.java b/bindings/java/src/main/java/org/wickra/Doji.java index a9360cdc..31f9e766 100644 --- a/bindings/java/src/main/java/org/wickra/Doji.java +++ b/bindings/java/src/main/java/org/wickra/Doji.java @@ -91,6 +91,16 @@ public final class Doji implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DOJI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DojiStar.java b/bindings/java/src/main/java/org/wickra/DojiStar.java index 666e322b..cda017f3 100644 --- a/bindings/java/src/main/java/org/wickra/DojiStar.java +++ b/bindings/java/src/main/java/org/wickra/DojiStar.java @@ -91,6 +91,16 @@ public final class DojiStar implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DOJI_STAR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DollarBars.java b/bindings/java/src/main/java/org/wickra/DollarBars.java index 4e01fb89..a1f1d9cf 100644 --- a/bindings/java/src/main/java/org/wickra/DollarBars.java +++ b/bindings/java/src/main/java/org/wickra/DollarBars.java @@ -53,6 +53,16 @@ public final class DollarBars implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DOLLAR_BARS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Donchian.java b/bindings/java/src/main/java/org/wickra/Donchian.java index 1507be8f..76f7c391 100644 --- a/bindings/java/src/main/java/org/wickra/Donchian.java +++ b/bindings/java/src/main/java/org/wickra/Donchian.java @@ -67,6 +67,16 @@ public final class Donchian implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DONCHIAN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DonchianStop.java b/bindings/java/src/main/java/org/wickra/DonchianStop.java index dc0e5a9a..36a83cf4 100644 --- a/bindings/java/src/main/java/org/wickra/DonchianStop.java +++ b/bindings/java/src/main/java/org/wickra/DonchianStop.java @@ -66,6 +66,16 @@ public final class DonchianStop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DONCHIAN_STOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DoubleBollinger.java b/bindings/java/src/main/java/org/wickra/DoubleBollinger.java index 22c19834..2a852dba 100644 --- a/bindings/java/src/main/java/org/wickra/DoubleBollinger.java +++ b/bindings/java/src/main/java/org/wickra/DoubleBollinger.java @@ -69,6 +69,16 @@ public final class DoubleBollinger implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DOUBLE_BOLLINGER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DoubleTopBottom.java b/bindings/java/src/main/java/org/wickra/DoubleTopBottom.java index f12ff1d6..1ad9c0bc 100644 --- a/bindings/java/src/main/java/org/wickra/DoubleTopBottom.java +++ b/bindings/java/src/main/java/org/wickra/DoubleTopBottom.java @@ -91,6 +91,16 @@ public final class DoubleTopBottom implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DOUBLE_TOP_BOTTOM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DownsideGapThreeMethods.java b/bindings/java/src/main/java/org/wickra/DownsideGapThreeMethods.java index e05f6465..f9a79d4a 100644 --- a/bindings/java/src/main/java/org/wickra/DownsideGapThreeMethods.java +++ b/bindings/java/src/main/java/org/wickra/DownsideGapThreeMethods.java @@ -91,6 +91,16 @@ public final class DownsideGapThreeMethods implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DOWNSIDE_GAP_THREE_METHODS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Dpo.java b/bindings/java/src/main/java/org/wickra/Dpo.java index c392c609..da10899d 100644 --- a/bindings/java/src/main/java/org/wickra/Dpo.java +++ b/bindings/java/src/main/java/org/wickra/Dpo.java @@ -74,6 +74,16 @@ public final class Dpo implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DPO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DragonflyDoji.java b/bindings/java/src/main/java/org/wickra/DragonflyDoji.java index 58de7694..fc628d56 100644 --- a/bindings/java/src/main/java/org/wickra/DragonflyDoji.java +++ b/bindings/java/src/main/java/org/wickra/DragonflyDoji.java @@ -91,6 +91,16 @@ public final class DragonflyDoji implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DRAGONFLY_DOJI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DrawdownDuration.java b/bindings/java/src/main/java/org/wickra/DrawdownDuration.java index b6c7f086..227f14ba 100644 --- a/bindings/java/src/main/java/org/wickra/DrawdownDuration.java +++ b/bindings/java/src/main/java/org/wickra/DrawdownDuration.java @@ -71,6 +71,16 @@ public final class DrawdownDuration implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DRAWDOWN_DURATION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DumplingTop.java b/bindings/java/src/main/java/org/wickra/DumplingTop.java index 4f15ed58..4bebb57c 100644 --- a/bindings/java/src/main/java/org/wickra/DumplingTop.java +++ b/bindings/java/src/main/java/org/wickra/DumplingTop.java @@ -94,6 +94,16 @@ public final class DumplingTop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DUMPLING_TOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Dx.java b/bindings/java/src/main/java/org/wickra/Dx.java index e46b4364..072ffb70 100644 --- a/bindings/java/src/main/java/org/wickra/Dx.java +++ b/bindings/java/src/main/java/org/wickra/Dx.java @@ -94,6 +94,16 @@ public final class Dx implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/DynamicMomentumIndex.java b/bindings/java/src/main/java/org/wickra/DynamicMomentumIndex.java index 252e064c..d6a18def 100644 --- a/bindings/java/src/main/java/org/wickra/DynamicMomentumIndex.java +++ b/bindings/java/src/main/java/org/wickra/DynamicMomentumIndex.java @@ -74,6 +74,16 @@ public final class DynamicMomentumIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_DYNAMIC_MOMENTUM_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/EaseOfMovement.java b/bindings/java/src/main/java/org/wickra/EaseOfMovement.java index 5f895b30..020ea33e 100644 --- a/bindings/java/src/main/java/org/wickra/EaseOfMovement.java +++ b/bindings/java/src/main/java/org/wickra/EaseOfMovement.java @@ -94,6 +94,16 @@ public final class EaseOfMovement implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_EASE_OF_MOVEMENT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/EffectiveSpread.java b/bindings/java/src/main/java/org/wickra/EffectiveSpread.java index b3146a2d..c50e572b 100644 --- a/bindings/java/src/main/java/org/wickra/EffectiveSpread.java +++ b/bindings/java/src/main/java/org/wickra/EffectiveSpread.java @@ -56,6 +56,16 @@ public final class EffectiveSpread implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_EFFECTIVE_SPREAD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/EhlersStochastic.java b/bindings/java/src/main/java/org/wickra/EhlersStochastic.java index 4033d9bc..c62a8910 100644 --- a/bindings/java/src/main/java/org/wickra/EhlersStochastic.java +++ b/bindings/java/src/main/java/org/wickra/EhlersStochastic.java @@ -74,6 +74,16 @@ public final class EhlersStochastic implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_EHLERS_STOCHASTIC_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Ehma.java b/bindings/java/src/main/java/org/wickra/Ehma.java index 423cf038..0bb202b5 100644 --- a/bindings/java/src/main/java/org/wickra/Ehma.java +++ b/bindings/java/src/main/java/org/wickra/Ehma.java @@ -74,6 +74,16 @@ public final class Ehma implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_EHMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ElderImpulse.java b/bindings/java/src/main/java/org/wickra/ElderImpulse.java index 9338faf9..cb24d4cc 100644 --- a/bindings/java/src/main/java/org/wickra/ElderImpulse.java +++ b/bindings/java/src/main/java/org/wickra/ElderImpulse.java @@ -83,6 +83,16 @@ public final class ElderImpulse implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ELDER_IMPULSE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ElderRay.java b/bindings/java/src/main/java/org/wickra/ElderRay.java index 7100d198..a9d160d1 100644 --- a/bindings/java/src/main/java/org/wickra/ElderRay.java +++ b/bindings/java/src/main/java/org/wickra/ElderRay.java @@ -66,6 +66,16 @@ public final class ElderRay implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ELDER_RAY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ElderSafeZone.java b/bindings/java/src/main/java/org/wickra/ElderSafeZone.java index f9671276..2933c8bd 100644 --- a/bindings/java/src/main/java/org/wickra/ElderSafeZone.java +++ b/bindings/java/src/main/java/org/wickra/ElderSafeZone.java @@ -66,6 +66,16 @@ public final class ElderSafeZone implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ELDER_SAFE_ZONE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Ema.java b/bindings/java/src/main/java/org/wickra/Ema.java index bbc299f7..8861dc66 100644 --- a/bindings/java/src/main/java/org/wickra/Ema.java +++ b/bindings/java/src/main/java/org/wickra/Ema.java @@ -74,6 +74,16 @@ public final class Ema implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_EMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/EmpiricalModeDecomposition.java b/bindings/java/src/main/java/org/wickra/EmpiricalModeDecomposition.java index 035f6b90..44cf114b 100644 --- a/bindings/java/src/main/java/org/wickra/EmpiricalModeDecomposition.java +++ b/bindings/java/src/main/java/org/wickra/EmpiricalModeDecomposition.java @@ -74,6 +74,16 @@ public final class EmpiricalModeDecomposition implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_EMPIRICAL_MODE_DECOMPOSITION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Engulfing.java b/bindings/java/src/main/java/org/wickra/Engulfing.java index 534df409..73d47198 100644 --- a/bindings/java/src/main/java/org/wickra/Engulfing.java +++ b/bindings/java/src/main/java/org/wickra/Engulfing.java @@ -91,6 +91,16 @@ public final class Engulfing implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ENGULFING_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Equivolume.java b/bindings/java/src/main/java/org/wickra/Equivolume.java index 267a57fc..87c1feb6 100644 --- a/bindings/java/src/main/java/org/wickra/Equivolume.java +++ b/bindings/java/src/main/java/org/wickra/Equivolume.java @@ -66,6 +66,16 @@ public final class Equivolume implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_EQUIVOLUME_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/EstimatedLeverageRatio.java b/bindings/java/src/main/java/org/wickra/EstimatedLeverageRatio.java index be7d6f4f..cf1149b1 100644 --- a/bindings/java/src/main/java/org/wickra/EstimatedLeverageRatio.java +++ b/bindings/java/src/main/java/org/wickra/EstimatedLeverageRatio.java @@ -56,6 +56,16 @@ public final class EstimatedLeverageRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ESTIMATED_LEVERAGE_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/EvenBetterSinewave.java b/bindings/java/src/main/java/org/wickra/EvenBetterSinewave.java index f1c4c8dc..2b526b7a 100644 --- a/bindings/java/src/main/java/org/wickra/EvenBetterSinewave.java +++ b/bindings/java/src/main/java/org/wickra/EvenBetterSinewave.java @@ -77,6 +77,16 @@ public final class EvenBetterSinewave implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_EVEN_BETTER_SINEWAVE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/EveningDojiStar.java b/bindings/java/src/main/java/org/wickra/EveningDojiStar.java index 1ba587ee..7a9c9b08 100644 --- a/bindings/java/src/main/java/org/wickra/EveningDojiStar.java +++ b/bindings/java/src/main/java/org/wickra/EveningDojiStar.java @@ -91,6 +91,16 @@ public final class EveningDojiStar implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_EVENING_DOJI_STAR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Evwma.java b/bindings/java/src/main/java/org/wickra/Evwma.java index 7154f292..cc73f2d2 100644 --- a/bindings/java/src/main/java/org/wickra/Evwma.java +++ b/bindings/java/src/main/java/org/wickra/Evwma.java @@ -94,6 +94,16 @@ public final class Evwma implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_EVWMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/EwmaVolatility.java b/bindings/java/src/main/java/org/wickra/EwmaVolatility.java index d47d0332..e4364945 100644 --- a/bindings/java/src/main/java/org/wickra/EwmaVolatility.java +++ b/bindings/java/src/main/java/org/wickra/EwmaVolatility.java @@ -71,6 +71,16 @@ public final class EwmaVolatility implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_EWMA_VOLATILITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Expectancy.java b/bindings/java/src/main/java/org/wickra/Expectancy.java index f94b3b95..2d355129 100644 --- a/bindings/java/src/main/java/org/wickra/Expectancy.java +++ b/bindings/java/src/main/java/org/wickra/Expectancy.java @@ -74,6 +74,16 @@ public final class Expectancy implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_EXPECTANCY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FallingThreeMethods.java b/bindings/java/src/main/java/org/wickra/FallingThreeMethods.java index ac489411..ff074505 100644 --- a/bindings/java/src/main/java/org/wickra/FallingThreeMethods.java +++ b/bindings/java/src/main/java/org/wickra/FallingThreeMethods.java @@ -91,6 +91,16 @@ public final class FallingThreeMethods implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FALLING_THREE_METHODS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Fama.java b/bindings/java/src/main/java/org/wickra/Fama.java index 7e69dbe4..9cd26329 100644 --- a/bindings/java/src/main/java/org/wickra/Fama.java +++ b/bindings/java/src/main/java/org/wickra/Fama.java @@ -71,6 +71,16 @@ public final class Fama implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FAMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FibArcs.java b/bindings/java/src/main/java/org/wickra/FibArcs.java index 5455164a..017bea9d 100644 --- a/bindings/java/src/main/java/org/wickra/FibArcs.java +++ b/bindings/java/src/main/java/org/wickra/FibArcs.java @@ -64,6 +64,16 @@ public final class FibArcs implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FIB_ARCS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FibChannel.java b/bindings/java/src/main/java/org/wickra/FibChannel.java index 5bc72c06..955445b8 100644 --- a/bindings/java/src/main/java/org/wickra/FibChannel.java +++ b/bindings/java/src/main/java/org/wickra/FibChannel.java @@ -65,6 +65,16 @@ public final class FibChannel implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FIB_CHANNEL_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FibConfluence.java b/bindings/java/src/main/java/org/wickra/FibConfluence.java index e3e0eb5f..f34ba0c3 100644 --- a/bindings/java/src/main/java/org/wickra/FibConfluence.java +++ b/bindings/java/src/main/java/org/wickra/FibConfluence.java @@ -63,6 +63,16 @@ public final class FibConfluence implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FIB_CONFLUENCE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FibExtension.java b/bindings/java/src/main/java/org/wickra/FibExtension.java index fcaceb3b..b12310a2 100644 --- a/bindings/java/src/main/java/org/wickra/FibExtension.java +++ b/bindings/java/src/main/java/org/wickra/FibExtension.java @@ -66,6 +66,16 @@ public final class FibExtension implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FIB_EXTENSION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FibFan.java b/bindings/java/src/main/java/org/wickra/FibFan.java index ba913171..ec75c9d2 100644 --- a/bindings/java/src/main/java/org/wickra/FibFan.java +++ b/bindings/java/src/main/java/org/wickra/FibFan.java @@ -64,6 +64,16 @@ public final class FibFan implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FIB_FAN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FibProjection.java b/bindings/java/src/main/java/org/wickra/FibProjection.java index b942bb52..5bda646a 100644 --- a/bindings/java/src/main/java/org/wickra/FibProjection.java +++ b/bindings/java/src/main/java/org/wickra/FibProjection.java @@ -65,6 +65,16 @@ public final class FibProjection implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FIB_PROJECTION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FibRetracement.java b/bindings/java/src/main/java/org/wickra/FibRetracement.java index d9aed6ba..39eec734 100644 --- a/bindings/java/src/main/java/org/wickra/FibRetracement.java +++ b/bindings/java/src/main/java/org/wickra/FibRetracement.java @@ -68,6 +68,16 @@ public final class FibRetracement implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FIB_RETRACEMENT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FibTimeZones.java b/bindings/java/src/main/java/org/wickra/FibTimeZones.java index a60f4b68..965a4044 100644 --- a/bindings/java/src/main/java/org/wickra/FibTimeZones.java +++ b/bindings/java/src/main/java/org/wickra/FibTimeZones.java @@ -63,6 +63,16 @@ public final class FibTimeZones implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FIB_TIME_ZONES_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FibonacciPivots.java b/bindings/java/src/main/java/org/wickra/FibonacciPivots.java index 46f79121..71870426 100644 --- a/bindings/java/src/main/java/org/wickra/FibonacciPivots.java +++ b/bindings/java/src/main/java/org/wickra/FibonacciPivots.java @@ -68,6 +68,16 @@ public final class FibonacciPivots implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FIBONACCI_PIVOTS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FisherRsi.java b/bindings/java/src/main/java/org/wickra/FisherRsi.java index 8582a3f7..365534d9 100644 --- a/bindings/java/src/main/java/org/wickra/FisherRsi.java +++ b/bindings/java/src/main/java/org/wickra/FisherRsi.java @@ -74,6 +74,16 @@ public final class FisherRsi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FISHER_RSI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FisherTransform.java b/bindings/java/src/main/java/org/wickra/FisherTransform.java index 189ec247..ab128cc6 100644 --- a/bindings/java/src/main/java/org/wickra/FisherTransform.java +++ b/bindings/java/src/main/java/org/wickra/FisherTransform.java @@ -74,6 +74,16 @@ public final class FisherTransform implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FISHER_TRANSFORM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FlagPennant.java b/bindings/java/src/main/java/org/wickra/FlagPennant.java index 903f65f4..663cfa7a 100644 --- a/bindings/java/src/main/java/org/wickra/FlagPennant.java +++ b/bindings/java/src/main/java/org/wickra/FlagPennant.java @@ -91,6 +91,16 @@ public final class FlagPennant implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FLAG_PENNANT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Footprint.java b/bindings/java/src/main/java/org/wickra/Footprint.java index 49a808c8..cb176e5d 100644 --- a/bindings/java/src/main/java/org/wickra/Footprint.java +++ b/bindings/java/src/main/java/org/wickra/Footprint.java @@ -70,6 +70,16 @@ public final class Footprint implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FOOTPRINT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ForceIndex.java b/bindings/java/src/main/java/org/wickra/ForceIndex.java index 9b710b45..c2bdcf9d 100644 --- a/bindings/java/src/main/java/org/wickra/ForceIndex.java +++ b/bindings/java/src/main/java/org/wickra/ForceIndex.java @@ -94,6 +94,16 @@ public final class ForceIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FORCE_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FractalChaosBands.java b/bindings/java/src/main/java/org/wickra/FractalChaosBands.java index 23a6ef9c..0b121cea 100644 --- a/bindings/java/src/main/java/org/wickra/FractalChaosBands.java +++ b/bindings/java/src/main/java/org/wickra/FractalChaosBands.java @@ -66,6 +66,16 @@ public final class FractalChaosBands implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FRACTAL_CHAOS_BANDS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Frama.java b/bindings/java/src/main/java/org/wickra/Frama.java index fca3dfb6..cce2cb2c 100644 --- a/bindings/java/src/main/java/org/wickra/Frama.java +++ b/bindings/java/src/main/java/org/wickra/Frama.java @@ -74,6 +74,16 @@ public final class Frama implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FRAMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FryPanBottom.java b/bindings/java/src/main/java/org/wickra/FryPanBottom.java index 4479befa..353424b6 100644 --- a/bindings/java/src/main/java/org/wickra/FryPanBottom.java +++ b/bindings/java/src/main/java/org/wickra/FryPanBottom.java @@ -94,6 +94,16 @@ public final class FryPanBottom implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FRY_PAN_BOTTOM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FundingBasis.java b/bindings/java/src/main/java/org/wickra/FundingBasis.java index 937c4564..5633390f 100644 --- a/bindings/java/src/main/java/org/wickra/FundingBasis.java +++ b/bindings/java/src/main/java/org/wickra/FundingBasis.java @@ -56,6 +56,16 @@ public final class FundingBasis implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FUNDING_BASIS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FundingImpliedApr.java b/bindings/java/src/main/java/org/wickra/FundingImpliedApr.java index 0589262a..26a2ec93 100644 --- a/bindings/java/src/main/java/org/wickra/FundingImpliedApr.java +++ b/bindings/java/src/main/java/org/wickra/FundingImpliedApr.java @@ -56,6 +56,16 @@ public final class FundingImpliedApr implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FUNDING_IMPLIED_APR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FundingRate.java b/bindings/java/src/main/java/org/wickra/FundingRate.java index c7486059..e18b2683 100644 --- a/bindings/java/src/main/java/org/wickra/FundingRate.java +++ b/bindings/java/src/main/java/org/wickra/FundingRate.java @@ -56,6 +56,16 @@ public final class FundingRate implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FUNDING_RATE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FundingRateMean.java b/bindings/java/src/main/java/org/wickra/FundingRateMean.java index c75718ad..b814141a 100644 --- a/bindings/java/src/main/java/org/wickra/FundingRateMean.java +++ b/bindings/java/src/main/java/org/wickra/FundingRateMean.java @@ -59,6 +59,16 @@ public final class FundingRateMean implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FUNDING_RATE_MEAN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/FundingRateZScore.java b/bindings/java/src/main/java/org/wickra/FundingRateZScore.java index be4569fa..71897393 100644 --- a/bindings/java/src/main/java/org/wickra/FundingRateZScore.java +++ b/bindings/java/src/main/java/org/wickra/FundingRateZScore.java @@ -59,6 +59,16 @@ public final class FundingRateZScore implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_FUNDING_RATE_Z_SCORE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/GainLossRatio.java b/bindings/java/src/main/java/org/wickra/GainLossRatio.java index dd6bd088..7ccd2738 100644 --- a/bindings/java/src/main/java/org/wickra/GainLossRatio.java +++ b/bindings/java/src/main/java/org/wickra/GainLossRatio.java @@ -74,6 +74,16 @@ public final class GainLossRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_GAIN_LOSS_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/GainToPainRatio.java b/bindings/java/src/main/java/org/wickra/GainToPainRatio.java index f1720681..a3db7fad 100644 --- a/bindings/java/src/main/java/org/wickra/GainToPainRatio.java +++ b/bindings/java/src/main/java/org/wickra/GainToPainRatio.java @@ -74,6 +74,16 @@ public final class GainToPainRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_GAIN_TO_PAIN_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/GapSideBySideWhite.java b/bindings/java/src/main/java/org/wickra/GapSideBySideWhite.java index 95e58040..33eee149 100644 --- a/bindings/java/src/main/java/org/wickra/GapSideBySideWhite.java +++ b/bindings/java/src/main/java/org/wickra/GapSideBySideWhite.java @@ -91,6 +91,16 @@ public final class GapSideBySideWhite implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_GAP_SIDE_BY_SIDE_WHITE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Garch11.java b/bindings/java/src/main/java/org/wickra/Garch11.java index e9c56aef..f3081893 100644 --- a/bindings/java/src/main/java/org/wickra/Garch11.java +++ b/bindings/java/src/main/java/org/wickra/Garch11.java @@ -71,6 +71,16 @@ public final class Garch11 implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_GARCH11_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/GarmanKlassVolatility.java b/bindings/java/src/main/java/org/wickra/GarmanKlassVolatility.java index 3ea15f83..b28a3d76 100644 --- a/bindings/java/src/main/java/org/wickra/GarmanKlassVolatility.java +++ b/bindings/java/src/main/java/org/wickra/GarmanKlassVolatility.java @@ -97,6 +97,16 @@ public final class GarmanKlassVolatility implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_GARMAN_KLASS_VOLATILITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Gartley.java b/bindings/java/src/main/java/org/wickra/Gartley.java index 9630779b..e4d455e4 100644 --- a/bindings/java/src/main/java/org/wickra/Gartley.java +++ b/bindings/java/src/main/java/org/wickra/Gartley.java @@ -91,6 +91,16 @@ public final class Gartley implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_GARTLEY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/GatorOscillator.java b/bindings/java/src/main/java/org/wickra/GatorOscillator.java index 08c97bc5..58032877 100644 --- a/bindings/java/src/main/java/org/wickra/GatorOscillator.java +++ b/bindings/java/src/main/java/org/wickra/GatorOscillator.java @@ -72,6 +72,16 @@ public final class GatorOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_GATOR_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/GeneralizedDema.java b/bindings/java/src/main/java/org/wickra/GeneralizedDema.java index 201c1e0f..6e4f7877 100644 --- a/bindings/java/src/main/java/org/wickra/GeneralizedDema.java +++ b/bindings/java/src/main/java/org/wickra/GeneralizedDema.java @@ -74,6 +74,16 @@ public final class GeneralizedDema implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_GENERALIZED_DEMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/GeometricMa.java b/bindings/java/src/main/java/org/wickra/GeometricMa.java index a0ce12ea..21ee4023 100644 --- a/bindings/java/src/main/java/org/wickra/GeometricMa.java +++ b/bindings/java/src/main/java/org/wickra/GeometricMa.java @@ -74,6 +74,16 @@ public final class GeometricMa implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_GEOMETRIC_MA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/GoldenPocket.java b/bindings/java/src/main/java/org/wickra/GoldenPocket.java index 0b9b2a72..1ff7a787 100644 --- a/bindings/java/src/main/java/org/wickra/GoldenPocket.java +++ b/bindings/java/src/main/java/org/wickra/GoldenPocket.java @@ -64,6 +64,16 @@ public final class GoldenPocket implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_GOLDEN_POCKET_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/GrangerCausality.java b/bindings/java/src/main/java/org/wickra/GrangerCausality.java index 281eb9d7..a195aeb0 100644 --- a/bindings/java/src/main/java/org/wickra/GrangerCausality.java +++ b/bindings/java/src/main/java/org/wickra/GrangerCausality.java @@ -81,6 +81,16 @@ public final class GrangerCausality implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_GRANGER_CAUSALITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/GravestoneDoji.java b/bindings/java/src/main/java/org/wickra/GravestoneDoji.java index 7324a757..0c8db930 100644 --- a/bindings/java/src/main/java/org/wickra/GravestoneDoji.java +++ b/bindings/java/src/main/java/org/wickra/GravestoneDoji.java @@ -91,6 +91,16 @@ public final class GravestoneDoji implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_GRAVESTONE_DOJI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Hammer.java b/bindings/java/src/main/java/org/wickra/Hammer.java index e4991657..327d3d77 100644 --- a/bindings/java/src/main/java/org/wickra/Hammer.java +++ b/bindings/java/src/main/java/org/wickra/Hammer.java @@ -91,6 +91,16 @@ public final class Hammer implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HAMMER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HangingMan.java b/bindings/java/src/main/java/org/wickra/HangingMan.java index d9b23945..dccbe4e6 100644 --- a/bindings/java/src/main/java/org/wickra/HangingMan.java +++ b/bindings/java/src/main/java/org/wickra/HangingMan.java @@ -91,6 +91,16 @@ public final class HangingMan implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HANGING_MAN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Harami.java b/bindings/java/src/main/java/org/wickra/Harami.java index 9ba1d02c..53c7ed37 100644 --- a/bindings/java/src/main/java/org/wickra/Harami.java +++ b/bindings/java/src/main/java/org/wickra/Harami.java @@ -91,6 +91,16 @@ public final class Harami implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HARAMI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HaramiCross.java b/bindings/java/src/main/java/org/wickra/HaramiCross.java index 2f634de8..e26432a9 100644 --- a/bindings/java/src/main/java/org/wickra/HaramiCross.java +++ b/bindings/java/src/main/java/org/wickra/HaramiCross.java @@ -91,6 +91,16 @@ public final class HaramiCross implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HARAMI_CROSS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HasbrouckInformationShare.java b/bindings/java/src/main/java/org/wickra/HasbrouckInformationShare.java index 6ad887fe..e82b2de7 100644 --- a/bindings/java/src/main/java/org/wickra/HasbrouckInformationShare.java +++ b/bindings/java/src/main/java/org/wickra/HasbrouckInformationShare.java @@ -78,6 +78,16 @@ public final class HasbrouckInformationShare implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HASBROUCK_INFORMATION_SHARE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HeadAndShoulders.java b/bindings/java/src/main/java/org/wickra/HeadAndShoulders.java index c0379427..2a160722 100644 --- a/bindings/java/src/main/java/org/wickra/HeadAndShoulders.java +++ b/bindings/java/src/main/java/org/wickra/HeadAndShoulders.java @@ -91,6 +91,16 @@ public final class HeadAndShoulders implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HEAD_AND_SHOULDERS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HeikinAshi.java b/bindings/java/src/main/java/org/wickra/HeikinAshi.java index 7d567b67..56a9a2d1 100644 --- a/bindings/java/src/main/java/org/wickra/HeikinAshi.java +++ b/bindings/java/src/main/java/org/wickra/HeikinAshi.java @@ -65,6 +65,16 @@ public final class HeikinAshi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HEIKIN_ASHI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HeikinAshiOscillator.java b/bindings/java/src/main/java/org/wickra/HeikinAshiOscillator.java index 07277700..1b2aebb4 100644 --- a/bindings/java/src/main/java/org/wickra/HeikinAshiOscillator.java +++ b/bindings/java/src/main/java/org/wickra/HeikinAshiOscillator.java @@ -94,6 +94,16 @@ public final class HeikinAshiOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HEIKIN_ASHI_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HiLoActivator.java b/bindings/java/src/main/java/org/wickra/HiLoActivator.java index 788d2057..b6435373 100644 --- a/bindings/java/src/main/java/org/wickra/HiLoActivator.java +++ b/bindings/java/src/main/java/org/wickra/HiLoActivator.java @@ -94,6 +94,16 @@ public final class HiLoActivator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HI_LO_ACTIVATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HighLowIndex.java b/bindings/java/src/main/java/org/wickra/HighLowIndex.java index c3cbe684..1f69c5f4 100644 --- a/bindings/java/src/main/java/org/wickra/HighLowIndex.java +++ b/bindings/java/src/main/java/org/wickra/HighLowIndex.java @@ -80,6 +80,16 @@ public final class HighLowIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HIGH_LOW_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HighLowRange.java b/bindings/java/src/main/java/org/wickra/HighLowRange.java index e827d223..4c8174e5 100644 --- a/bindings/java/src/main/java/org/wickra/HighLowRange.java +++ b/bindings/java/src/main/java/org/wickra/HighLowRange.java @@ -91,6 +91,16 @@ public final class HighLowRange implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HIGH_LOW_RANGE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HighLowVolumeNodes.java b/bindings/java/src/main/java/org/wickra/HighLowVolumeNodes.java index cf61bb07..c2660d9d 100644 --- a/bindings/java/src/main/java/org/wickra/HighLowVolumeNodes.java +++ b/bindings/java/src/main/java/org/wickra/HighLowVolumeNodes.java @@ -69,6 +69,16 @@ public final class HighLowVolumeNodes implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HIGH_LOW_VOLUME_NODES_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HighWave.java b/bindings/java/src/main/java/org/wickra/HighWave.java index ef70e693..7bc014d1 100644 --- a/bindings/java/src/main/java/org/wickra/HighWave.java +++ b/bindings/java/src/main/java/org/wickra/HighWave.java @@ -91,6 +91,16 @@ public final class HighWave implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HIGH_WAVE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HighpassFilter.java b/bindings/java/src/main/java/org/wickra/HighpassFilter.java index b0ee09da..a672d77a 100644 --- a/bindings/java/src/main/java/org/wickra/HighpassFilter.java +++ b/bindings/java/src/main/java/org/wickra/HighpassFilter.java @@ -74,6 +74,16 @@ public final class HighpassFilter implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HIGHPASS_FILTER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Hikkake.java b/bindings/java/src/main/java/org/wickra/Hikkake.java index 3dfd04d6..83477eb7 100644 --- a/bindings/java/src/main/java/org/wickra/Hikkake.java +++ b/bindings/java/src/main/java/org/wickra/Hikkake.java @@ -91,6 +91,16 @@ public final class Hikkake implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HIKKAKE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HikkakeModified.java b/bindings/java/src/main/java/org/wickra/HikkakeModified.java index 6ade6ee7..32c159c3 100644 --- a/bindings/java/src/main/java/org/wickra/HikkakeModified.java +++ b/bindings/java/src/main/java/org/wickra/HikkakeModified.java @@ -91,6 +91,16 @@ public final class HikkakeModified implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HIKKAKE_MODIFIED_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HilbertDominantCycle.java b/bindings/java/src/main/java/org/wickra/HilbertDominantCycle.java index fd8553f3..311cef7c 100644 --- a/bindings/java/src/main/java/org/wickra/HilbertDominantCycle.java +++ b/bindings/java/src/main/java/org/wickra/HilbertDominantCycle.java @@ -71,6 +71,16 @@ public final class HilbertDominantCycle implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HILBERT_DOMINANT_CYCLE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HistoricalVolatility.java b/bindings/java/src/main/java/org/wickra/HistoricalVolatility.java index ed8ab59d..fe905039 100644 --- a/bindings/java/src/main/java/org/wickra/HistoricalVolatility.java +++ b/bindings/java/src/main/java/org/wickra/HistoricalVolatility.java @@ -77,6 +77,16 @@ public final class HistoricalVolatility implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HISTORICAL_VOLATILITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Hma.java b/bindings/java/src/main/java/org/wickra/Hma.java index 0fd365d3..93c4713c 100644 --- a/bindings/java/src/main/java/org/wickra/Hma.java +++ b/bindings/java/src/main/java/org/wickra/Hma.java @@ -74,6 +74,16 @@ public final class Hma implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HoltWinters.java b/bindings/java/src/main/java/org/wickra/HoltWinters.java index ee573790..2c66c914 100644 --- a/bindings/java/src/main/java/org/wickra/HoltWinters.java +++ b/bindings/java/src/main/java/org/wickra/HoltWinters.java @@ -71,6 +71,16 @@ public final class HoltWinters implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HOLT_WINTERS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HomingPigeon.java b/bindings/java/src/main/java/org/wickra/HomingPigeon.java index 65acf595..3895603b 100644 --- a/bindings/java/src/main/java/org/wickra/HomingPigeon.java +++ b/bindings/java/src/main/java/org/wickra/HomingPigeon.java @@ -91,6 +91,16 @@ public final class HomingPigeon implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HOMING_PIGEON_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HtDcPhase.java b/bindings/java/src/main/java/org/wickra/HtDcPhase.java index dd2282cf..39045aa1 100644 --- a/bindings/java/src/main/java/org/wickra/HtDcPhase.java +++ b/bindings/java/src/main/java/org/wickra/HtDcPhase.java @@ -71,6 +71,16 @@ public final class HtDcPhase implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HT_DC_PHASE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HtPhasor.java b/bindings/java/src/main/java/org/wickra/HtPhasor.java index 77d0b2c0..9fe2aaa4 100644 --- a/bindings/java/src/main/java/org/wickra/HtPhasor.java +++ b/bindings/java/src/main/java/org/wickra/HtPhasor.java @@ -63,6 +63,16 @@ public final class HtPhasor implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HT_PHASOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HtTrendMode.java b/bindings/java/src/main/java/org/wickra/HtTrendMode.java index 6497700c..36b2f89d 100644 --- a/bindings/java/src/main/java/org/wickra/HtTrendMode.java +++ b/bindings/java/src/main/java/org/wickra/HtTrendMode.java @@ -71,6 +71,16 @@ public final class HtTrendMode implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HT_TREND_MODE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HurstChannel.java b/bindings/java/src/main/java/org/wickra/HurstChannel.java index 73e2f449..15bf2322 100644 --- a/bindings/java/src/main/java/org/wickra/HurstChannel.java +++ b/bindings/java/src/main/java/org/wickra/HurstChannel.java @@ -67,6 +67,16 @@ public final class HurstChannel implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HURST_CHANNEL_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/HurstExponent.java b/bindings/java/src/main/java/org/wickra/HurstExponent.java index df8ab56d..167c3c40 100644 --- a/bindings/java/src/main/java/org/wickra/HurstExponent.java +++ b/bindings/java/src/main/java/org/wickra/HurstExponent.java @@ -77,6 +77,16 @@ public final class HurstExponent implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_HURST_EXPONENT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Ichimoku.java b/bindings/java/src/main/java/org/wickra/Ichimoku.java index 46dfd505..9b095a23 100644 --- a/bindings/java/src/main/java/org/wickra/Ichimoku.java +++ b/bindings/java/src/main/java/org/wickra/Ichimoku.java @@ -78,6 +78,16 @@ public final class Ichimoku implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ICHIMOKU_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/IdenticalThreeCrows.java b/bindings/java/src/main/java/org/wickra/IdenticalThreeCrows.java index 4547e53e..86cf7dca 100644 --- a/bindings/java/src/main/java/org/wickra/IdenticalThreeCrows.java +++ b/bindings/java/src/main/java/org/wickra/IdenticalThreeCrows.java @@ -91,6 +91,16 @@ public final class IdenticalThreeCrows implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_IDENTICAL_THREE_CROWS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ImbalanceBars.java b/bindings/java/src/main/java/org/wickra/ImbalanceBars.java index b267193c..9870873b 100644 --- a/bindings/java/src/main/java/org/wickra/ImbalanceBars.java +++ b/bindings/java/src/main/java/org/wickra/ImbalanceBars.java @@ -53,6 +53,16 @@ public final class ImbalanceBars implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_IMBALANCE_BARS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/InNeck.java b/bindings/java/src/main/java/org/wickra/InNeck.java index 442f7cf0..a133a570 100644 --- a/bindings/java/src/main/java/org/wickra/InNeck.java +++ b/bindings/java/src/main/java/org/wickra/InNeck.java @@ -91,6 +91,16 @@ public final class InNeck implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_IN_NECK_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Inertia.java b/bindings/java/src/main/java/org/wickra/Inertia.java index 9406260e..13611f12 100644 --- a/bindings/java/src/main/java/org/wickra/Inertia.java +++ b/bindings/java/src/main/java/org/wickra/Inertia.java @@ -97,6 +97,16 @@ public final class Inertia implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_INERTIA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/InformationRatio.java b/bindings/java/src/main/java/org/wickra/InformationRatio.java index 22d21c92..5959ecc0 100644 --- a/bindings/java/src/main/java/org/wickra/InformationRatio.java +++ b/bindings/java/src/main/java/org/wickra/InformationRatio.java @@ -78,6 +78,16 @@ public final class InformationRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_INFORMATION_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/InitialBalance.java b/bindings/java/src/main/java/org/wickra/InitialBalance.java index 5337fbaf..cb591e99 100644 --- a/bindings/java/src/main/java/org/wickra/InitialBalance.java +++ b/bindings/java/src/main/java/org/wickra/InitialBalance.java @@ -66,6 +66,16 @@ public final class InitialBalance implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_INITIAL_BALANCE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/InstantaneousTrendline.java b/bindings/java/src/main/java/org/wickra/InstantaneousTrendline.java index a20c2f4b..d2bb9ad3 100644 --- a/bindings/java/src/main/java/org/wickra/InstantaneousTrendline.java +++ b/bindings/java/src/main/java/org/wickra/InstantaneousTrendline.java @@ -74,6 +74,16 @@ public final class InstantaneousTrendline implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_INSTANTANEOUS_TRENDLINE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/IntradayIntensity.java b/bindings/java/src/main/java/org/wickra/IntradayIntensity.java index b291bad9..132ab692 100644 --- a/bindings/java/src/main/java/org/wickra/IntradayIntensity.java +++ b/bindings/java/src/main/java/org/wickra/IntradayIntensity.java @@ -91,6 +91,16 @@ public final class IntradayIntensity implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_INTRADAY_INTENSITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/IntradayMomentumIndex.java b/bindings/java/src/main/java/org/wickra/IntradayMomentumIndex.java index 675d3d18..6654e77b 100644 --- a/bindings/java/src/main/java/org/wickra/IntradayMomentumIndex.java +++ b/bindings/java/src/main/java/org/wickra/IntradayMomentumIndex.java @@ -94,6 +94,16 @@ public final class IntradayMomentumIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_INTRADAY_MOMENTUM_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/IntradayVolatilityProfile.java b/bindings/java/src/main/java/org/wickra/IntradayVolatilityProfile.java index f66acf49..1dca2829 100644 --- a/bindings/java/src/main/java/org/wickra/IntradayVolatilityProfile.java +++ b/bindings/java/src/main/java/org/wickra/IntradayVolatilityProfile.java @@ -70,6 +70,16 @@ public final class IntradayVolatilityProfile implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_INTRADAY_VOLATILITY_PROFILE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/InverseFisherTransform.java b/bindings/java/src/main/java/org/wickra/InverseFisherTransform.java index 3e622be5..12c28493 100644 --- a/bindings/java/src/main/java/org/wickra/InverseFisherTransform.java +++ b/bindings/java/src/main/java/org/wickra/InverseFisherTransform.java @@ -71,6 +71,16 @@ public final class InverseFisherTransform implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_INVERSE_FISHER_TRANSFORM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/InvertedHammer.java b/bindings/java/src/main/java/org/wickra/InvertedHammer.java index 23194224..fa326061 100644 --- a/bindings/java/src/main/java/org/wickra/InvertedHammer.java +++ b/bindings/java/src/main/java/org/wickra/InvertedHammer.java @@ -91,6 +91,16 @@ public final class InvertedHammer implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_INVERTED_HAMMER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/JarqueBera.java b/bindings/java/src/main/java/org/wickra/JarqueBera.java index 157a3d70..e7492177 100644 --- a/bindings/java/src/main/java/org/wickra/JarqueBera.java +++ b/bindings/java/src/main/java/org/wickra/JarqueBera.java @@ -74,6 +74,16 @@ public final class JarqueBera implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_JARQUE_BERA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Jma.java b/bindings/java/src/main/java/org/wickra/Jma.java index 79380b87..47fa6ca9 100644 --- a/bindings/java/src/main/java/org/wickra/Jma.java +++ b/bindings/java/src/main/java/org/wickra/Jma.java @@ -74,6 +74,16 @@ public final class Jma implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_JMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/JumpIndicator.java b/bindings/java/src/main/java/org/wickra/JumpIndicator.java index 47cc7659..aaf83c1d 100644 --- a/bindings/java/src/main/java/org/wickra/JumpIndicator.java +++ b/bindings/java/src/main/java/org/wickra/JumpIndicator.java @@ -74,6 +74,16 @@ public final class JumpIndicator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_JUMP_INDICATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/KRatio.java b/bindings/java/src/main/java/org/wickra/KRatio.java index be4fe186..92b2296e 100644 --- a/bindings/java/src/main/java/org/wickra/KRatio.java +++ b/bindings/java/src/main/java/org/wickra/KRatio.java @@ -74,6 +74,16 @@ public final class KRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_K_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/KagiBars.java b/bindings/java/src/main/java/org/wickra/KagiBars.java index 7e959d6e..96d9543b 100644 --- a/bindings/java/src/main/java/org/wickra/KagiBars.java +++ b/bindings/java/src/main/java/org/wickra/KagiBars.java @@ -50,6 +50,16 @@ public final class KagiBars implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KAGI_BARS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/KalmanHedgeRatio.java b/bindings/java/src/main/java/org/wickra/KalmanHedgeRatio.java index cc21b1f2..cc340e57 100644 --- a/bindings/java/src/main/java/org/wickra/KalmanHedgeRatio.java +++ b/bindings/java/src/main/java/org/wickra/KalmanHedgeRatio.java @@ -64,6 +64,16 @@ public final class KalmanHedgeRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KALMAN_HEDGE_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Kama.java b/bindings/java/src/main/java/org/wickra/Kama.java index 9448d417..818ff1ef 100644 --- a/bindings/java/src/main/java/org/wickra/Kama.java +++ b/bindings/java/src/main/java/org/wickra/Kama.java @@ -80,6 +80,16 @@ public final class Kama implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KAMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/KaseDevStop.java b/bindings/java/src/main/java/org/wickra/KaseDevStop.java index dab27fcb..617b74f2 100644 --- a/bindings/java/src/main/java/org/wickra/KaseDevStop.java +++ b/bindings/java/src/main/java/org/wickra/KaseDevStop.java @@ -66,6 +66,16 @@ public final class KaseDevStop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KASE_DEV_STOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/KasePermissionStochastic.java b/bindings/java/src/main/java/org/wickra/KasePermissionStochastic.java index 13b395cb..2d0710fe 100644 --- a/bindings/java/src/main/java/org/wickra/KasePermissionStochastic.java +++ b/bindings/java/src/main/java/org/wickra/KasePermissionStochastic.java @@ -69,6 +69,16 @@ public final class KasePermissionStochastic implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KASE_PERMISSION_STOCHASTIC_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/KellyCriterion.java b/bindings/java/src/main/java/org/wickra/KellyCriterion.java index 660ae87a..7f6944a5 100644 --- a/bindings/java/src/main/java/org/wickra/KellyCriterion.java +++ b/bindings/java/src/main/java/org/wickra/KellyCriterion.java @@ -74,6 +74,16 @@ public final class KellyCriterion implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KELLY_CRITERION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Keltner.java b/bindings/java/src/main/java/org/wickra/Keltner.java index 1bddc6e7..256d133c 100644 --- a/bindings/java/src/main/java/org/wickra/Keltner.java +++ b/bindings/java/src/main/java/org/wickra/Keltner.java @@ -70,6 +70,16 @@ public final class Keltner implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KELTNER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/KendallTau.java b/bindings/java/src/main/java/org/wickra/KendallTau.java index 247f89dc..f7abb353 100644 --- a/bindings/java/src/main/java/org/wickra/KendallTau.java +++ b/bindings/java/src/main/java/org/wickra/KendallTau.java @@ -78,6 +78,16 @@ public final class KendallTau implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KENDALL_TAU_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Kicking.java b/bindings/java/src/main/java/org/wickra/Kicking.java index beceae36..49197531 100644 --- a/bindings/java/src/main/java/org/wickra/Kicking.java +++ b/bindings/java/src/main/java/org/wickra/Kicking.java @@ -91,6 +91,16 @@ public final class Kicking implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KICKING_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/KickingByLength.java b/bindings/java/src/main/java/org/wickra/KickingByLength.java index ceb17ad1..f75b2c69 100644 --- a/bindings/java/src/main/java/org/wickra/KickingByLength.java +++ b/bindings/java/src/main/java/org/wickra/KickingByLength.java @@ -91,6 +91,16 @@ public final class KickingByLength implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KICKING_BY_LENGTH_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Kst.java b/bindings/java/src/main/java/org/wickra/Kst.java index be944b1e..d6e47373 100644 --- a/bindings/java/src/main/java/org/wickra/Kst.java +++ b/bindings/java/src/main/java/org/wickra/Kst.java @@ -90,6 +90,16 @@ public final class Kst implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KST_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Kurtosis.java b/bindings/java/src/main/java/org/wickra/Kurtosis.java index 98350774..60278ad0 100644 --- a/bindings/java/src/main/java/org/wickra/Kurtosis.java +++ b/bindings/java/src/main/java/org/wickra/Kurtosis.java @@ -74,6 +74,16 @@ public final class Kurtosis implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KURTOSIS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Kvo.java b/bindings/java/src/main/java/org/wickra/Kvo.java index 4adc539d..3ddee9f7 100644 --- a/bindings/java/src/main/java/org/wickra/Kvo.java +++ b/bindings/java/src/main/java/org/wickra/Kvo.java @@ -97,6 +97,16 @@ public final class Kvo implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KVO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/KylesLambda.java b/bindings/java/src/main/java/org/wickra/KylesLambda.java index 6f082ecc..19d91ecf 100644 --- a/bindings/java/src/main/java/org/wickra/KylesLambda.java +++ b/bindings/java/src/main/java/org/wickra/KylesLambda.java @@ -59,6 +59,16 @@ public final class KylesLambda implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_KYLES_LAMBDA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LadderBottom.java b/bindings/java/src/main/java/org/wickra/LadderBottom.java index 5d38427a..080d02d7 100644 --- a/bindings/java/src/main/java/org/wickra/LadderBottom.java +++ b/bindings/java/src/main/java/org/wickra/LadderBottom.java @@ -91,6 +91,16 @@ public final class LadderBottom implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LADDER_BOTTOM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LaguerreRsi.java b/bindings/java/src/main/java/org/wickra/LaguerreRsi.java index d4ed680d..2a600eb9 100644 --- a/bindings/java/src/main/java/org/wickra/LaguerreRsi.java +++ b/bindings/java/src/main/java/org/wickra/LaguerreRsi.java @@ -71,6 +71,16 @@ public final class LaguerreRsi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LAGUERRE_RSI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LeadLagCrossCorrelation.java b/bindings/java/src/main/java/org/wickra/LeadLagCrossCorrelation.java index 5c322cbb..8c585c81 100644 --- a/bindings/java/src/main/java/org/wickra/LeadLagCrossCorrelation.java +++ b/bindings/java/src/main/java/org/wickra/LeadLagCrossCorrelation.java @@ -69,6 +69,16 @@ public final class LeadLagCrossCorrelation implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LEAD_LAG_CROSS_CORRELATION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LinRegAngle.java b/bindings/java/src/main/java/org/wickra/LinRegAngle.java index cd9848f9..f71153db 100644 --- a/bindings/java/src/main/java/org/wickra/LinRegAngle.java +++ b/bindings/java/src/main/java/org/wickra/LinRegAngle.java @@ -74,6 +74,16 @@ public final class LinRegAngle implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LIN_REG_ANGLE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LinRegChannel.java b/bindings/java/src/main/java/org/wickra/LinRegChannel.java index de9d183b..be164885 100644 --- a/bindings/java/src/main/java/org/wickra/LinRegChannel.java +++ b/bindings/java/src/main/java/org/wickra/LinRegChannel.java @@ -67,6 +67,16 @@ public final class LinRegChannel implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LIN_REG_CHANNEL_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LinRegIntercept.java b/bindings/java/src/main/java/org/wickra/LinRegIntercept.java index b7e8ca13..b70ce976 100644 --- a/bindings/java/src/main/java/org/wickra/LinRegIntercept.java +++ b/bindings/java/src/main/java/org/wickra/LinRegIntercept.java @@ -74,6 +74,16 @@ public final class LinRegIntercept implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LIN_REG_INTERCEPT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LinRegSlope.java b/bindings/java/src/main/java/org/wickra/LinRegSlope.java index d0f3a6c0..5e0e3757 100644 --- a/bindings/java/src/main/java/org/wickra/LinRegSlope.java +++ b/bindings/java/src/main/java/org/wickra/LinRegSlope.java @@ -74,6 +74,16 @@ public final class LinRegSlope implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LIN_REG_SLOPE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LinearRegression.java b/bindings/java/src/main/java/org/wickra/LinearRegression.java index 6b59bbaf..df193d57 100644 --- a/bindings/java/src/main/java/org/wickra/LinearRegression.java +++ b/bindings/java/src/main/java/org/wickra/LinearRegression.java @@ -74,6 +74,16 @@ public final class LinearRegression implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LINEAR_REGRESSION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LiquidationFeatures.java b/bindings/java/src/main/java/org/wickra/LiquidationFeatures.java index 47020626..96a55117 100644 --- a/bindings/java/src/main/java/org/wickra/LiquidationFeatures.java +++ b/bindings/java/src/main/java/org/wickra/LiquidationFeatures.java @@ -66,6 +66,16 @@ public final class LiquidationFeatures implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LIQUIDATION_FEATURES_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LogReturn.java b/bindings/java/src/main/java/org/wickra/LogReturn.java index 64d30fe7..5aba86de 100644 --- a/bindings/java/src/main/java/org/wickra/LogReturn.java +++ b/bindings/java/src/main/java/org/wickra/LogReturn.java @@ -74,6 +74,16 @@ public final class LogReturn implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LOG_RETURN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LongLeggedDoji.java b/bindings/java/src/main/java/org/wickra/LongLeggedDoji.java index 66620597..496a30c0 100644 --- a/bindings/java/src/main/java/org/wickra/LongLeggedDoji.java +++ b/bindings/java/src/main/java/org/wickra/LongLeggedDoji.java @@ -91,6 +91,16 @@ public final class LongLeggedDoji implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LONG_LEGGED_DOJI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LongLine.java b/bindings/java/src/main/java/org/wickra/LongLine.java index f7c104bf..248e55bf 100644 --- a/bindings/java/src/main/java/org/wickra/LongLine.java +++ b/bindings/java/src/main/java/org/wickra/LongLine.java @@ -91,6 +91,16 @@ public final class LongLine implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LONG_LINE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/LongShortRatio.java b/bindings/java/src/main/java/org/wickra/LongShortRatio.java index c1c935f8..e0b3eaf6 100644 --- a/bindings/java/src/main/java/org/wickra/LongShortRatio.java +++ b/bindings/java/src/main/java/org/wickra/LongShortRatio.java @@ -56,6 +56,16 @@ public final class LongShortRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_LONG_SHORT_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/M2Measure.java b/bindings/java/src/main/java/org/wickra/M2Measure.java index adb9f0bc..066424ac 100644 --- a/bindings/java/src/main/java/org/wickra/M2Measure.java +++ b/bindings/java/src/main/java/org/wickra/M2Measure.java @@ -74,6 +74,16 @@ public final class M2Measure implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_M2_MEASURE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MaEnvelope.java b/bindings/java/src/main/java/org/wickra/MaEnvelope.java index 86de2db8..9027578f 100644 --- a/bindings/java/src/main/java/org/wickra/MaEnvelope.java +++ b/bindings/java/src/main/java/org/wickra/MaEnvelope.java @@ -67,6 +67,16 @@ public final class MaEnvelope implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MA_ENVELOPE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MacdExt.java b/bindings/java/src/main/java/org/wickra/MacdExt.java index 0188ef37..22070e9b 100644 --- a/bindings/java/src/main/java/org/wickra/MacdExt.java +++ b/bindings/java/src/main/java/org/wickra/MacdExt.java @@ -73,6 +73,16 @@ public final class MacdExt implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MACD_EXT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MacdFix.java b/bindings/java/src/main/java/org/wickra/MacdFix.java index 5a250b1f..b60d44bb 100644 --- a/bindings/java/src/main/java/org/wickra/MacdFix.java +++ b/bindings/java/src/main/java/org/wickra/MacdFix.java @@ -67,6 +67,16 @@ public final class MacdFix implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MACD_FIX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MacdHistogram.java b/bindings/java/src/main/java/org/wickra/MacdHistogram.java index a13f3c07..316d236b 100644 --- a/bindings/java/src/main/java/org/wickra/MacdHistogram.java +++ b/bindings/java/src/main/java/org/wickra/MacdHistogram.java @@ -80,6 +80,16 @@ public final class MacdHistogram implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MACD_HISTOGRAM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MacdIndicator.java b/bindings/java/src/main/java/org/wickra/MacdIndicator.java index e04234cc..a716846e 100644 --- a/bindings/java/src/main/java/org/wickra/MacdIndicator.java +++ b/bindings/java/src/main/java/org/wickra/MacdIndicator.java @@ -73,6 +73,16 @@ public final class MacdIndicator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MACD_INDICATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Mama.java b/bindings/java/src/main/java/org/wickra/Mama.java index b35ce172..83548a4f 100644 --- a/bindings/java/src/main/java/org/wickra/Mama.java +++ b/bindings/java/src/main/java/org/wickra/Mama.java @@ -63,6 +63,16 @@ public final class Mama implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MAMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MarketFacilitationIndex.java b/bindings/java/src/main/java/org/wickra/MarketFacilitationIndex.java index 9eb416fd..3282d098 100644 --- a/bindings/java/src/main/java/org/wickra/MarketFacilitationIndex.java +++ b/bindings/java/src/main/java/org/wickra/MarketFacilitationIndex.java @@ -91,6 +91,16 @@ public final class MarketFacilitationIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MARKET_FACILITATION_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MartinRatio.java b/bindings/java/src/main/java/org/wickra/MartinRatio.java index 28664df1..1ddee100 100644 --- a/bindings/java/src/main/java/org/wickra/MartinRatio.java +++ b/bindings/java/src/main/java/org/wickra/MartinRatio.java @@ -74,6 +74,16 @@ public final class MartinRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MARTIN_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Marubozu.java b/bindings/java/src/main/java/org/wickra/Marubozu.java index 40c45169..75699b3f 100644 --- a/bindings/java/src/main/java/org/wickra/Marubozu.java +++ b/bindings/java/src/main/java/org/wickra/Marubozu.java @@ -91,6 +91,16 @@ public final class Marubozu implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MARUBOZU_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MassIndex.java b/bindings/java/src/main/java/org/wickra/MassIndex.java index 7e959206..581b3a2d 100644 --- a/bindings/java/src/main/java/org/wickra/MassIndex.java +++ b/bindings/java/src/main/java/org/wickra/MassIndex.java @@ -97,6 +97,16 @@ public final class MassIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MASS_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MatHold.java b/bindings/java/src/main/java/org/wickra/MatHold.java index 413f62f6..50a98c11 100644 --- a/bindings/java/src/main/java/org/wickra/MatHold.java +++ b/bindings/java/src/main/java/org/wickra/MatHold.java @@ -91,6 +91,16 @@ public final class MatHold implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MAT_HOLD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MatchingLow.java b/bindings/java/src/main/java/org/wickra/MatchingLow.java index 7c63c8a4..c17b26d3 100644 --- a/bindings/java/src/main/java/org/wickra/MatchingLow.java +++ b/bindings/java/src/main/java/org/wickra/MatchingLow.java @@ -91,6 +91,16 @@ public final class MatchingLow implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MATCHING_LOW_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MaxDrawdown.java b/bindings/java/src/main/java/org/wickra/MaxDrawdown.java index a2debe10..a9b01794 100644 --- a/bindings/java/src/main/java/org/wickra/MaxDrawdown.java +++ b/bindings/java/src/main/java/org/wickra/MaxDrawdown.java @@ -74,6 +74,16 @@ public final class MaxDrawdown implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MAX_DRAWDOWN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/McClellanOscillator.java b/bindings/java/src/main/java/org/wickra/McClellanOscillator.java index 2f154442..2ef2d843 100644 --- a/bindings/java/src/main/java/org/wickra/McClellanOscillator.java +++ b/bindings/java/src/main/java/org/wickra/McClellanOscillator.java @@ -77,6 +77,16 @@ public final class McClellanOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MC_CLELLAN_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/McClellanSummationIndex.java b/bindings/java/src/main/java/org/wickra/McClellanSummationIndex.java index 2a8ef5cf..ff2d9987 100644 --- a/bindings/java/src/main/java/org/wickra/McClellanSummationIndex.java +++ b/bindings/java/src/main/java/org/wickra/McClellanSummationIndex.java @@ -77,6 +77,16 @@ public final class McClellanSummationIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MC_CLELLAN_SUMMATION_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/McGinleyDynamic.java b/bindings/java/src/main/java/org/wickra/McGinleyDynamic.java index 7f0932be..a966856d 100644 --- a/bindings/java/src/main/java/org/wickra/McGinleyDynamic.java +++ b/bindings/java/src/main/java/org/wickra/McGinleyDynamic.java @@ -74,6 +74,16 @@ public final class McGinleyDynamic implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MC_GINLEY_DYNAMIC_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MedianAbsoluteDeviation.java b/bindings/java/src/main/java/org/wickra/MedianAbsoluteDeviation.java index 8d6378bc..913b92b0 100644 --- a/bindings/java/src/main/java/org/wickra/MedianAbsoluteDeviation.java +++ b/bindings/java/src/main/java/org/wickra/MedianAbsoluteDeviation.java @@ -74,6 +74,16 @@ public final class MedianAbsoluteDeviation implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MEDIAN_ABSOLUTE_DEVIATION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MedianChannel.java b/bindings/java/src/main/java/org/wickra/MedianChannel.java index 45584ccf..067e0765 100644 --- a/bindings/java/src/main/java/org/wickra/MedianChannel.java +++ b/bindings/java/src/main/java/org/wickra/MedianChannel.java @@ -67,6 +67,16 @@ public final class MedianChannel implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MEDIAN_CHANNEL_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MedianMa.java b/bindings/java/src/main/java/org/wickra/MedianMa.java index 971d324d..e9e72111 100644 --- a/bindings/java/src/main/java/org/wickra/MedianMa.java +++ b/bindings/java/src/main/java/org/wickra/MedianMa.java @@ -74,6 +74,16 @@ public final class MedianMa implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MEDIAN_MA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MedianPrice.java b/bindings/java/src/main/java/org/wickra/MedianPrice.java index d6ffa378..97883456 100644 --- a/bindings/java/src/main/java/org/wickra/MedianPrice.java +++ b/bindings/java/src/main/java/org/wickra/MedianPrice.java @@ -91,6 +91,16 @@ public final class MedianPrice implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MEDIAN_PRICE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Mfi.java b/bindings/java/src/main/java/org/wickra/Mfi.java index 164152e0..602cf7ec 100644 --- a/bindings/java/src/main/java/org/wickra/Mfi.java +++ b/bindings/java/src/main/java/org/wickra/Mfi.java @@ -94,6 +94,16 @@ public final class Mfi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MFI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Microprice.java b/bindings/java/src/main/java/org/wickra/Microprice.java index fbc89d5d..7efd97f6 100644 --- a/bindings/java/src/main/java/org/wickra/Microprice.java +++ b/bindings/java/src/main/java/org/wickra/Microprice.java @@ -66,6 +66,16 @@ public final class Microprice implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MICROPRICE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MidPoint.java b/bindings/java/src/main/java/org/wickra/MidPoint.java index 1a91c0eb..ff457d02 100644 --- a/bindings/java/src/main/java/org/wickra/MidPoint.java +++ b/bindings/java/src/main/java/org/wickra/MidPoint.java @@ -74,6 +74,16 @@ public final class MidPoint implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MID_POINT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MidPrice.java b/bindings/java/src/main/java/org/wickra/MidPrice.java index 350845ea..0b8dafd3 100644 --- a/bindings/java/src/main/java/org/wickra/MidPrice.java +++ b/bindings/java/src/main/java/org/wickra/MidPrice.java @@ -94,6 +94,16 @@ public final class MidPrice implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MID_PRICE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MinusDi.java b/bindings/java/src/main/java/org/wickra/MinusDi.java index 42ae5949..8c6feaa0 100644 --- a/bindings/java/src/main/java/org/wickra/MinusDi.java +++ b/bindings/java/src/main/java/org/wickra/MinusDi.java @@ -94,6 +94,16 @@ public final class MinusDi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MINUS_DI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MinusDm.java b/bindings/java/src/main/java/org/wickra/MinusDm.java index e0c43a2e..15c073f1 100644 --- a/bindings/java/src/main/java/org/wickra/MinusDm.java +++ b/bindings/java/src/main/java/org/wickra/MinusDm.java @@ -94,6 +94,16 @@ public final class MinusDm implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MINUS_DM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ModifiedMaStop.java b/bindings/java/src/main/java/org/wickra/ModifiedMaStop.java index 691df6b8..589d2f4a 100644 --- a/bindings/java/src/main/java/org/wickra/ModifiedMaStop.java +++ b/bindings/java/src/main/java/org/wickra/ModifiedMaStop.java @@ -66,6 +66,16 @@ public final class ModifiedMaStop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MODIFIED_MA_STOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Mom.java b/bindings/java/src/main/java/org/wickra/Mom.java index d06dc16d..89489635 100644 --- a/bindings/java/src/main/java/org/wickra/Mom.java +++ b/bindings/java/src/main/java/org/wickra/Mom.java @@ -74,6 +74,16 @@ public final class Mom implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MOM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MorningDojiStar.java b/bindings/java/src/main/java/org/wickra/MorningDojiStar.java index d421a1d1..fcd5ddc5 100644 --- a/bindings/java/src/main/java/org/wickra/MorningDojiStar.java +++ b/bindings/java/src/main/java/org/wickra/MorningDojiStar.java @@ -91,6 +91,16 @@ public final class MorningDojiStar implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MORNING_DOJI_STAR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MorningEveningStar.java b/bindings/java/src/main/java/org/wickra/MorningEveningStar.java index eadf72ca..96b88ad1 100644 --- a/bindings/java/src/main/java/org/wickra/MorningEveningStar.java +++ b/bindings/java/src/main/java/org/wickra/MorningEveningStar.java @@ -91,6 +91,16 @@ public final class MorningEveningStar implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MORNING_EVENING_STAR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/MurreyMathLines.java b/bindings/java/src/main/java/org/wickra/MurreyMathLines.java index 2480b58c..91dd031b 100644 --- a/bindings/java/src/main/java/org/wickra/MurreyMathLines.java +++ b/bindings/java/src/main/java/org/wickra/MurreyMathLines.java @@ -73,6 +73,16 @@ public final class MurreyMathLines implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_MURREY_MATH_LINES_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/NakedPoc.java b/bindings/java/src/main/java/org/wickra/NakedPoc.java index 02b4ace2..ffde57b2 100644 --- a/bindings/java/src/main/java/org/wickra/NakedPoc.java +++ b/bindings/java/src/main/java/org/wickra/NakedPoc.java @@ -97,6 +97,16 @@ public final class NakedPoc implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_NAKED_POC_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Natr.java b/bindings/java/src/main/java/org/wickra/Natr.java index 2ea2413b..eb948f61 100644 --- a/bindings/java/src/main/java/org/wickra/Natr.java +++ b/bindings/java/src/main/java/org/wickra/Natr.java @@ -94,6 +94,16 @@ public final class Natr implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_NATR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/NewHighsNewLows.java b/bindings/java/src/main/java/org/wickra/NewHighsNewLows.java index 6c9f039a..51b5b856 100644 --- a/bindings/java/src/main/java/org/wickra/NewHighsNewLows.java +++ b/bindings/java/src/main/java/org/wickra/NewHighsNewLows.java @@ -77,6 +77,16 @@ public final class NewHighsNewLows implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_NEW_HIGHS_NEW_LOWS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/NewPriceLines.java b/bindings/java/src/main/java/org/wickra/NewPriceLines.java index 11bc78fa..cfc00ee3 100644 --- a/bindings/java/src/main/java/org/wickra/NewPriceLines.java +++ b/bindings/java/src/main/java/org/wickra/NewPriceLines.java @@ -94,6 +94,16 @@ public final class NewPriceLines implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_NEW_PRICE_LINES_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Nrtr.java b/bindings/java/src/main/java/org/wickra/Nrtr.java index 31998228..2f83da0d 100644 --- a/bindings/java/src/main/java/org/wickra/Nrtr.java +++ b/bindings/java/src/main/java/org/wickra/Nrtr.java @@ -63,6 +63,16 @@ public final class Nrtr implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_NRTR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Nvi.java b/bindings/java/src/main/java/org/wickra/Nvi.java index 8163d5ce..ba49c39c 100644 --- a/bindings/java/src/main/java/org/wickra/Nvi.java +++ b/bindings/java/src/main/java/org/wickra/Nvi.java @@ -91,6 +91,16 @@ public final class Nvi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_NVI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OIPriceDivergence.java b/bindings/java/src/main/java/org/wickra/OIPriceDivergence.java index 6b0a8672..2a6aaf71 100644 --- a/bindings/java/src/main/java/org/wickra/OIPriceDivergence.java +++ b/bindings/java/src/main/java/org/wickra/OIPriceDivergence.java @@ -59,6 +59,16 @@ public final class OIPriceDivergence implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_OI_PRICE_DIVERGENCE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OIWeighted.java b/bindings/java/src/main/java/org/wickra/OIWeighted.java index bfe39314..9899ce7b 100644 --- a/bindings/java/src/main/java/org/wickra/OIWeighted.java +++ b/bindings/java/src/main/java/org/wickra/OIWeighted.java @@ -56,6 +56,16 @@ public final class OIWeighted implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_OI_WEIGHTED_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Obv.java b/bindings/java/src/main/java/org/wickra/Obv.java index 5b166838..ef1680fd 100644 --- a/bindings/java/src/main/java/org/wickra/Obv.java +++ b/bindings/java/src/main/java/org/wickra/Obv.java @@ -91,6 +91,16 @@ public final class Obv implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_OBV_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OiToVolumeRatio.java b/bindings/java/src/main/java/org/wickra/OiToVolumeRatio.java index 4f268440..d1b4a903 100644 --- a/bindings/java/src/main/java/org/wickra/OiToVolumeRatio.java +++ b/bindings/java/src/main/java/org/wickra/OiToVolumeRatio.java @@ -56,6 +56,16 @@ public final class OiToVolumeRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_OI_TO_VOLUME_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OmegaRatio.java b/bindings/java/src/main/java/org/wickra/OmegaRatio.java index f227345c..56846ec3 100644 --- a/bindings/java/src/main/java/org/wickra/OmegaRatio.java +++ b/bindings/java/src/main/java/org/wickra/OmegaRatio.java @@ -74,6 +74,16 @@ public final class OmegaRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_OMEGA_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OnNeck.java b/bindings/java/src/main/java/org/wickra/OnNeck.java index 3ea52075..1c0a94ff 100644 --- a/bindings/java/src/main/java/org/wickra/OnNeck.java +++ b/bindings/java/src/main/java/org/wickra/OnNeck.java @@ -91,6 +91,16 @@ public final class OnNeck implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ON_NECK_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OpenInterestDelta.java b/bindings/java/src/main/java/org/wickra/OpenInterestDelta.java index 6e115529..5a1a1c42 100644 --- a/bindings/java/src/main/java/org/wickra/OpenInterestDelta.java +++ b/bindings/java/src/main/java/org/wickra/OpenInterestDelta.java @@ -56,6 +56,16 @@ public final class OpenInterestDelta implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_OPEN_INTEREST_DELTA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OpenInterestMomentum.java b/bindings/java/src/main/java/org/wickra/OpenInterestMomentum.java index e6e8bd04..1c56032e 100644 --- a/bindings/java/src/main/java/org/wickra/OpenInterestMomentum.java +++ b/bindings/java/src/main/java/org/wickra/OpenInterestMomentum.java @@ -59,6 +59,16 @@ public final class OpenInterestMomentum implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_OPEN_INTEREST_MOMENTUM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OpeningMarubozu.java b/bindings/java/src/main/java/org/wickra/OpeningMarubozu.java index 6b0ab7dd..fd734662 100644 --- a/bindings/java/src/main/java/org/wickra/OpeningMarubozu.java +++ b/bindings/java/src/main/java/org/wickra/OpeningMarubozu.java @@ -91,6 +91,16 @@ public final class OpeningMarubozu implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_OPENING_MARUBOZU_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OpeningRange.java b/bindings/java/src/main/java/org/wickra/OpeningRange.java index 032254f3..dc22b19e 100644 --- a/bindings/java/src/main/java/org/wickra/OpeningRange.java +++ b/bindings/java/src/main/java/org/wickra/OpeningRange.java @@ -67,6 +67,16 @@ public final class OpeningRange implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_OPENING_RANGE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OrderBookImbalanceFull.java b/bindings/java/src/main/java/org/wickra/OrderBookImbalanceFull.java index 29d85357..d4698a10 100644 --- a/bindings/java/src/main/java/org/wickra/OrderBookImbalanceFull.java +++ b/bindings/java/src/main/java/org/wickra/OrderBookImbalanceFull.java @@ -66,6 +66,16 @@ public final class OrderBookImbalanceFull implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ORDER_BOOK_IMBALANCE_FULL_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OrderBookImbalanceTop1.java b/bindings/java/src/main/java/org/wickra/OrderBookImbalanceTop1.java index 7d73da73..e74aff8f 100644 --- a/bindings/java/src/main/java/org/wickra/OrderBookImbalanceTop1.java +++ b/bindings/java/src/main/java/org/wickra/OrderBookImbalanceTop1.java @@ -66,6 +66,16 @@ public final class OrderBookImbalanceTop1 implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ORDER_BOOK_IMBALANCE_TOP1_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OrderBookImbalanceTopN.java b/bindings/java/src/main/java/org/wickra/OrderBookImbalanceTopN.java index 65679a72..66d07f7c 100644 --- a/bindings/java/src/main/java/org/wickra/OrderBookImbalanceTopN.java +++ b/bindings/java/src/main/java/org/wickra/OrderBookImbalanceTopN.java @@ -69,6 +69,16 @@ public final class OrderBookImbalanceTopN implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OrderFlowImbalance.java b/bindings/java/src/main/java/org/wickra/OrderFlowImbalance.java index b0da4864..ce069621 100644 --- a/bindings/java/src/main/java/org/wickra/OrderFlowImbalance.java +++ b/bindings/java/src/main/java/org/wickra/OrderFlowImbalance.java @@ -69,6 +69,16 @@ public final class OrderFlowImbalance implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ORDER_FLOW_IMBALANCE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OuHalfLife.java b/bindings/java/src/main/java/org/wickra/OuHalfLife.java index 88fd3632..900e92cf 100644 --- a/bindings/java/src/main/java/org/wickra/OuHalfLife.java +++ b/bindings/java/src/main/java/org/wickra/OuHalfLife.java @@ -78,6 +78,16 @@ public final class OuHalfLife implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_OU_HALF_LIFE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OvernightGap.java b/bindings/java/src/main/java/org/wickra/OvernightGap.java index e107e29f..a7a5ccb1 100644 --- a/bindings/java/src/main/java/org/wickra/OvernightGap.java +++ b/bindings/java/src/main/java/org/wickra/OvernightGap.java @@ -91,6 +91,16 @@ public final class OvernightGap implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_OVERNIGHT_GAP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/OvernightIntradayReturn.java b/bindings/java/src/main/java/org/wickra/OvernightIntradayReturn.java index e7094ae9..8358e74b 100644 --- a/bindings/java/src/main/java/org/wickra/OvernightIntradayReturn.java +++ b/bindings/java/src/main/java/org/wickra/OvernightIntradayReturn.java @@ -63,6 +63,16 @@ public final class OvernightIntradayReturn implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_OVERNIGHT_INTRADAY_RETURN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PainIndex.java b/bindings/java/src/main/java/org/wickra/PainIndex.java index 6a101b7f..7c2c2e9c 100644 --- a/bindings/java/src/main/java/org/wickra/PainIndex.java +++ b/bindings/java/src/main/java/org/wickra/PainIndex.java @@ -74,6 +74,16 @@ public final class PainIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PAIN_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PairSpreadZScore.java b/bindings/java/src/main/java/org/wickra/PairSpreadZScore.java index 924ef023..901b880b 100644 --- a/bindings/java/src/main/java/org/wickra/PairSpreadZScore.java +++ b/bindings/java/src/main/java/org/wickra/PairSpreadZScore.java @@ -81,6 +81,16 @@ public final class PairSpreadZScore implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PAIR_SPREAD_Z_SCORE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PairwiseBeta.java b/bindings/java/src/main/java/org/wickra/PairwiseBeta.java index dfb27558..aff73440 100644 --- a/bindings/java/src/main/java/org/wickra/PairwiseBeta.java +++ b/bindings/java/src/main/java/org/wickra/PairwiseBeta.java @@ -78,6 +78,16 @@ public final class PairwiseBeta implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PAIRWISE_BETA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ParkinsonVolatility.java b/bindings/java/src/main/java/org/wickra/ParkinsonVolatility.java index 84cb6a3d..509e8439 100644 --- a/bindings/java/src/main/java/org/wickra/ParkinsonVolatility.java +++ b/bindings/java/src/main/java/org/wickra/ParkinsonVolatility.java @@ -97,6 +97,16 @@ public final class ParkinsonVolatility implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PARKINSON_VOLATILITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PearsonCorrelation.java b/bindings/java/src/main/java/org/wickra/PearsonCorrelation.java index 696f9df5..9d0464a8 100644 --- a/bindings/java/src/main/java/org/wickra/PearsonCorrelation.java +++ b/bindings/java/src/main/java/org/wickra/PearsonCorrelation.java @@ -78,6 +78,16 @@ public final class PearsonCorrelation implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PEARSON_CORRELATION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PercentAboveMa.java b/bindings/java/src/main/java/org/wickra/PercentAboveMa.java index 5d763bea..d56b3cb9 100644 --- a/bindings/java/src/main/java/org/wickra/PercentAboveMa.java +++ b/bindings/java/src/main/java/org/wickra/PercentAboveMa.java @@ -77,6 +77,16 @@ public final class PercentAboveMa implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PERCENT_ABOVE_MA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PercentB.java b/bindings/java/src/main/java/org/wickra/PercentB.java index 5581318c..566be714 100644 --- a/bindings/java/src/main/java/org/wickra/PercentB.java +++ b/bindings/java/src/main/java/org/wickra/PercentB.java @@ -74,6 +74,16 @@ public final class PercentB implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PERCENT_B_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PercentageTrailingStop.java b/bindings/java/src/main/java/org/wickra/PercentageTrailingStop.java index 035a10cc..ebf5d157 100644 --- a/bindings/java/src/main/java/org/wickra/PercentageTrailingStop.java +++ b/bindings/java/src/main/java/org/wickra/PercentageTrailingStop.java @@ -71,6 +71,16 @@ public final class PercentageTrailingStop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PERCENTAGE_TRAILING_STOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PerpetualPremiumIndex.java b/bindings/java/src/main/java/org/wickra/PerpetualPremiumIndex.java index 2fd07156..7d302d4d 100644 --- a/bindings/java/src/main/java/org/wickra/PerpetualPremiumIndex.java +++ b/bindings/java/src/main/java/org/wickra/PerpetualPremiumIndex.java @@ -56,6 +56,16 @@ public final class PerpetualPremiumIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PERPETUAL_PREMIUM_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Pgo.java b/bindings/java/src/main/java/org/wickra/Pgo.java index d91ffd88..c6600a05 100644 --- a/bindings/java/src/main/java/org/wickra/Pgo.java +++ b/bindings/java/src/main/java/org/wickra/Pgo.java @@ -94,6 +94,16 @@ public final class Pgo implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PGO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PiercingDarkCloud.java b/bindings/java/src/main/java/org/wickra/PiercingDarkCloud.java index 45bdc4e4..07b07547 100644 --- a/bindings/java/src/main/java/org/wickra/PiercingDarkCloud.java +++ b/bindings/java/src/main/java/org/wickra/PiercingDarkCloud.java @@ -91,6 +91,16 @@ public final class PiercingDarkCloud implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PIERCING_DARK_CLOUD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Pin.java b/bindings/java/src/main/java/org/wickra/Pin.java index 3d0fb624..e09ac40b 100644 --- a/bindings/java/src/main/java/org/wickra/Pin.java +++ b/bindings/java/src/main/java/org/wickra/Pin.java @@ -59,6 +59,16 @@ public final class Pin implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PIN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PivotReversal.java b/bindings/java/src/main/java/org/wickra/PivotReversal.java index a2879962..09a089d2 100644 --- a/bindings/java/src/main/java/org/wickra/PivotReversal.java +++ b/bindings/java/src/main/java/org/wickra/PivotReversal.java @@ -97,6 +97,16 @@ public final class PivotReversal implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PIVOT_REVERSAL_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PlusDi.java b/bindings/java/src/main/java/org/wickra/PlusDi.java index 3a594d07..131d4ce2 100644 --- a/bindings/java/src/main/java/org/wickra/PlusDi.java +++ b/bindings/java/src/main/java/org/wickra/PlusDi.java @@ -94,6 +94,16 @@ public final class PlusDi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PLUS_DI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PlusDm.java b/bindings/java/src/main/java/org/wickra/PlusDm.java index 85865d1a..3e5de3fb 100644 --- a/bindings/java/src/main/java/org/wickra/PlusDm.java +++ b/bindings/java/src/main/java/org/wickra/PlusDm.java @@ -94,6 +94,16 @@ public final class PlusDm implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PLUS_DM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Pmo.java b/bindings/java/src/main/java/org/wickra/Pmo.java index ff475176..0be95170 100644 --- a/bindings/java/src/main/java/org/wickra/Pmo.java +++ b/bindings/java/src/main/java/org/wickra/Pmo.java @@ -77,6 +77,16 @@ public final class Pmo implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PMO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PointAndFigureBars.java b/bindings/java/src/main/java/org/wickra/PointAndFigureBars.java index f63269e9..fd46842d 100644 --- a/bindings/java/src/main/java/org/wickra/PointAndFigureBars.java +++ b/bindings/java/src/main/java/org/wickra/PointAndFigureBars.java @@ -53,6 +53,16 @@ public final class PointAndFigureBars implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_POINT_AND_FIGURE_BARS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PolarizedFractalEfficiency.java b/bindings/java/src/main/java/org/wickra/PolarizedFractalEfficiency.java index 0d29569c..d76e78f1 100644 --- a/bindings/java/src/main/java/org/wickra/PolarizedFractalEfficiency.java +++ b/bindings/java/src/main/java/org/wickra/PolarizedFractalEfficiency.java @@ -77,6 +77,16 @@ public final class PolarizedFractalEfficiency implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_POLARIZED_FRACTAL_EFFICIENCY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Ppo.java b/bindings/java/src/main/java/org/wickra/Ppo.java index 9250adf5..5f14bacd 100644 --- a/bindings/java/src/main/java/org/wickra/Ppo.java +++ b/bindings/java/src/main/java/org/wickra/Ppo.java @@ -77,6 +77,16 @@ public final class Ppo implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PPO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/PpoHistogram.java b/bindings/java/src/main/java/org/wickra/PpoHistogram.java index d66418b8..1678dc00 100644 --- a/bindings/java/src/main/java/org/wickra/PpoHistogram.java +++ b/bindings/java/src/main/java/org/wickra/PpoHistogram.java @@ -80,6 +80,16 @@ public final class PpoHistogram implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PPO_HISTOGRAM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ProfileShape.java b/bindings/java/src/main/java/org/wickra/ProfileShape.java index a491c934..e2b9788e 100644 --- a/bindings/java/src/main/java/org/wickra/ProfileShape.java +++ b/bindings/java/src/main/java/org/wickra/ProfileShape.java @@ -97,6 +97,16 @@ public final class ProfileShape implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PROFILE_SHAPE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ProfitFactor.java b/bindings/java/src/main/java/org/wickra/ProfitFactor.java index 764da4e1..bc2c26f2 100644 --- a/bindings/java/src/main/java/org/wickra/ProfitFactor.java +++ b/bindings/java/src/main/java/org/wickra/ProfitFactor.java @@ -74,6 +74,16 @@ public final class ProfitFactor implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PROFIT_FACTOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ProjectionBands.java b/bindings/java/src/main/java/org/wickra/ProjectionBands.java index b04ce291..4ba2ca2a 100644 --- a/bindings/java/src/main/java/org/wickra/ProjectionBands.java +++ b/bindings/java/src/main/java/org/wickra/ProjectionBands.java @@ -67,6 +67,16 @@ public final class ProjectionBands implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PROJECTION_BANDS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ProjectionOscillator.java b/bindings/java/src/main/java/org/wickra/ProjectionOscillator.java index 7c063c1b..ed211825 100644 --- a/bindings/java/src/main/java/org/wickra/ProjectionOscillator.java +++ b/bindings/java/src/main/java/org/wickra/ProjectionOscillator.java @@ -94,6 +94,16 @@ public final class ProjectionOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PROJECTION_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Psar.java b/bindings/java/src/main/java/org/wickra/Psar.java index 1855956e..92c61e11 100644 --- a/bindings/java/src/main/java/org/wickra/Psar.java +++ b/bindings/java/src/main/java/org/wickra/Psar.java @@ -91,6 +91,16 @@ public final class Psar implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PSAR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Pvi.java b/bindings/java/src/main/java/org/wickra/Pvi.java index c5f3a935..f15a4665 100644 --- a/bindings/java/src/main/java/org/wickra/Pvi.java +++ b/bindings/java/src/main/java/org/wickra/Pvi.java @@ -91,6 +91,16 @@ public final class Pvi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_PVI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Qqe.java b/bindings/java/src/main/java/org/wickra/Qqe.java index b582b284..0b441d44 100644 --- a/bindings/java/src/main/java/org/wickra/Qqe.java +++ b/bindings/java/src/main/java/org/wickra/Qqe.java @@ -69,6 +69,16 @@ public final class Qqe implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_QQE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Qstick.java b/bindings/java/src/main/java/org/wickra/Qstick.java index 4f0fedbd..29167f8e 100644 --- a/bindings/java/src/main/java/org/wickra/Qstick.java +++ b/bindings/java/src/main/java/org/wickra/Qstick.java @@ -94,6 +94,16 @@ public final class Qstick implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_QSTICK_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/QuartileBands.java b/bindings/java/src/main/java/org/wickra/QuartileBands.java index b966cd9c..f4961a88 100644 --- a/bindings/java/src/main/java/org/wickra/QuartileBands.java +++ b/bindings/java/src/main/java/org/wickra/QuartileBands.java @@ -67,6 +67,16 @@ public final class QuartileBands implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_QUARTILE_BANDS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/QuotedSpread.java b/bindings/java/src/main/java/org/wickra/QuotedSpread.java index 97ce11fb..d5d2f187 100644 --- a/bindings/java/src/main/java/org/wickra/QuotedSpread.java +++ b/bindings/java/src/main/java/org/wickra/QuotedSpread.java @@ -66,6 +66,16 @@ public final class QuotedSpread implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_QUOTED_SPREAD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RSquared.java b/bindings/java/src/main/java/org/wickra/RSquared.java index aec31f58..02339c0c 100644 --- a/bindings/java/src/main/java/org/wickra/RSquared.java +++ b/bindings/java/src/main/java/org/wickra/RSquared.java @@ -74,6 +74,16 @@ public final class RSquared implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_R_SQUARED_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RangeBars.java b/bindings/java/src/main/java/org/wickra/RangeBars.java index 769a6f8a..bbff1b5b 100644 --- a/bindings/java/src/main/java/org/wickra/RangeBars.java +++ b/bindings/java/src/main/java/org/wickra/RangeBars.java @@ -50,6 +50,16 @@ public final class RangeBars implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RANGE_BARS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RealizedSpread.java b/bindings/java/src/main/java/org/wickra/RealizedSpread.java index 818a80a4..accaa65a 100644 --- a/bindings/java/src/main/java/org/wickra/RealizedSpread.java +++ b/bindings/java/src/main/java/org/wickra/RealizedSpread.java @@ -59,6 +59,16 @@ public final class RealizedSpread implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_REALIZED_SPREAD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RealizedVolatility.java b/bindings/java/src/main/java/org/wickra/RealizedVolatility.java index 0eabedfd..99831c30 100644 --- a/bindings/java/src/main/java/org/wickra/RealizedVolatility.java +++ b/bindings/java/src/main/java/org/wickra/RealizedVolatility.java @@ -74,6 +74,16 @@ public final class RealizedVolatility implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_REALIZED_VOLATILITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RecoveryFactor.java b/bindings/java/src/main/java/org/wickra/RecoveryFactor.java index 90e8b84e..7d53ebe8 100644 --- a/bindings/java/src/main/java/org/wickra/RecoveryFactor.java +++ b/bindings/java/src/main/java/org/wickra/RecoveryFactor.java @@ -71,6 +71,16 @@ public final class RecoveryFactor implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RECOVERY_FACTOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RectangleRange.java b/bindings/java/src/main/java/org/wickra/RectangleRange.java index 8316d169..145ae7f5 100644 --- a/bindings/java/src/main/java/org/wickra/RectangleRange.java +++ b/bindings/java/src/main/java/org/wickra/RectangleRange.java @@ -91,6 +91,16 @@ public final class RectangleRange implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RECTANGLE_RANGE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Reflex.java b/bindings/java/src/main/java/org/wickra/Reflex.java index 3553c5b7..3ff64082 100644 --- a/bindings/java/src/main/java/org/wickra/Reflex.java +++ b/bindings/java/src/main/java/org/wickra/Reflex.java @@ -74,6 +74,16 @@ public final class Reflex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_REFLEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RegimeLabel.java b/bindings/java/src/main/java/org/wickra/RegimeLabel.java index 53141dd9..6fd65c75 100644 --- a/bindings/java/src/main/java/org/wickra/RegimeLabel.java +++ b/bindings/java/src/main/java/org/wickra/RegimeLabel.java @@ -77,6 +77,16 @@ public final class RegimeLabel implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_REGIME_LABEL_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RelativeStrengthAB.java b/bindings/java/src/main/java/org/wickra/RelativeStrengthAB.java index 9ab2197d..4ce3f9fb 100644 --- a/bindings/java/src/main/java/org/wickra/RelativeStrengthAB.java +++ b/bindings/java/src/main/java/org/wickra/RelativeStrengthAB.java @@ -70,6 +70,16 @@ public final class RelativeStrengthAB implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RELATIVE_STRENGTH_AB_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RenkoBars.java b/bindings/java/src/main/java/org/wickra/RenkoBars.java index d5ee5558..2a50721e 100644 --- a/bindings/java/src/main/java/org/wickra/RenkoBars.java +++ b/bindings/java/src/main/java/org/wickra/RenkoBars.java @@ -50,6 +50,16 @@ public final class RenkoBars implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RENKO_BARS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RenkoTrailingStop.java b/bindings/java/src/main/java/org/wickra/RenkoTrailingStop.java index 77c73aad..df5d7012 100644 --- a/bindings/java/src/main/java/org/wickra/RenkoTrailingStop.java +++ b/bindings/java/src/main/java/org/wickra/RenkoTrailingStop.java @@ -71,6 +71,16 @@ public final class RenkoTrailingStop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RENKO_TRAILING_STOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RickshawMan.java b/bindings/java/src/main/java/org/wickra/RickshawMan.java index 6586c008..628ff5e2 100644 --- a/bindings/java/src/main/java/org/wickra/RickshawMan.java +++ b/bindings/java/src/main/java/org/wickra/RickshawMan.java @@ -91,6 +91,16 @@ public final class RickshawMan implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RICKSHAW_MAN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RisingThreeMethods.java b/bindings/java/src/main/java/org/wickra/RisingThreeMethods.java index 916e7381..b501b896 100644 --- a/bindings/java/src/main/java/org/wickra/RisingThreeMethods.java +++ b/bindings/java/src/main/java/org/wickra/RisingThreeMethods.java @@ -91,6 +91,16 @@ public final class RisingThreeMethods implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RISING_THREE_METHODS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Rmi.java b/bindings/java/src/main/java/org/wickra/Rmi.java index 8b937eb2..0357784a 100644 --- a/bindings/java/src/main/java/org/wickra/Rmi.java +++ b/bindings/java/src/main/java/org/wickra/Rmi.java @@ -77,6 +77,16 @@ public final class Rmi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RMI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Roc.java b/bindings/java/src/main/java/org/wickra/Roc.java index ccacc13f..09d7a65f 100644 --- a/bindings/java/src/main/java/org/wickra/Roc.java +++ b/bindings/java/src/main/java/org/wickra/Roc.java @@ -74,6 +74,16 @@ public final class Roc implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROC_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Rocp.java b/bindings/java/src/main/java/org/wickra/Rocp.java index d2631e3a..fe423b59 100644 --- a/bindings/java/src/main/java/org/wickra/Rocp.java +++ b/bindings/java/src/main/java/org/wickra/Rocp.java @@ -74,6 +74,16 @@ public final class Rocp implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROCP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Rocr.java b/bindings/java/src/main/java/org/wickra/Rocr.java index f71e514f..4dda51ad 100644 --- a/bindings/java/src/main/java/org/wickra/Rocr.java +++ b/bindings/java/src/main/java/org/wickra/Rocr.java @@ -74,6 +74,16 @@ public final class Rocr implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROCR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Rocr100.java b/bindings/java/src/main/java/org/wickra/Rocr100.java index 5149de54..e59152e7 100644 --- a/bindings/java/src/main/java/org/wickra/Rocr100.java +++ b/bindings/java/src/main/java/org/wickra/Rocr100.java @@ -74,6 +74,16 @@ public final class Rocr100 implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROCR100_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RogersSatchellVolatility.java b/bindings/java/src/main/java/org/wickra/RogersSatchellVolatility.java index 27868490..095fe03a 100644 --- a/bindings/java/src/main/java/org/wickra/RogersSatchellVolatility.java +++ b/bindings/java/src/main/java/org/wickra/RogersSatchellVolatility.java @@ -97,6 +97,16 @@ public final class RogersSatchellVolatility implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROGERS_SATCHELL_VOLATILITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RollMeasure.java b/bindings/java/src/main/java/org/wickra/RollMeasure.java index 395103e7..45f08131 100644 --- a/bindings/java/src/main/java/org/wickra/RollMeasure.java +++ b/bindings/java/src/main/java/org/wickra/RollMeasure.java @@ -59,6 +59,16 @@ public final class RollMeasure implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROLL_MEASURE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RollingCorrelation.java b/bindings/java/src/main/java/org/wickra/RollingCorrelation.java index dfe6fabe..bdf2e35b 100644 --- a/bindings/java/src/main/java/org/wickra/RollingCorrelation.java +++ b/bindings/java/src/main/java/org/wickra/RollingCorrelation.java @@ -78,6 +78,16 @@ public final class RollingCorrelation implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROLLING_CORRELATION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RollingCovariance.java b/bindings/java/src/main/java/org/wickra/RollingCovariance.java index c833928a..46a9ea87 100644 --- a/bindings/java/src/main/java/org/wickra/RollingCovariance.java +++ b/bindings/java/src/main/java/org/wickra/RollingCovariance.java @@ -78,6 +78,16 @@ public final class RollingCovariance implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROLLING_COVARIANCE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RollingIqr.java b/bindings/java/src/main/java/org/wickra/RollingIqr.java index e25e12d6..b0c1895b 100644 --- a/bindings/java/src/main/java/org/wickra/RollingIqr.java +++ b/bindings/java/src/main/java/org/wickra/RollingIqr.java @@ -74,6 +74,16 @@ public final class RollingIqr implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROLLING_IQR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RollingMinMaxScaler.java b/bindings/java/src/main/java/org/wickra/RollingMinMaxScaler.java index 2910eca4..5c7ab256 100644 --- a/bindings/java/src/main/java/org/wickra/RollingMinMaxScaler.java +++ b/bindings/java/src/main/java/org/wickra/RollingMinMaxScaler.java @@ -74,6 +74,16 @@ public final class RollingMinMaxScaler implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROLLING_MIN_MAX_SCALER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RollingPercentileRank.java b/bindings/java/src/main/java/org/wickra/RollingPercentileRank.java index 11460b58..147659b5 100644 --- a/bindings/java/src/main/java/org/wickra/RollingPercentileRank.java +++ b/bindings/java/src/main/java/org/wickra/RollingPercentileRank.java @@ -74,6 +74,16 @@ public final class RollingPercentileRank implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROLLING_PERCENTILE_RANK_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RollingQuantile.java b/bindings/java/src/main/java/org/wickra/RollingQuantile.java index 014a0652..49b7be59 100644 --- a/bindings/java/src/main/java/org/wickra/RollingQuantile.java +++ b/bindings/java/src/main/java/org/wickra/RollingQuantile.java @@ -74,6 +74,16 @@ public final class RollingQuantile implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROLLING_QUANTILE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RollingVwap.java b/bindings/java/src/main/java/org/wickra/RollingVwap.java index faa49b3d..bdcf35eb 100644 --- a/bindings/java/src/main/java/org/wickra/RollingVwap.java +++ b/bindings/java/src/main/java/org/wickra/RollingVwap.java @@ -94,6 +94,16 @@ public final class RollingVwap implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROLLING_VWAP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RoofingFilter.java b/bindings/java/src/main/java/org/wickra/RoofingFilter.java index e988f45d..38787b3e 100644 --- a/bindings/java/src/main/java/org/wickra/RoofingFilter.java +++ b/bindings/java/src/main/java/org/wickra/RoofingFilter.java @@ -77,6 +77,16 @@ public final class RoofingFilter implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ROOFING_FILTER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Rsi.java b/bindings/java/src/main/java/org/wickra/Rsi.java index 7bb97f4b..06f0a905 100644 --- a/bindings/java/src/main/java/org/wickra/Rsi.java +++ b/bindings/java/src/main/java/org/wickra/Rsi.java @@ -74,6 +74,16 @@ public final class Rsi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RSI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Rsx.java b/bindings/java/src/main/java/org/wickra/Rsx.java index 66b6b6e2..dd8f66ee 100644 --- a/bindings/java/src/main/java/org/wickra/Rsx.java +++ b/bindings/java/src/main/java/org/wickra/Rsx.java @@ -74,6 +74,16 @@ public final class Rsx implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RSX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RunBars.java b/bindings/java/src/main/java/org/wickra/RunBars.java index 16cbda40..5e7c0fa3 100644 --- a/bindings/java/src/main/java/org/wickra/RunBars.java +++ b/bindings/java/src/main/java/org/wickra/RunBars.java @@ -56,6 +56,16 @@ public final class RunBars implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RUN_BARS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Rvi.java b/bindings/java/src/main/java/org/wickra/Rvi.java index 3d10a70b..52ca9876 100644 --- a/bindings/java/src/main/java/org/wickra/Rvi.java +++ b/bindings/java/src/main/java/org/wickra/Rvi.java @@ -94,6 +94,16 @@ public final class Rvi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RVI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/RviVolatility.java b/bindings/java/src/main/java/org/wickra/RviVolatility.java index 78272981..84e8b710 100644 --- a/bindings/java/src/main/java/org/wickra/RviVolatility.java +++ b/bindings/java/src/main/java/org/wickra/RviVolatility.java @@ -74,6 +74,16 @@ public final class RviVolatility implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RVI_VOLATILITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Rwi.java b/bindings/java/src/main/java/org/wickra/Rwi.java index 0e487be0..9172190f 100644 --- a/bindings/java/src/main/java/org/wickra/Rwi.java +++ b/bindings/java/src/main/java/org/wickra/Rwi.java @@ -66,6 +66,16 @@ public final class Rwi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_RWI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SampleEntropy.java b/bindings/java/src/main/java/org/wickra/SampleEntropy.java index d64d3e64..42afc69c 100644 --- a/bindings/java/src/main/java/org/wickra/SampleEntropy.java +++ b/bindings/java/src/main/java/org/wickra/SampleEntropy.java @@ -77,6 +77,16 @@ public final class SampleEntropy implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SAMPLE_ENTROPY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SarExt.java b/bindings/java/src/main/java/org/wickra/SarExt.java index 83c01c8a..8ba35b98 100644 --- a/bindings/java/src/main/java/org/wickra/SarExt.java +++ b/bindings/java/src/main/java/org/wickra/SarExt.java @@ -91,6 +91,16 @@ public final class SarExt implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SAR_EXT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SeasonalZScore.java b/bindings/java/src/main/java/org/wickra/SeasonalZScore.java index 90a959ba..a1e57a0d 100644 --- a/bindings/java/src/main/java/org/wickra/SeasonalZScore.java +++ b/bindings/java/src/main/java/org/wickra/SeasonalZScore.java @@ -91,6 +91,16 @@ public final class SeasonalZScore implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SEASONAL_Z_SCORE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SeparatingLines.java b/bindings/java/src/main/java/org/wickra/SeparatingLines.java index 340ac5d1..4d93424e 100644 --- a/bindings/java/src/main/java/org/wickra/SeparatingLines.java +++ b/bindings/java/src/main/java/org/wickra/SeparatingLines.java @@ -91,6 +91,16 @@ public final class SeparatingLines implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SEPARATING_LINES_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SessionHighLow.java b/bindings/java/src/main/java/org/wickra/SessionHighLow.java index 35b1cb17..13513a13 100644 --- a/bindings/java/src/main/java/org/wickra/SessionHighLow.java +++ b/bindings/java/src/main/java/org/wickra/SessionHighLow.java @@ -63,6 +63,16 @@ public final class SessionHighLow implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SESSION_HIGH_LOW_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SessionRange.java b/bindings/java/src/main/java/org/wickra/SessionRange.java index 5e264c1f..b2b654d0 100644 --- a/bindings/java/src/main/java/org/wickra/SessionRange.java +++ b/bindings/java/src/main/java/org/wickra/SessionRange.java @@ -64,6 +64,16 @@ public final class SessionRange implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SESSION_RANGE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SessionVwap.java b/bindings/java/src/main/java/org/wickra/SessionVwap.java index 321ef974..84bc8880 100644 --- a/bindings/java/src/main/java/org/wickra/SessionVwap.java +++ b/bindings/java/src/main/java/org/wickra/SessionVwap.java @@ -91,6 +91,16 @@ public final class SessionVwap implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SESSION_VWAP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ShannonEntropy.java b/bindings/java/src/main/java/org/wickra/ShannonEntropy.java index ba9039a2..23455901 100644 --- a/bindings/java/src/main/java/org/wickra/ShannonEntropy.java +++ b/bindings/java/src/main/java/org/wickra/ShannonEntropy.java @@ -77,6 +77,16 @@ public final class ShannonEntropy implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SHANNON_ENTROPY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Shark.java b/bindings/java/src/main/java/org/wickra/Shark.java index a76992a1..2e59d83c 100644 --- a/bindings/java/src/main/java/org/wickra/Shark.java +++ b/bindings/java/src/main/java/org/wickra/Shark.java @@ -91,6 +91,16 @@ public final class Shark implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SHARK_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SharpeRatio.java b/bindings/java/src/main/java/org/wickra/SharpeRatio.java index cbbe1ddc..2d83fb39 100644 --- a/bindings/java/src/main/java/org/wickra/SharpeRatio.java +++ b/bindings/java/src/main/java/org/wickra/SharpeRatio.java @@ -74,6 +74,16 @@ public final class SharpeRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SHARPE_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ShootingStar.java b/bindings/java/src/main/java/org/wickra/ShootingStar.java index 11579429..fba4b8ff 100644 --- a/bindings/java/src/main/java/org/wickra/ShootingStar.java +++ b/bindings/java/src/main/java/org/wickra/ShootingStar.java @@ -91,6 +91,16 @@ public final class ShootingStar implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SHOOTING_STAR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ShortLine.java b/bindings/java/src/main/java/org/wickra/ShortLine.java index 243b38b0..f5953b06 100644 --- a/bindings/java/src/main/java/org/wickra/ShortLine.java +++ b/bindings/java/src/main/java/org/wickra/ShortLine.java @@ -91,6 +91,16 @@ public final class ShortLine implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SHORT_LINE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SignedVolume.java b/bindings/java/src/main/java/org/wickra/SignedVolume.java index 5fb892e3..d9277c3c 100644 --- a/bindings/java/src/main/java/org/wickra/SignedVolume.java +++ b/bindings/java/src/main/java/org/wickra/SignedVolume.java @@ -56,6 +56,16 @@ public final class SignedVolume implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SIGNED_VOLUME_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SineWave.java b/bindings/java/src/main/java/org/wickra/SineWave.java index 3126e211..7b698979 100644 --- a/bindings/java/src/main/java/org/wickra/SineWave.java +++ b/bindings/java/src/main/java/org/wickra/SineWave.java @@ -71,6 +71,16 @@ public final class SineWave implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SINE_WAVE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SineWeightedMa.java b/bindings/java/src/main/java/org/wickra/SineWeightedMa.java index e3a6a0b9..4693201e 100644 --- a/bindings/java/src/main/java/org/wickra/SineWeightedMa.java +++ b/bindings/java/src/main/java/org/wickra/SineWeightedMa.java @@ -74,6 +74,16 @@ public final class SineWeightedMa implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SINE_WEIGHTED_MA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SinglePrints.java b/bindings/java/src/main/java/org/wickra/SinglePrints.java index 79486929..09f09542 100644 --- a/bindings/java/src/main/java/org/wickra/SinglePrints.java +++ b/bindings/java/src/main/java/org/wickra/SinglePrints.java @@ -97,6 +97,16 @@ public final class SinglePrints implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SINGLE_PRINTS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Skewness.java b/bindings/java/src/main/java/org/wickra/Skewness.java index 02d05993..78e279db 100644 --- a/bindings/java/src/main/java/org/wickra/Skewness.java +++ b/bindings/java/src/main/java/org/wickra/Skewness.java @@ -74,6 +74,16 @@ public final class Skewness implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SKEWNESS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Sma.java b/bindings/java/src/main/java/org/wickra/Sma.java index 106db6a0..cfb2618d 100644 --- a/bindings/java/src/main/java/org/wickra/Sma.java +++ b/bindings/java/src/main/java/org/wickra/Sma.java @@ -74,6 +74,16 @@ public final class Sma implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Smi.java b/bindings/java/src/main/java/org/wickra/Smi.java index 34a5b06a..5e82eccb 100644 --- a/bindings/java/src/main/java/org/wickra/Smi.java +++ b/bindings/java/src/main/java/org/wickra/Smi.java @@ -100,6 +100,16 @@ public final class Smi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SMI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Smma.java b/bindings/java/src/main/java/org/wickra/Smma.java index b123dbc1..07aface2 100644 --- a/bindings/java/src/main/java/org/wickra/Smma.java +++ b/bindings/java/src/main/java/org/wickra/Smma.java @@ -74,6 +74,16 @@ public final class Smma implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SMMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SmoothedHeikinAshi.java b/bindings/java/src/main/java/org/wickra/SmoothedHeikinAshi.java index fdf8a9cd..20937613 100644 --- a/bindings/java/src/main/java/org/wickra/SmoothedHeikinAshi.java +++ b/bindings/java/src/main/java/org/wickra/SmoothedHeikinAshi.java @@ -68,6 +68,16 @@ public final class SmoothedHeikinAshi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SMOOTHED_HEIKIN_ASHI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SortinoRatio.java b/bindings/java/src/main/java/org/wickra/SortinoRatio.java index 21c88227..32b72ad7 100644 --- a/bindings/java/src/main/java/org/wickra/SortinoRatio.java +++ b/bindings/java/src/main/java/org/wickra/SortinoRatio.java @@ -74,6 +74,16 @@ public final class SortinoRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SORTINO_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SpearmanCorrelation.java b/bindings/java/src/main/java/org/wickra/SpearmanCorrelation.java index 1981c322..6512080a 100644 --- a/bindings/java/src/main/java/org/wickra/SpearmanCorrelation.java +++ b/bindings/java/src/main/java/org/wickra/SpearmanCorrelation.java @@ -78,6 +78,16 @@ public final class SpearmanCorrelation implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SPEARMAN_CORRELATION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SpinningTop.java b/bindings/java/src/main/java/org/wickra/SpinningTop.java index ceb32d34..0e37711a 100644 --- a/bindings/java/src/main/java/org/wickra/SpinningTop.java +++ b/bindings/java/src/main/java/org/wickra/SpinningTop.java @@ -91,6 +91,16 @@ public final class SpinningTop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SPINNING_TOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SpreadAr1Coefficient.java b/bindings/java/src/main/java/org/wickra/SpreadAr1Coefficient.java index 3234511c..341e70e8 100644 --- a/bindings/java/src/main/java/org/wickra/SpreadAr1Coefficient.java +++ b/bindings/java/src/main/java/org/wickra/SpreadAr1Coefficient.java @@ -78,6 +78,16 @@ public final class SpreadAr1Coefficient implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SPREAD_AR1_COEFFICIENT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SpreadBollingerBands.java b/bindings/java/src/main/java/org/wickra/SpreadBollingerBands.java index dcbf69c0..c8c0c158 100644 --- a/bindings/java/src/main/java/org/wickra/SpreadBollingerBands.java +++ b/bindings/java/src/main/java/org/wickra/SpreadBollingerBands.java @@ -68,6 +68,16 @@ public final class SpreadBollingerBands implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SPREAD_BOLLINGER_BANDS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SpreadHurst.java b/bindings/java/src/main/java/org/wickra/SpreadHurst.java index a6713578..9fe50f16 100644 --- a/bindings/java/src/main/java/org/wickra/SpreadHurst.java +++ b/bindings/java/src/main/java/org/wickra/SpreadHurst.java @@ -78,6 +78,16 @@ public final class SpreadHurst implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SPREAD_HURST_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/StalledPattern.java b/bindings/java/src/main/java/org/wickra/StalledPattern.java index 4ecf01a9..fa9f5746 100644 --- a/bindings/java/src/main/java/org/wickra/StalledPattern.java +++ b/bindings/java/src/main/java/org/wickra/StalledPattern.java @@ -91,6 +91,16 @@ public final class StalledPattern implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_STALLED_PATTERN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/StandardError.java b/bindings/java/src/main/java/org/wickra/StandardError.java index 0d3a3ba0..39539e3b 100644 --- a/bindings/java/src/main/java/org/wickra/StandardError.java +++ b/bindings/java/src/main/java/org/wickra/StandardError.java @@ -74,6 +74,16 @@ public final class StandardError implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_STANDARD_ERROR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/StandardErrorBands.java b/bindings/java/src/main/java/org/wickra/StandardErrorBands.java index 48ccddd6..e078ca25 100644 --- a/bindings/java/src/main/java/org/wickra/StandardErrorBands.java +++ b/bindings/java/src/main/java/org/wickra/StandardErrorBands.java @@ -67,6 +67,16 @@ public final class StandardErrorBands implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_STANDARD_ERROR_BANDS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/StarcBands.java b/bindings/java/src/main/java/org/wickra/StarcBands.java index 1b4806a0..6933e46b 100644 --- a/bindings/java/src/main/java/org/wickra/StarcBands.java +++ b/bindings/java/src/main/java/org/wickra/StarcBands.java @@ -70,6 +70,16 @@ public final class StarcBands implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_STARC_BANDS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Stc.java b/bindings/java/src/main/java/org/wickra/Stc.java index e1cbcd67..5cb47671 100644 --- a/bindings/java/src/main/java/org/wickra/Stc.java +++ b/bindings/java/src/main/java/org/wickra/Stc.java @@ -80,6 +80,16 @@ public final class Stc implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_STC_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/StdDev.java b/bindings/java/src/main/java/org/wickra/StdDev.java index a0596eb0..1dfc9610 100644 --- a/bindings/java/src/main/java/org/wickra/StdDev.java +++ b/bindings/java/src/main/java/org/wickra/StdDev.java @@ -74,6 +74,16 @@ public final class StdDev implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_STD_DEV_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/StepTrailingStop.java b/bindings/java/src/main/java/org/wickra/StepTrailingStop.java index 7979ff7f..6a094ab3 100644 --- a/bindings/java/src/main/java/org/wickra/StepTrailingStop.java +++ b/bindings/java/src/main/java/org/wickra/StepTrailingStop.java @@ -71,6 +71,16 @@ public final class StepTrailingStop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_STEP_TRAILING_STOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SterlingRatio.java b/bindings/java/src/main/java/org/wickra/SterlingRatio.java index c9332bbb..a3333e79 100644 --- a/bindings/java/src/main/java/org/wickra/SterlingRatio.java +++ b/bindings/java/src/main/java/org/wickra/SterlingRatio.java @@ -74,6 +74,16 @@ public final class SterlingRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_STERLING_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/StickSandwich.java b/bindings/java/src/main/java/org/wickra/StickSandwich.java index b77f6efc..f3572126 100644 --- a/bindings/java/src/main/java/org/wickra/StickSandwich.java +++ b/bindings/java/src/main/java/org/wickra/StickSandwich.java @@ -91,6 +91,16 @@ public final class StickSandwich implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_STICK_SANDWICH_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/StochRsi.java b/bindings/java/src/main/java/org/wickra/StochRsi.java index 528850ac..1ae47d13 100644 --- a/bindings/java/src/main/java/org/wickra/StochRsi.java +++ b/bindings/java/src/main/java/org/wickra/StochRsi.java @@ -77,6 +77,16 @@ public final class StochRsi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_STOCH_RSI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Stochastic.java b/bindings/java/src/main/java/org/wickra/Stochastic.java index 9b97c1d9..a8a358a8 100644 --- a/bindings/java/src/main/java/org/wickra/Stochastic.java +++ b/bindings/java/src/main/java/org/wickra/Stochastic.java @@ -69,6 +69,16 @@ public final class Stochastic implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_STOCHASTIC_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/StochasticCci.java b/bindings/java/src/main/java/org/wickra/StochasticCci.java index b96b583e..46863055 100644 --- a/bindings/java/src/main/java/org/wickra/StochasticCci.java +++ b/bindings/java/src/main/java/org/wickra/StochasticCci.java @@ -94,6 +94,16 @@ public final class StochasticCci implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_STOCHASTIC_CCI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SuperSmoother.java b/bindings/java/src/main/java/org/wickra/SuperSmoother.java index 48dbc68b..e9875390 100644 --- a/bindings/java/src/main/java/org/wickra/SuperSmoother.java +++ b/bindings/java/src/main/java/org/wickra/SuperSmoother.java @@ -74,6 +74,16 @@ public final class SuperSmoother implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SUPER_SMOOTHER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/SuperTrend.java b/bindings/java/src/main/java/org/wickra/SuperTrend.java index 53019b65..371d9910 100644 --- a/bindings/java/src/main/java/org/wickra/SuperTrend.java +++ b/bindings/java/src/main/java/org/wickra/SuperTrend.java @@ -66,6 +66,16 @@ public final class SuperTrend implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_SUPER_TREND_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/T3.java b/bindings/java/src/main/java/org/wickra/T3.java index 114218f7..569fadd2 100644 --- a/bindings/java/src/main/java/org/wickra/T3.java +++ b/bindings/java/src/main/java/org/wickra/T3.java @@ -74,6 +74,16 @@ public final class T3 implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_T3_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TailRatio.java b/bindings/java/src/main/java/org/wickra/TailRatio.java index 9f55dd79..dfbf553d 100644 --- a/bindings/java/src/main/java/org/wickra/TailRatio.java +++ b/bindings/java/src/main/java/org/wickra/TailRatio.java @@ -74,6 +74,16 @@ public final class TailRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TAIL_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TakerBuySellRatio.java b/bindings/java/src/main/java/org/wickra/TakerBuySellRatio.java index 78ff2443..0790e598 100644 --- a/bindings/java/src/main/java/org/wickra/TakerBuySellRatio.java +++ b/bindings/java/src/main/java/org/wickra/TakerBuySellRatio.java @@ -56,6 +56,16 @@ public final class TakerBuySellRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TAKER_BUY_SELL_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Takuri.java b/bindings/java/src/main/java/org/wickra/Takuri.java index fc0269bf..313a3a8d 100644 --- a/bindings/java/src/main/java/org/wickra/Takuri.java +++ b/bindings/java/src/main/java/org/wickra/Takuri.java @@ -91,6 +91,16 @@ public final class Takuri implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TAKURI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TasukiGap.java b/bindings/java/src/main/java/org/wickra/TasukiGap.java index 63800309..50c3ef78 100644 --- a/bindings/java/src/main/java/org/wickra/TasukiGap.java +++ b/bindings/java/src/main/java/org/wickra/TasukiGap.java @@ -91,6 +91,16 @@ public final class TasukiGap implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TASUKI_GAP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdCamouflage.java b/bindings/java/src/main/java/org/wickra/TdCamouflage.java index 3b56da19..fa4d1dfc 100644 --- a/bindings/java/src/main/java/org/wickra/TdCamouflage.java +++ b/bindings/java/src/main/java/org/wickra/TdCamouflage.java @@ -91,6 +91,16 @@ public final class TdCamouflage implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_CAMOUFLAGE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdClop.java b/bindings/java/src/main/java/org/wickra/TdClop.java index a7ea9f92..5f415bfc 100644 --- a/bindings/java/src/main/java/org/wickra/TdClop.java +++ b/bindings/java/src/main/java/org/wickra/TdClop.java @@ -91,6 +91,16 @@ public final class TdClop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_CLOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdClopwin.java b/bindings/java/src/main/java/org/wickra/TdClopwin.java index 6daba005..fb503c53 100644 --- a/bindings/java/src/main/java/org/wickra/TdClopwin.java +++ b/bindings/java/src/main/java/org/wickra/TdClopwin.java @@ -91,6 +91,16 @@ public final class TdClopwin implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_CLOPWIN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdCombo.java b/bindings/java/src/main/java/org/wickra/TdCombo.java index 426312fe..f7402ec5 100644 --- a/bindings/java/src/main/java/org/wickra/TdCombo.java +++ b/bindings/java/src/main/java/org/wickra/TdCombo.java @@ -103,6 +103,16 @@ public final class TdCombo implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_COMBO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdCountdown.java b/bindings/java/src/main/java/org/wickra/TdCountdown.java index b2145ecd..4288e70e 100644 --- a/bindings/java/src/main/java/org/wickra/TdCountdown.java +++ b/bindings/java/src/main/java/org/wickra/TdCountdown.java @@ -103,6 +103,16 @@ public final class TdCountdown implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_COUNTDOWN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdDWave.java b/bindings/java/src/main/java/org/wickra/TdDWave.java index ae50b7ef..4dc23039 100644 --- a/bindings/java/src/main/java/org/wickra/TdDWave.java +++ b/bindings/java/src/main/java/org/wickra/TdDWave.java @@ -94,6 +94,16 @@ public final class TdDWave implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_D_WAVE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdDeMarker.java b/bindings/java/src/main/java/org/wickra/TdDeMarker.java index 5226c0c1..99603dab 100644 --- a/bindings/java/src/main/java/org/wickra/TdDeMarker.java +++ b/bindings/java/src/main/java/org/wickra/TdDeMarker.java @@ -94,6 +94,16 @@ public final class TdDeMarker implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_DE_MARKER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdDifferential.java b/bindings/java/src/main/java/org/wickra/TdDifferential.java index 65cbd04c..b89aea80 100644 --- a/bindings/java/src/main/java/org/wickra/TdDifferential.java +++ b/bindings/java/src/main/java/org/wickra/TdDifferential.java @@ -91,6 +91,16 @@ public final class TdDifferential implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_DIFFERENTIAL_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdLines.java b/bindings/java/src/main/java/org/wickra/TdLines.java index 75f91758..80776a49 100644 --- a/bindings/java/src/main/java/org/wickra/TdLines.java +++ b/bindings/java/src/main/java/org/wickra/TdLines.java @@ -69,6 +69,16 @@ public final class TdLines implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_LINES_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdMovingAverage.java b/bindings/java/src/main/java/org/wickra/TdMovingAverage.java index 2a0af0cb..82ce6bf8 100644 --- a/bindings/java/src/main/java/org/wickra/TdMovingAverage.java +++ b/bindings/java/src/main/java/org/wickra/TdMovingAverage.java @@ -69,6 +69,16 @@ public final class TdMovingAverage implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_MOVING_AVERAGE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdOpen.java b/bindings/java/src/main/java/org/wickra/TdOpen.java index 903ba335..c1e6d131 100644 --- a/bindings/java/src/main/java/org/wickra/TdOpen.java +++ b/bindings/java/src/main/java/org/wickra/TdOpen.java @@ -91,6 +91,16 @@ public final class TdOpen implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_OPEN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdPressure.java b/bindings/java/src/main/java/org/wickra/TdPressure.java index b09a94ab..640fed34 100644 --- a/bindings/java/src/main/java/org/wickra/TdPressure.java +++ b/bindings/java/src/main/java/org/wickra/TdPressure.java @@ -94,6 +94,16 @@ public final class TdPressure implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_PRESSURE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdPropulsion.java b/bindings/java/src/main/java/org/wickra/TdPropulsion.java index 60ab468b..f65a8cc4 100644 --- a/bindings/java/src/main/java/org/wickra/TdPropulsion.java +++ b/bindings/java/src/main/java/org/wickra/TdPropulsion.java @@ -91,6 +91,16 @@ public final class TdPropulsion implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_PROPULSION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdRangeProjection.java b/bindings/java/src/main/java/org/wickra/TdRangeProjection.java index 59c84cb5..50316896 100644 --- a/bindings/java/src/main/java/org/wickra/TdRangeProjection.java +++ b/bindings/java/src/main/java/org/wickra/TdRangeProjection.java @@ -63,6 +63,16 @@ public final class TdRangeProjection implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_RANGE_PROJECTION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdRei.java b/bindings/java/src/main/java/org/wickra/TdRei.java index d46dbff5..f7daf778 100644 --- a/bindings/java/src/main/java/org/wickra/TdRei.java +++ b/bindings/java/src/main/java/org/wickra/TdRei.java @@ -94,6 +94,16 @@ public final class TdRei implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_REI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdRiskLevel.java b/bindings/java/src/main/java/org/wickra/TdRiskLevel.java index 50047edd..3241a26d 100644 --- a/bindings/java/src/main/java/org/wickra/TdRiskLevel.java +++ b/bindings/java/src/main/java/org/wickra/TdRiskLevel.java @@ -69,6 +69,16 @@ public final class TdRiskLevel implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_RISK_LEVEL_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdSequential.java b/bindings/java/src/main/java/org/wickra/TdSequential.java index f0efa1d4..1c728600 100644 --- a/bindings/java/src/main/java/org/wickra/TdSequential.java +++ b/bindings/java/src/main/java/org/wickra/TdSequential.java @@ -76,6 +76,16 @@ public final class TdSequential implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_SEQUENTIAL_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdSetup.java b/bindings/java/src/main/java/org/wickra/TdSetup.java index 7052a481..0a8a0e9d 100644 --- a/bindings/java/src/main/java/org/wickra/TdSetup.java +++ b/bindings/java/src/main/java/org/wickra/TdSetup.java @@ -97,6 +97,16 @@ public final class TdSetup implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_SETUP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TdTrap.java b/bindings/java/src/main/java/org/wickra/TdTrap.java index 8d993e3f..d711c3be 100644 --- a/bindings/java/src/main/java/org/wickra/TdTrap.java +++ b/bindings/java/src/main/java/org/wickra/TdTrap.java @@ -91,6 +91,16 @@ public final class TdTrap implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TD_TRAP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Tema.java b/bindings/java/src/main/java/org/wickra/Tema.java index abba5509..b027854e 100644 --- a/bindings/java/src/main/java/org/wickra/Tema.java +++ b/bindings/java/src/main/java/org/wickra/Tema.java @@ -74,6 +74,16 @@ public final class Tema implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TEMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TermStructureBasis.java b/bindings/java/src/main/java/org/wickra/TermStructureBasis.java index a35b973c..61841f42 100644 --- a/bindings/java/src/main/java/org/wickra/TermStructureBasis.java +++ b/bindings/java/src/main/java/org/wickra/TermStructureBasis.java @@ -56,6 +56,16 @@ public final class TermStructureBasis implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TERM_STRUCTURE_BASIS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ThreeDrives.java b/bindings/java/src/main/java/org/wickra/ThreeDrives.java index cd5e7cac..8c8d93a0 100644 --- a/bindings/java/src/main/java/org/wickra/ThreeDrives.java +++ b/bindings/java/src/main/java/org/wickra/ThreeDrives.java @@ -91,6 +91,16 @@ public final class ThreeDrives implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_THREE_DRIVES_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ThreeInside.java b/bindings/java/src/main/java/org/wickra/ThreeInside.java index b5c1d328..a0584b91 100644 --- a/bindings/java/src/main/java/org/wickra/ThreeInside.java +++ b/bindings/java/src/main/java/org/wickra/ThreeInside.java @@ -91,6 +91,16 @@ public final class ThreeInside implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_THREE_INSIDE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ThreeLineBreak.java b/bindings/java/src/main/java/org/wickra/ThreeLineBreak.java index 40e5163c..355e7746 100644 --- a/bindings/java/src/main/java/org/wickra/ThreeLineBreak.java +++ b/bindings/java/src/main/java/org/wickra/ThreeLineBreak.java @@ -94,6 +94,16 @@ public final class ThreeLineBreak implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_THREE_LINE_BREAK_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ThreeLineBreakBars.java b/bindings/java/src/main/java/org/wickra/ThreeLineBreakBars.java index 98d75ff7..f03f7c20 100644 --- a/bindings/java/src/main/java/org/wickra/ThreeLineBreakBars.java +++ b/bindings/java/src/main/java/org/wickra/ThreeLineBreakBars.java @@ -53,6 +53,16 @@ public final class ThreeLineBreakBars implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_THREE_LINE_BREAK_BARS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ThreeLineStrike.java b/bindings/java/src/main/java/org/wickra/ThreeLineStrike.java index 810bddbf..b1b0efdc 100644 --- a/bindings/java/src/main/java/org/wickra/ThreeLineStrike.java +++ b/bindings/java/src/main/java/org/wickra/ThreeLineStrike.java @@ -91,6 +91,16 @@ public final class ThreeLineStrike implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_THREE_LINE_STRIKE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ThreeOutside.java b/bindings/java/src/main/java/org/wickra/ThreeOutside.java index 5a64ae70..e0463892 100644 --- a/bindings/java/src/main/java/org/wickra/ThreeOutside.java +++ b/bindings/java/src/main/java/org/wickra/ThreeOutside.java @@ -91,6 +91,16 @@ public final class ThreeOutside implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_THREE_OUTSIDE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ThreeSoldiersOrCrows.java b/bindings/java/src/main/java/org/wickra/ThreeSoldiersOrCrows.java index 6cec0729..48092b5a 100644 --- a/bindings/java/src/main/java/org/wickra/ThreeSoldiersOrCrows.java +++ b/bindings/java/src/main/java/org/wickra/ThreeSoldiersOrCrows.java @@ -91,6 +91,16 @@ public final class ThreeSoldiersOrCrows implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_THREE_SOLDIERS_OR_CROWS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ThreeStarsInSouth.java b/bindings/java/src/main/java/org/wickra/ThreeStarsInSouth.java index 952879c0..581a7e61 100644 --- a/bindings/java/src/main/java/org/wickra/ThreeStarsInSouth.java +++ b/bindings/java/src/main/java/org/wickra/ThreeStarsInSouth.java @@ -91,6 +91,16 @@ public final class ThreeStarsInSouth implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_THREE_STARS_IN_SOUTH_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Thrusting.java b/bindings/java/src/main/java/org/wickra/Thrusting.java index 5b749b1d..e2094cae 100644 --- a/bindings/java/src/main/java/org/wickra/Thrusting.java +++ b/bindings/java/src/main/java/org/wickra/Thrusting.java @@ -91,6 +91,16 @@ public final class Thrusting implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_THRUSTING_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TickBars.java b/bindings/java/src/main/java/org/wickra/TickBars.java index 83526f86..5ba2d8fd 100644 --- a/bindings/java/src/main/java/org/wickra/TickBars.java +++ b/bindings/java/src/main/java/org/wickra/TickBars.java @@ -55,6 +55,16 @@ public final class TickBars implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TICK_BARS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TickIndex.java b/bindings/java/src/main/java/org/wickra/TickIndex.java index 1a3710c3..27922e3e 100644 --- a/bindings/java/src/main/java/org/wickra/TickIndex.java +++ b/bindings/java/src/main/java/org/wickra/TickIndex.java @@ -77,6 +77,16 @@ public final class TickIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TICK_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Tii.java b/bindings/java/src/main/java/org/wickra/Tii.java index 3657ae33..4cb2bc84 100644 --- a/bindings/java/src/main/java/org/wickra/Tii.java +++ b/bindings/java/src/main/java/org/wickra/Tii.java @@ -77,6 +77,16 @@ public final class Tii implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TII_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TimeBasedStop.java b/bindings/java/src/main/java/org/wickra/TimeBasedStop.java index fff73752..b6234534 100644 --- a/bindings/java/src/main/java/org/wickra/TimeBasedStop.java +++ b/bindings/java/src/main/java/org/wickra/TimeBasedStop.java @@ -94,6 +94,16 @@ public final class TimeBasedStop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TIME_BASED_STOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TimeOfDayReturnProfile.java b/bindings/java/src/main/java/org/wickra/TimeOfDayReturnProfile.java index 859eaa6f..967f916c 100644 --- a/bindings/java/src/main/java/org/wickra/TimeOfDayReturnProfile.java +++ b/bindings/java/src/main/java/org/wickra/TimeOfDayReturnProfile.java @@ -70,6 +70,16 @@ public final class TimeOfDayReturnProfile implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TIME_OF_DAY_RETURN_PROFILE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TowerTopBottom.java b/bindings/java/src/main/java/org/wickra/TowerTopBottom.java index 6eeaa3ce..8021670b 100644 --- a/bindings/java/src/main/java/org/wickra/TowerTopBottom.java +++ b/bindings/java/src/main/java/org/wickra/TowerTopBottom.java @@ -91,6 +91,16 @@ public final class TowerTopBottom implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TOWER_TOP_BOTTOM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TpoProfile.java b/bindings/java/src/main/java/org/wickra/TpoProfile.java index 2ffea586..65807721 100644 --- a/bindings/java/src/main/java/org/wickra/TpoProfile.java +++ b/bindings/java/src/main/java/org/wickra/TpoProfile.java @@ -77,6 +77,16 @@ public final class TpoProfile implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TPO_PROFILE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TradeImbalance.java b/bindings/java/src/main/java/org/wickra/TradeImbalance.java index 2b150ee1..06729036 100644 --- a/bindings/java/src/main/java/org/wickra/TradeImbalance.java +++ b/bindings/java/src/main/java/org/wickra/TradeImbalance.java @@ -59,6 +59,16 @@ public final class TradeImbalance implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TRADE_IMBALANCE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TradeSignAutocorrelation.java b/bindings/java/src/main/java/org/wickra/TradeSignAutocorrelation.java index 1a414a81..815cb69c 100644 --- a/bindings/java/src/main/java/org/wickra/TradeSignAutocorrelation.java +++ b/bindings/java/src/main/java/org/wickra/TradeSignAutocorrelation.java @@ -59,6 +59,16 @@ public final class TradeSignAutocorrelation implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TRADE_SIGN_AUTOCORRELATION_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TradeVolumeIndex.java b/bindings/java/src/main/java/org/wickra/TradeVolumeIndex.java index 13a54064..c1fac32b 100644 --- a/bindings/java/src/main/java/org/wickra/TradeVolumeIndex.java +++ b/bindings/java/src/main/java/org/wickra/TradeVolumeIndex.java @@ -91,6 +91,16 @@ public final class TradeVolumeIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TRADE_VOLUME_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TrendLabel.java b/bindings/java/src/main/java/org/wickra/TrendLabel.java index 7f164f67..9e50b351 100644 --- a/bindings/java/src/main/java/org/wickra/TrendLabel.java +++ b/bindings/java/src/main/java/org/wickra/TrendLabel.java @@ -74,6 +74,16 @@ public final class TrendLabel implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TREND_LABEL_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TrendStrengthIndex.java b/bindings/java/src/main/java/org/wickra/TrendStrengthIndex.java index 37670cfd..48188c05 100644 --- a/bindings/java/src/main/java/org/wickra/TrendStrengthIndex.java +++ b/bindings/java/src/main/java/org/wickra/TrendStrengthIndex.java @@ -74,6 +74,16 @@ public final class TrendStrengthIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TREND_STRENGTH_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Trendflex.java b/bindings/java/src/main/java/org/wickra/Trendflex.java index 33be3e09..de665a85 100644 --- a/bindings/java/src/main/java/org/wickra/Trendflex.java +++ b/bindings/java/src/main/java/org/wickra/Trendflex.java @@ -74,6 +74,16 @@ public final class Trendflex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TRENDFLEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TreynorRatio.java b/bindings/java/src/main/java/org/wickra/TreynorRatio.java index 122f9e59..e7c7b2a8 100644 --- a/bindings/java/src/main/java/org/wickra/TreynorRatio.java +++ b/bindings/java/src/main/java/org/wickra/TreynorRatio.java @@ -78,6 +78,16 @@ public final class TreynorRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TREYNOR_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Triangle.java b/bindings/java/src/main/java/org/wickra/Triangle.java index 9968d609..d9e539e9 100644 --- a/bindings/java/src/main/java/org/wickra/Triangle.java +++ b/bindings/java/src/main/java/org/wickra/Triangle.java @@ -91,6 +91,16 @@ public final class Triangle implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TRIANGLE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Trima.java b/bindings/java/src/main/java/org/wickra/Trima.java index 9d4e9ecb..350da925 100644 --- a/bindings/java/src/main/java/org/wickra/Trima.java +++ b/bindings/java/src/main/java/org/wickra/Trima.java @@ -74,6 +74,16 @@ public final class Trima implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TRIMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Trin.java b/bindings/java/src/main/java/org/wickra/Trin.java index 3cc6b7c5..6c737451 100644 --- a/bindings/java/src/main/java/org/wickra/Trin.java +++ b/bindings/java/src/main/java/org/wickra/Trin.java @@ -77,6 +77,16 @@ public final class Trin implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TRIN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TripleTopBottom.java b/bindings/java/src/main/java/org/wickra/TripleTopBottom.java index e497e29d..ba0dd18d 100644 --- a/bindings/java/src/main/java/org/wickra/TripleTopBottom.java +++ b/bindings/java/src/main/java/org/wickra/TripleTopBottom.java @@ -91,6 +91,16 @@ public final class TripleTopBottom implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TRIPLE_TOP_BOTTOM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Tristar.java b/bindings/java/src/main/java/org/wickra/Tristar.java index 116b2652..564d3c90 100644 --- a/bindings/java/src/main/java/org/wickra/Tristar.java +++ b/bindings/java/src/main/java/org/wickra/Tristar.java @@ -91,6 +91,16 @@ public final class Tristar implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TRISTAR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Trix.java b/bindings/java/src/main/java/org/wickra/Trix.java index 091adf71..e4bcff5e 100644 --- a/bindings/java/src/main/java/org/wickra/Trix.java +++ b/bindings/java/src/main/java/org/wickra/Trix.java @@ -74,6 +74,16 @@ public final class Trix implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TRIX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TrueRange.java b/bindings/java/src/main/java/org/wickra/TrueRange.java index 98948650..0a4195e9 100644 --- a/bindings/java/src/main/java/org/wickra/TrueRange.java +++ b/bindings/java/src/main/java/org/wickra/TrueRange.java @@ -91,6 +91,16 @@ public final class TrueRange implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TRUE_RANGE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Tsf.java b/bindings/java/src/main/java/org/wickra/Tsf.java index 5a977ce9..b7a5f6d2 100644 --- a/bindings/java/src/main/java/org/wickra/Tsf.java +++ b/bindings/java/src/main/java/org/wickra/Tsf.java @@ -74,6 +74,16 @@ public final class Tsf implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TSF_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TsfOscillator.java b/bindings/java/src/main/java/org/wickra/TsfOscillator.java index 26ef42a1..43627f72 100644 --- a/bindings/java/src/main/java/org/wickra/TsfOscillator.java +++ b/bindings/java/src/main/java/org/wickra/TsfOscillator.java @@ -74,6 +74,16 @@ public final class TsfOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TSF_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Tsi.java b/bindings/java/src/main/java/org/wickra/Tsi.java index 82583b69..292b9817 100644 --- a/bindings/java/src/main/java/org/wickra/Tsi.java +++ b/bindings/java/src/main/java/org/wickra/Tsi.java @@ -77,6 +77,16 @@ public final class Tsi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TSI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Tsv.java b/bindings/java/src/main/java/org/wickra/Tsv.java index bdb99e74..df8c62b1 100644 --- a/bindings/java/src/main/java/org/wickra/Tsv.java +++ b/bindings/java/src/main/java/org/wickra/Tsv.java @@ -94,6 +94,16 @@ public final class Tsv implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TSV_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TtmSqueeze.java b/bindings/java/src/main/java/org/wickra/TtmSqueeze.java index cbbf2578..a9926ae5 100644 --- a/bindings/java/src/main/java/org/wickra/TtmSqueeze.java +++ b/bindings/java/src/main/java/org/wickra/TtmSqueeze.java @@ -66,6 +66,16 @@ public final class TtmSqueeze implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TTM_SQUEEZE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TtmTrend.java b/bindings/java/src/main/java/org/wickra/TtmTrend.java index 29d435b3..f231f254 100644 --- a/bindings/java/src/main/java/org/wickra/TtmTrend.java +++ b/bindings/java/src/main/java/org/wickra/TtmTrend.java @@ -94,6 +94,16 @@ public final class TtmTrend implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TTM_TREND_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TurnOfMonth.java b/bindings/java/src/main/java/org/wickra/TurnOfMonth.java index d31fd1b2..16ad4d0c 100644 --- a/bindings/java/src/main/java/org/wickra/TurnOfMonth.java +++ b/bindings/java/src/main/java/org/wickra/TurnOfMonth.java @@ -91,6 +91,16 @@ public final class TurnOfMonth implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TURN_OF_MONTH_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Tweezer.java b/bindings/java/src/main/java/org/wickra/Tweezer.java index 805e2977..e6404199 100644 --- a/bindings/java/src/main/java/org/wickra/Tweezer.java +++ b/bindings/java/src/main/java/org/wickra/Tweezer.java @@ -91,6 +91,16 @@ public final class Tweezer implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TWEEZER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TwiggsMoneyFlow.java b/bindings/java/src/main/java/org/wickra/TwiggsMoneyFlow.java index 00f5ca21..9290ce1f 100644 --- a/bindings/java/src/main/java/org/wickra/TwiggsMoneyFlow.java +++ b/bindings/java/src/main/java/org/wickra/TwiggsMoneyFlow.java @@ -94,6 +94,16 @@ public final class TwiggsMoneyFlow implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TWIGGS_MONEY_FLOW_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TwoCrows.java b/bindings/java/src/main/java/org/wickra/TwoCrows.java index 1e7cd216..fa132aa1 100644 --- a/bindings/java/src/main/java/org/wickra/TwoCrows.java +++ b/bindings/java/src/main/java/org/wickra/TwoCrows.java @@ -91,6 +91,16 @@ public final class TwoCrows implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TWO_CROWS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/TypicalPrice.java b/bindings/java/src/main/java/org/wickra/TypicalPrice.java index b659717e..c1a566e1 100644 --- a/bindings/java/src/main/java/org/wickra/TypicalPrice.java +++ b/bindings/java/src/main/java/org/wickra/TypicalPrice.java @@ -91,6 +91,16 @@ public final class TypicalPrice implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_TYPICAL_PRICE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/UlcerIndex.java b/bindings/java/src/main/java/org/wickra/UlcerIndex.java index 279ce055..e20c7f08 100644 --- a/bindings/java/src/main/java/org/wickra/UlcerIndex.java +++ b/bindings/java/src/main/java/org/wickra/UlcerIndex.java @@ -74,6 +74,16 @@ public final class UlcerIndex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ULCER_INDEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/UltimateOscillator.java b/bindings/java/src/main/java/org/wickra/UltimateOscillator.java index 4af84221..79ce4c59 100644 --- a/bindings/java/src/main/java/org/wickra/UltimateOscillator.java +++ b/bindings/java/src/main/java/org/wickra/UltimateOscillator.java @@ -100,6 +100,16 @@ public final class UltimateOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ULTIMATE_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/UniqueThreeRiver.java b/bindings/java/src/main/java/org/wickra/UniqueThreeRiver.java index 0a5a6ce0..0a0c44b0 100644 --- a/bindings/java/src/main/java/org/wickra/UniqueThreeRiver.java +++ b/bindings/java/src/main/java/org/wickra/UniqueThreeRiver.java @@ -91,6 +91,16 @@ public final class UniqueThreeRiver implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_UNIQUE_THREE_RIVER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/UniversalOscillator.java b/bindings/java/src/main/java/org/wickra/UniversalOscillator.java index d63bc139..efd84ac8 100644 --- a/bindings/java/src/main/java/org/wickra/UniversalOscillator.java +++ b/bindings/java/src/main/java/org/wickra/UniversalOscillator.java @@ -74,6 +74,16 @@ public final class UniversalOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_UNIVERSAL_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/UpDownVolumeRatio.java b/bindings/java/src/main/java/org/wickra/UpDownVolumeRatio.java index c62e8453..7632613b 100644 --- a/bindings/java/src/main/java/org/wickra/UpDownVolumeRatio.java +++ b/bindings/java/src/main/java/org/wickra/UpDownVolumeRatio.java @@ -77,6 +77,16 @@ public final class UpDownVolumeRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_UP_DOWN_VOLUME_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/UpsideGapThreeMethods.java b/bindings/java/src/main/java/org/wickra/UpsideGapThreeMethods.java index 34981c16..19a973f5 100644 --- a/bindings/java/src/main/java/org/wickra/UpsideGapThreeMethods.java +++ b/bindings/java/src/main/java/org/wickra/UpsideGapThreeMethods.java @@ -91,6 +91,16 @@ public final class UpsideGapThreeMethods implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_UPSIDE_GAP_THREE_METHODS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/UpsideGapTwoCrows.java b/bindings/java/src/main/java/org/wickra/UpsideGapTwoCrows.java index 8e07c9ea..a5fd0b1f 100644 --- a/bindings/java/src/main/java/org/wickra/UpsideGapTwoCrows.java +++ b/bindings/java/src/main/java/org/wickra/UpsideGapTwoCrows.java @@ -91,6 +91,16 @@ public final class UpsideGapTwoCrows implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_UPSIDE_GAP_TWO_CROWS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/UpsidePotentialRatio.java b/bindings/java/src/main/java/org/wickra/UpsidePotentialRatio.java index 1587f3f8..ab21c3b7 100644 --- a/bindings/java/src/main/java/org/wickra/UpsidePotentialRatio.java +++ b/bindings/java/src/main/java/org/wickra/UpsidePotentialRatio.java @@ -74,6 +74,16 @@ public final class UpsidePotentialRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_UPSIDE_POTENTIAL_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ValueArea.java b/bindings/java/src/main/java/org/wickra/ValueArea.java index 359bd049..b17adb57 100644 --- a/bindings/java/src/main/java/org/wickra/ValueArea.java +++ b/bindings/java/src/main/java/org/wickra/ValueArea.java @@ -70,6 +70,16 @@ public final class ValueArea implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VALUE_AREA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ValueAtRisk.java b/bindings/java/src/main/java/org/wickra/ValueAtRisk.java index 5fffce4c..140866fe 100644 --- a/bindings/java/src/main/java/org/wickra/ValueAtRisk.java +++ b/bindings/java/src/main/java/org/wickra/ValueAtRisk.java @@ -74,6 +74,16 @@ public final class ValueAtRisk implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VALUE_AT_RISK_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Variance.java b/bindings/java/src/main/java/org/wickra/Variance.java index c79c00e3..441f8220 100644 --- a/bindings/java/src/main/java/org/wickra/Variance.java +++ b/bindings/java/src/main/java/org/wickra/Variance.java @@ -74,6 +74,16 @@ public final class Variance implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VARIANCE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VarianceRatio.java b/bindings/java/src/main/java/org/wickra/VarianceRatio.java index 980d3288..a281363c 100644 --- a/bindings/java/src/main/java/org/wickra/VarianceRatio.java +++ b/bindings/java/src/main/java/org/wickra/VarianceRatio.java @@ -81,6 +81,16 @@ public final class VarianceRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VARIANCE_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VerticalHorizontalFilter.java b/bindings/java/src/main/java/org/wickra/VerticalHorizontalFilter.java index 2a9872e8..7a6997d4 100644 --- a/bindings/java/src/main/java/org/wickra/VerticalHorizontalFilter.java +++ b/bindings/java/src/main/java/org/wickra/VerticalHorizontalFilter.java @@ -74,6 +74,16 @@ public final class VerticalHorizontalFilter implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VERTICAL_HORIZONTAL_FILTER_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Vidya.java b/bindings/java/src/main/java/org/wickra/Vidya.java index 7e9578d9..4363d3fe 100644 --- a/bindings/java/src/main/java/org/wickra/Vidya.java +++ b/bindings/java/src/main/java/org/wickra/Vidya.java @@ -77,6 +77,16 @@ public final class Vidya implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VIDYA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VolatilityCone.java b/bindings/java/src/main/java/org/wickra/VolatilityCone.java index 9c1d5007..dc4b99c4 100644 --- a/bindings/java/src/main/java/org/wickra/VolatilityCone.java +++ b/bindings/java/src/main/java/org/wickra/VolatilityCone.java @@ -72,6 +72,16 @@ public final class VolatilityCone implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VOLATILITY_CONE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VolatilityOfVolatility.java b/bindings/java/src/main/java/org/wickra/VolatilityOfVolatility.java index e767bf37..727c1343 100644 --- a/bindings/java/src/main/java/org/wickra/VolatilityOfVolatility.java +++ b/bindings/java/src/main/java/org/wickra/VolatilityOfVolatility.java @@ -77,6 +77,16 @@ public final class VolatilityOfVolatility implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VOLATILITY_OF_VOLATILITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VolatilityRatio.java b/bindings/java/src/main/java/org/wickra/VolatilityRatio.java index 4282dacb..50c9155e 100644 --- a/bindings/java/src/main/java/org/wickra/VolatilityRatio.java +++ b/bindings/java/src/main/java/org/wickra/VolatilityRatio.java @@ -94,6 +94,16 @@ public final class VolatilityRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VOLATILITY_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VoltyStop.java b/bindings/java/src/main/java/org/wickra/VoltyStop.java index ea37f95b..2b650ef7 100644 --- a/bindings/java/src/main/java/org/wickra/VoltyStop.java +++ b/bindings/java/src/main/java/org/wickra/VoltyStop.java @@ -94,6 +94,16 @@ public final class VoltyStop implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VOLTY_STOP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VolumeBars.java b/bindings/java/src/main/java/org/wickra/VolumeBars.java index 8c99afb0..57aae86f 100644 --- a/bindings/java/src/main/java/org/wickra/VolumeBars.java +++ b/bindings/java/src/main/java/org/wickra/VolumeBars.java @@ -52,6 +52,16 @@ public final class VolumeBars implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VOLUME_BARS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VolumeByTimeProfile.java b/bindings/java/src/main/java/org/wickra/VolumeByTimeProfile.java index 12f0cce3..b83c62fb 100644 --- a/bindings/java/src/main/java/org/wickra/VolumeByTimeProfile.java +++ b/bindings/java/src/main/java/org/wickra/VolumeByTimeProfile.java @@ -70,6 +70,16 @@ public final class VolumeByTimeProfile implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VOLUME_BY_TIME_PROFILE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VolumeOscillator.java b/bindings/java/src/main/java/org/wickra/VolumeOscillator.java index 642528e9..8ffb3581 100644 --- a/bindings/java/src/main/java/org/wickra/VolumeOscillator.java +++ b/bindings/java/src/main/java/org/wickra/VolumeOscillator.java @@ -97,6 +97,16 @@ public final class VolumeOscillator implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VOLUME_OSCILLATOR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VolumePriceTrend.java b/bindings/java/src/main/java/org/wickra/VolumePriceTrend.java index ef72bd78..ed049b1d 100644 --- a/bindings/java/src/main/java/org/wickra/VolumePriceTrend.java +++ b/bindings/java/src/main/java/org/wickra/VolumePriceTrend.java @@ -91,6 +91,16 @@ public final class VolumePriceTrend implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VOLUME_PRICE_TREND_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VolumeProfile.java b/bindings/java/src/main/java/org/wickra/VolumeProfile.java index 3ebbd2c4..5d1fbe6c 100644 --- a/bindings/java/src/main/java/org/wickra/VolumeProfile.java +++ b/bindings/java/src/main/java/org/wickra/VolumeProfile.java @@ -77,6 +77,16 @@ public final class VolumeProfile implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VOLUME_PROFILE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VolumeRsi.java b/bindings/java/src/main/java/org/wickra/VolumeRsi.java index e17f235f..5e6d3bd1 100644 --- a/bindings/java/src/main/java/org/wickra/VolumeRsi.java +++ b/bindings/java/src/main/java/org/wickra/VolumeRsi.java @@ -94,6 +94,16 @@ public final class VolumeRsi implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VOLUME_RSI_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VolumeWeightedMacd.java b/bindings/java/src/main/java/org/wickra/VolumeWeightedMacd.java index c74f7fe7..00336778 100644 --- a/bindings/java/src/main/java/org/wickra/VolumeWeightedMacd.java +++ b/bindings/java/src/main/java/org/wickra/VolumeWeightedMacd.java @@ -73,6 +73,16 @@ public final class VolumeWeightedMacd implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VOLUME_WEIGHTED_MACD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VolumeWeightedSr.java b/bindings/java/src/main/java/org/wickra/VolumeWeightedSr.java index 1fd59525..bee84606 100644 --- a/bindings/java/src/main/java/org/wickra/VolumeWeightedSr.java +++ b/bindings/java/src/main/java/org/wickra/VolumeWeightedSr.java @@ -66,6 +66,16 @@ public final class VolumeWeightedSr implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VOLUME_WEIGHTED_SR_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Vortex.java b/bindings/java/src/main/java/org/wickra/Vortex.java index 638aa83e..0b14bea5 100644 --- a/bindings/java/src/main/java/org/wickra/Vortex.java +++ b/bindings/java/src/main/java/org/wickra/Vortex.java @@ -66,6 +66,16 @@ public final class Vortex implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VORTEX_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Vpin.java b/bindings/java/src/main/java/org/wickra/Vpin.java index 2a5643a9..66534cb5 100644 --- a/bindings/java/src/main/java/org/wickra/Vpin.java +++ b/bindings/java/src/main/java/org/wickra/Vpin.java @@ -59,6 +59,16 @@ public final class Vpin implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VPIN_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Vwap.java b/bindings/java/src/main/java/org/wickra/Vwap.java index d23af480..7817dea1 100644 --- a/bindings/java/src/main/java/org/wickra/Vwap.java +++ b/bindings/java/src/main/java/org/wickra/Vwap.java @@ -91,6 +91,16 @@ public final class Vwap implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VWAP_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/VwapStdDevBands.java b/bindings/java/src/main/java/org/wickra/VwapStdDevBands.java index 0cfdfbba..5dbf5808 100644 --- a/bindings/java/src/main/java/org/wickra/VwapStdDevBands.java +++ b/bindings/java/src/main/java/org/wickra/VwapStdDevBands.java @@ -65,6 +65,16 @@ public final class VwapStdDevBands implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VWAP_STD_DEV_BANDS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Vwma.java b/bindings/java/src/main/java/org/wickra/Vwma.java index f5f15215..fecd3918 100644 --- a/bindings/java/src/main/java/org/wickra/Vwma.java +++ b/bindings/java/src/main/java/org/wickra/Vwma.java @@ -94,6 +94,16 @@ public final class Vwma implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VWMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Vzo.java b/bindings/java/src/main/java/org/wickra/Vzo.java index 76f1fca4..4c8fac16 100644 --- a/bindings/java/src/main/java/org/wickra/Vzo.java +++ b/bindings/java/src/main/java/org/wickra/Vzo.java @@ -94,6 +94,16 @@ public final class Vzo implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_VZO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Wad.java b/bindings/java/src/main/java/org/wickra/Wad.java index e6de19d3..46bb9f06 100644 --- a/bindings/java/src/main/java/org/wickra/Wad.java +++ b/bindings/java/src/main/java/org/wickra/Wad.java @@ -91,6 +91,16 @@ public final class Wad implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_WAD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/WavePm.java b/bindings/java/src/main/java/org/wickra/WavePm.java index cf9336b8..9c8b880e 100644 --- a/bindings/java/src/main/java/org/wickra/WavePm.java +++ b/bindings/java/src/main/java/org/wickra/WavePm.java @@ -77,6 +77,16 @@ public final class WavePm implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_WAVE_PM_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/WaveTrend.java b/bindings/java/src/main/java/org/wickra/WaveTrend.java index 2bc3cc79..106742f2 100644 --- a/bindings/java/src/main/java/org/wickra/WaveTrend.java +++ b/bindings/java/src/main/java/org/wickra/WaveTrend.java @@ -72,6 +72,16 @@ public final class WaveTrend implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_WAVE_TREND_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Wedge.java b/bindings/java/src/main/java/org/wickra/Wedge.java index 58c9fb8a..941004a6 100644 --- a/bindings/java/src/main/java/org/wickra/Wedge.java +++ b/bindings/java/src/main/java/org/wickra/Wedge.java @@ -91,6 +91,16 @@ public final class Wedge implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_WEDGE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/WeightedClose.java b/bindings/java/src/main/java/org/wickra/WeightedClose.java index a09090e1..9db38853 100644 --- a/bindings/java/src/main/java/org/wickra/WeightedClose.java +++ b/bindings/java/src/main/java/org/wickra/WeightedClose.java @@ -91,6 +91,16 @@ public final class WeightedClose implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_WEIGHTED_CLOSE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/WickRatio.java b/bindings/java/src/main/java/org/wickra/WickRatio.java index aadb3a0b..c9c42290 100644 --- a/bindings/java/src/main/java/org/wickra/WickRatio.java +++ b/bindings/java/src/main/java/org/wickra/WickRatio.java @@ -91,6 +91,16 @@ public final class WickRatio implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_WICK_RATIO_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/WilliamsFractals.java b/bindings/java/src/main/java/org/wickra/WilliamsFractals.java index 45c31f3b..261ccdc9 100644 --- a/bindings/java/src/main/java/org/wickra/WilliamsFractals.java +++ b/bindings/java/src/main/java/org/wickra/WilliamsFractals.java @@ -63,6 +63,16 @@ public final class WilliamsFractals implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_WILLIAMS_FRACTALS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/WilliamsR.java b/bindings/java/src/main/java/org/wickra/WilliamsR.java index 2e46dc5f..44699012 100644 --- a/bindings/java/src/main/java/org/wickra/WilliamsR.java +++ b/bindings/java/src/main/java/org/wickra/WilliamsR.java @@ -94,6 +94,16 @@ public final class WilliamsR implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_WILLIAMS_R_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/WinRate.java b/bindings/java/src/main/java/org/wickra/WinRate.java index de49c94b..303ca74f 100644 --- a/bindings/java/src/main/java/org/wickra/WinRate.java +++ b/bindings/java/src/main/java/org/wickra/WinRate.java @@ -74,6 +74,16 @@ public final class WinRate implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_WIN_RATE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Wma.java b/bindings/java/src/main/java/org/wickra/Wma.java index 7acc7c18..75e4a624 100644 --- a/bindings/java/src/main/java/org/wickra/Wma.java +++ b/bindings/java/src/main/java/org/wickra/Wma.java @@ -74,6 +74,16 @@ public final class Wma implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_WMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/WoodiePivots.java b/bindings/java/src/main/java/org/wickra/WoodiePivots.java index 50a9e05c..7111c4d5 100644 --- a/bindings/java/src/main/java/org/wickra/WoodiePivots.java +++ b/bindings/java/src/main/java/org/wickra/WoodiePivots.java @@ -66,6 +66,16 @@ public final class WoodiePivots implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_WOODIE_PIVOTS_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/YangZhangVolatility.java b/bindings/java/src/main/java/org/wickra/YangZhangVolatility.java index 785cbc32..096b09e1 100644 --- a/bindings/java/src/main/java/org/wickra/YangZhangVolatility.java +++ b/bindings/java/src/main/java/org/wickra/YangZhangVolatility.java @@ -97,6 +97,16 @@ public final class YangZhangVolatility implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_YANG_ZHANG_VOLATILITY_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/YoyoExit.java b/bindings/java/src/main/java/org/wickra/YoyoExit.java index 6e2c66c9..31593af4 100644 --- a/bindings/java/src/main/java/org/wickra/YoyoExit.java +++ b/bindings/java/src/main/java/org/wickra/YoyoExit.java @@ -94,6 +94,16 @@ public final class YoyoExit implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_YOYO_EXIT_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ZScore.java b/bindings/java/src/main/java/org/wickra/ZScore.java index 737b6ddb..2e0cef43 100644 --- a/bindings/java/src/main/java/org/wickra/ZScore.java +++ b/bindings/java/src/main/java/org/wickra/ZScore.java @@ -74,6 +74,16 @@ public final class ZScore implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_Z_SCORE_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ZeroLagMacd.java b/bindings/java/src/main/java/org/wickra/ZeroLagMacd.java index c84d2fc1..18eb3b8b 100644 --- a/bindings/java/src/main/java/org/wickra/ZeroLagMacd.java +++ b/bindings/java/src/main/java/org/wickra/ZeroLagMacd.java @@ -73,6 +73,16 @@ public final class ZeroLagMacd implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ZERO_LAG_MACD_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/ZigZag.java b/bindings/java/src/main/java/org/wickra/ZigZag.java index 0834ddc8..d1b4f1be 100644 --- a/bindings/java/src/main/java/org/wickra/ZigZag.java +++ b/bindings/java/src/main/java/org/wickra/ZigZag.java @@ -63,6 +63,16 @@ public final class ZigZag implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ZIG_ZAG_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/Zlema.java b/bindings/java/src/main/java/org/wickra/Zlema.java index e862ba75..cbfaf9eb 100644 --- a/bindings/java/src/main/java/org/wickra/Zlema.java +++ b/bindings/java/src/main/java/org/wickra/Zlema.java @@ -74,6 +74,16 @@ public final class Zlema implements AutoCloseable { } } + /** The indicator's canonical name. */ + public String name() { + try { + MemorySegment s = (MemorySegment) NativeMethods.WICKRA_ZLEMA_NAME.invokeExact(handle); + return s.address() == 0 ? "" : s.reinterpret(Long.MAX_VALUE).getString(0); + } catch (Throwable t) { + throw WickraNative.rethrow(t); + } + } + /** Reset to the just-constructed state. */ public void reset() { try { diff --git a/bindings/java/src/main/java/org/wickra/internal/NativeMethods.java b/bindings/java/src/main/java/org/wickra/internal/NativeMethods.java index c4a0e6a1..0dfec1f5 100644 --- a/bindings/java/src/main/java/org/wickra/internal/NativeMethods.java +++ b/bindings/java/src/main/java/org/wickra/internal/NativeMethods.java @@ -18,6 +18,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ADAPTIVE_CYCLE_BATCH; public static MethodHandle WICKRA_ADAPTIVE_CYCLE_WARMUP_PERIOD; public static MethodHandle WICKRA_ADAPTIVE_CYCLE_IS_READY; + public static MethodHandle WICKRA_ADAPTIVE_CYCLE_NAME; public static MethodHandle WICKRA_ADAPTIVE_CYCLE_RESET; public static MethodHandle WICKRA_ADAPTIVE_CYCLE_FREE; public static MethodHandle WICKRA_ADAPTIVE_LAGUERRE_FILTER_NEW; @@ -25,6 +26,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ADAPTIVE_LAGUERRE_FILTER_BATCH; public static MethodHandle WICKRA_ADAPTIVE_LAGUERRE_FILTER_WARMUP_PERIOD; public static MethodHandle WICKRA_ADAPTIVE_LAGUERRE_FILTER_IS_READY; + public static MethodHandle WICKRA_ADAPTIVE_LAGUERRE_FILTER_NAME; public static MethodHandle WICKRA_ADAPTIVE_LAGUERRE_FILTER_RESET; public static MethodHandle WICKRA_ADAPTIVE_LAGUERRE_FILTER_FREE; public static MethodHandle WICKRA_ADAPTIVE_RSI_NEW; @@ -32,6 +34,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ADAPTIVE_RSI_BATCH; public static MethodHandle WICKRA_ADAPTIVE_RSI_WARMUP_PERIOD; public static MethodHandle WICKRA_ADAPTIVE_RSI_IS_READY; + public static MethodHandle WICKRA_ADAPTIVE_RSI_NAME; public static MethodHandle WICKRA_ADAPTIVE_RSI_RESET; public static MethodHandle WICKRA_ADAPTIVE_RSI_FREE; public static MethodHandle WICKRA_ALMA_NEW; @@ -39,6 +42,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ALMA_BATCH; public static MethodHandle WICKRA_ALMA_WARMUP_PERIOD; public static MethodHandle WICKRA_ALMA_IS_READY; + public static MethodHandle WICKRA_ALMA_NAME; public static MethodHandle WICKRA_ALMA_RESET; public static MethodHandle WICKRA_ALMA_FREE; public static MethodHandle WICKRA_ANCHORED_RSI_NEW; @@ -46,6 +50,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ANCHORED_RSI_BATCH; public static MethodHandle WICKRA_ANCHORED_RSI_WARMUP_PERIOD; public static MethodHandle WICKRA_ANCHORED_RSI_IS_READY; + public static MethodHandle WICKRA_ANCHORED_RSI_NAME; public static MethodHandle WICKRA_ANCHORED_RSI_RESET; public static MethodHandle WICKRA_ANCHORED_RSI_FREE; public static MethodHandle WICKRA_APO_NEW; @@ -53,6 +58,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_APO_BATCH; public static MethodHandle WICKRA_APO_WARMUP_PERIOD; public static MethodHandle WICKRA_APO_IS_READY; + public static MethodHandle WICKRA_APO_NAME; public static MethodHandle WICKRA_APO_RESET; public static MethodHandle WICKRA_APO_FREE; public static MethodHandle WICKRA_AUTOCORRELATION_NEW; @@ -60,6 +66,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_AUTOCORRELATION_BATCH; public static MethodHandle WICKRA_AUTOCORRELATION_WARMUP_PERIOD; public static MethodHandle WICKRA_AUTOCORRELATION_IS_READY; + public static MethodHandle WICKRA_AUTOCORRELATION_NAME; public static MethodHandle WICKRA_AUTOCORRELATION_RESET; public static MethodHandle WICKRA_AUTOCORRELATION_FREE; public static MethodHandle WICKRA_AUTOCORRELATION_PERIODOGRAM_NEW; @@ -67,6 +74,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_AUTOCORRELATION_PERIODOGRAM_BATCH; public static MethodHandle WICKRA_AUTOCORRELATION_PERIODOGRAM_WARMUP_PERIOD; public static MethodHandle WICKRA_AUTOCORRELATION_PERIODOGRAM_IS_READY; + public static MethodHandle WICKRA_AUTOCORRELATION_PERIODOGRAM_NAME; public static MethodHandle WICKRA_AUTOCORRELATION_PERIODOGRAM_RESET; public static MethodHandle WICKRA_AUTOCORRELATION_PERIODOGRAM_FREE; public static MethodHandle WICKRA_AVERAGE_DRAWDOWN_NEW; @@ -74,6 +82,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_AVERAGE_DRAWDOWN_BATCH; public static MethodHandle WICKRA_AVERAGE_DRAWDOWN_WARMUP_PERIOD; public static MethodHandle WICKRA_AVERAGE_DRAWDOWN_IS_READY; + public static MethodHandle WICKRA_AVERAGE_DRAWDOWN_NAME; public static MethodHandle WICKRA_AVERAGE_DRAWDOWN_RESET; public static MethodHandle WICKRA_AVERAGE_DRAWDOWN_FREE; public static MethodHandle WICKRA_BANDPASS_FILTER_NEW; @@ -81,6 +90,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BANDPASS_FILTER_BATCH; public static MethodHandle WICKRA_BANDPASS_FILTER_WARMUP_PERIOD; public static MethodHandle WICKRA_BANDPASS_FILTER_IS_READY; + public static MethodHandle WICKRA_BANDPASS_FILTER_NAME; public static MethodHandle WICKRA_BANDPASS_FILTER_RESET; public static MethodHandle WICKRA_BANDPASS_FILTER_FREE; public static MethodHandle WICKRA_BIPOWER_VARIATION_NEW; @@ -88,6 +98,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BIPOWER_VARIATION_BATCH; public static MethodHandle WICKRA_BIPOWER_VARIATION_WARMUP_PERIOD; public static MethodHandle WICKRA_BIPOWER_VARIATION_IS_READY; + public static MethodHandle WICKRA_BIPOWER_VARIATION_NAME; public static MethodHandle WICKRA_BIPOWER_VARIATION_RESET; public static MethodHandle WICKRA_BIPOWER_VARIATION_FREE; public static MethodHandle WICKRA_BOLLINGER_BANDWIDTH_NEW; @@ -95,6 +106,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BOLLINGER_BANDWIDTH_BATCH; public static MethodHandle WICKRA_BOLLINGER_BANDWIDTH_WARMUP_PERIOD; public static MethodHandle WICKRA_BOLLINGER_BANDWIDTH_IS_READY; + public static MethodHandle WICKRA_BOLLINGER_BANDWIDTH_NAME; public static MethodHandle WICKRA_BOLLINGER_BANDWIDTH_RESET; public static MethodHandle WICKRA_BOLLINGER_BANDWIDTH_FREE; public static MethodHandle WICKRA_BURKE_RATIO_NEW; @@ -102,6 +114,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BURKE_RATIO_BATCH; public static MethodHandle WICKRA_BURKE_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_BURKE_RATIO_IS_READY; + public static MethodHandle WICKRA_BURKE_RATIO_NAME; public static MethodHandle WICKRA_BURKE_RATIO_RESET; public static MethodHandle WICKRA_BURKE_RATIO_FREE; public static MethodHandle WICKRA_CALMAR_RATIO_NEW; @@ -109,6 +122,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CALMAR_RATIO_BATCH; public static MethodHandle WICKRA_CALMAR_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_CALMAR_RATIO_IS_READY; + public static MethodHandle WICKRA_CALMAR_RATIO_NAME; public static MethodHandle WICKRA_CALMAR_RATIO_RESET; public static MethodHandle WICKRA_CALMAR_RATIO_FREE; public static MethodHandle WICKRA_CENTER_OF_GRAVITY_NEW; @@ -116,6 +130,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CENTER_OF_GRAVITY_BATCH; public static MethodHandle WICKRA_CENTER_OF_GRAVITY_WARMUP_PERIOD; public static MethodHandle WICKRA_CENTER_OF_GRAVITY_IS_READY; + public static MethodHandle WICKRA_CENTER_OF_GRAVITY_NAME; public static MethodHandle WICKRA_CENTER_OF_GRAVITY_RESET; public static MethodHandle WICKRA_CENTER_OF_GRAVITY_FREE; public static MethodHandle WICKRA_CFO_NEW; @@ -123,6 +138,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CFO_BATCH; public static MethodHandle WICKRA_CFO_WARMUP_PERIOD; public static MethodHandle WICKRA_CFO_IS_READY; + public static MethodHandle WICKRA_CFO_NAME; public static MethodHandle WICKRA_CFO_RESET; public static MethodHandle WICKRA_CFO_FREE; public static MethodHandle WICKRA_CMO_NEW; @@ -130,6 +146,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CMO_BATCH; public static MethodHandle WICKRA_CMO_WARMUP_PERIOD; public static MethodHandle WICKRA_CMO_IS_READY; + public static MethodHandle WICKRA_CMO_NAME; public static MethodHandle WICKRA_CMO_RESET; public static MethodHandle WICKRA_CMO_FREE; public static MethodHandle WICKRA_COEFFICIENT_OF_VARIATION_NEW; @@ -137,6 +154,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_COEFFICIENT_OF_VARIATION_BATCH; public static MethodHandle WICKRA_COEFFICIENT_OF_VARIATION_WARMUP_PERIOD; public static MethodHandle WICKRA_COEFFICIENT_OF_VARIATION_IS_READY; + public static MethodHandle WICKRA_COEFFICIENT_OF_VARIATION_NAME; public static MethodHandle WICKRA_COEFFICIENT_OF_VARIATION_RESET; public static MethodHandle WICKRA_COEFFICIENT_OF_VARIATION_FREE; public static MethodHandle WICKRA_COMMON_SENSE_RATIO_NEW; @@ -144,6 +162,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_COMMON_SENSE_RATIO_BATCH; public static MethodHandle WICKRA_COMMON_SENSE_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_COMMON_SENSE_RATIO_IS_READY; + public static MethodHandle WICKRA_COMMON_SENSE_RATIO_NAME; public static MethodHandle WICKRA_COMMON_SENSE_RATIO_RESET; public static MethodHandle WICKRA_COMMON_SENSE_RATIO_FREE; public static MethodHandle WICKRA_CONDITIONAL_VALUE_AT_RISK_NEW; @@ -151,6 +170,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CONDITIONAL_VALUE_AT_RISK_BATCH; public static MethodHandle WICKRA_CONDITIONAL_VALUE_AT_RISK_WARMUP_PERIOD; public static MethodHandle WICKRA_CONDITIONAL_VALUE_AT_RISK_IS_READY; + public static MethodHandle WICKRA_CONDITIONAL_VALUE_AT_RISK_NAME; public static MethodHandle WICKRA_CONDITIONAL_VALUE_AT_RISK_RESET; public static MethodHandle WICKRA_CONDITIONAL_VALUE_AT_RISK_FREE; public static MethodHandle WICKRA_CONNORS_RSI_NEW; @@ -158,6 +178,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CONNORS_RSI_BATCH; public static MethodHandle WICKRA_CONNORS_RSI_WARMUP_PERIOD; public static MethodHandle WICKRA_CONNORS_RSI_IS_READY; + public static MethodHandle WICKRA_CONNORS_RSI_NAME; public static MethodHandle WICKRA_CONNORS_RSI_RESET; public static MethodHandle WICKRA_CONNORS_RSI_FREE; public static MethodHandle WICKRA_COPPOCK_NEW; @@ -165,6 +186,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_COPPOCK_BATCH; public static MethodHandle WICKRA_COPPOCK_WARMUP_PERIOD; public static MethodHandle WICKRA_COPPOCK_IS_READY; + public static MethodHandle WICKRA_COPPOCK_NAME; public static MethodHandle WICKRA_COPPOCK_RESET; public static MethodHandle WICKRA_COPPOCK_FREE; public static MethodHandle WICKRA_CORRELATION_TREND_INDICATOR_NEW; @@ -172,6 +194,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CORRELATION_TREND_INDICATOR_BATCH; public static MethodHandle WICKRA_CORRELATION_TREND_INDICATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_CORRELATION_TREND_INDICATOR_IS_READY; + public static MethodHandle WICKRA_CORRELATION_TREND_INDICATOR_NAME; public static MethodHandle WICKRA_CORRELATION_TREND_INDICATOR_RESET; public static MethodHandle WICKRA_CORRELATION_TREND_INDICATOR_FREE; public static MethodHandle WICKRA_CYBERNETIC_CYCLE_NEW; @@ -179,6 +202,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CYBERNETIC_CYCLE_BATCH; public static MethodHandle WICKRA_CYBERNETIC_CYCLE_WARMUP_PERIOD; public static MethodHandle WICKRA_CYBERNETIC_CYCLE_IS_READY; + public static MethodHandle WICKRA_CYBERNETIC_CYCLE_NAME; public static MethodHandle WICKRA_CYBERNETIC_CYCLE_RESET; public static MethodHandle WICKRA_CYBERNETIC_CYCLE_FREE; public static MethodHandle WICKRA_DECYCLER_NEW; @@ -186,6 +210,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DECYCLER_BATCH; public static MethodHandle WICKRA_DECYCLER_WARMUP_PERIOD; public static MethodHandle WICKRA_DECYCLER_IS_READY; + public static MethodHandle WICKRA_DECYCLER_NAME; public static MethodHandle WICKRA_DECYCLER_RESET; public static MethodHandle WICKRA_DECYCLER_FREE; public static MethodHandle WICKRA_DECYCLER_OSCILLATOR_NEW; @@ -193,6 +218,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DECYCLER_OSCILLATOR_BATCH; public static MethodHandle WICKRA_DECYCLER_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_DECYCLER_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_DECYCLER_OSCILLATOR_NAME; public static MethodHandle WICKRA_DECYCLER_OSCILLATOR_RESET; public static MethodHandle WICKRA_DECYCLER_OSCILLATOR_FREE; public static MethodHandle WICKRA_DEMA_NEW; @@ -200,6 +226,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DEMA_BATCH; public static MethodHandle WICKRA_DEMA_WARMUP_PERIOD; public static MethodHandle WICKRA_DEMA_IS_READY; + public static MethodHandle WICKRA_DEMA_NAME; public static MethodHandle WICKRA_DEMA_RESET; public static MethodHandle WICKRA_DEMA_FREE; public static MethodHandle WICKRA_DERIVATIVE_OSCILLATOR_NEW; @@ -207,6 +234,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DERIVATIVE_OSCILLATOR_BATCH; public static MethodHandle WICKRA_DERIVATIVE_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_DERIVATIVE_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_DERIVATIVE_OSCILLATOR_NAME; public static MethodHandle WICKRA_DERIVATIVE_OSCILLATOR_RESET; public static MethodHandle WICKRA_DERIVATIVE_OSCILLATOR_FREE; public static MethodHandle WICKRA_DETRENDED_STD_DEV_NEW; @@ -214,6 +242,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DETRENDED_STD_DEV_BATCH; public static MethodHandle WICKRA_DETRENDED_STD_DEV_WARMUP_PERIOD; public static MethodHandle WICKRA_DETRENDED_STD_DEV_IS_READY; + public static MethodHandle WICKRA_DETRENDED_STD_DEV_NAME; public static MethodHandle WICKRA_DETRENDED_STD_DEV_RESET; public static MethodHandle WICKRA_DETRENDED_STD_DEV_FREE; public static MethodHandle WICKRA_DISPARITY_INDEX_NEW; @@ -221,6 +250,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DISPARITY_INDEX_BATCH; public static MethodHandle WICKRA_DISPARITY_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_DISPARITY_INDEX_IS_READY; + public static MethodHandle WICKRA_DISPARITY_INDEX_NAME; public static MethodHandle WICKRA_DISPARITY_INDEX_RESET; public static MethodHandle WICKRA_DISPARITY_INDEX_FREE; public static MethodHandle WICKRA_DPO_NEW; @@ -228,6 +258,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DPO_BATCH; public static MethodHandle WICKRA_DPO_WARMUP_PERIOD; public static MethodHandle WICKRA_DPO_IS_READY; + public static MethodHandle WICKRA_DPO_NAME; public static MethodHandle WICKRA_DPO_RESET; public static MethodHandle WICKRA_DPO_FREE; public static MethodHandle WICKRA_DRAWDOWN_DURATION_NEW; @@ -235,6 +266,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DRAWDOWN_DURATION_BATCH; public static MethodHandle WICKRA_DRAWDOWN_DURATION_WARMUP_PERIOD; public static MethodHandle WICKRA_DRAWDOWN_DURATION_IS_READY; + public static MethodHandle WICKRA_DRAWDOWN_DURATION_NAME; public static MethodHandle WICKRA_DRAWDOWN_DURATION_RESET; public static MethodHandle WICKRA_DRAWDOWN_DURATION_FREE; public static MethodHandle WICKRA_DYNAMIC_MOMENTUM_INDEX_NEW; @@ -242,6 +274,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DYNAMIC_MOMENTUM_INDEX_BATCH; public static MethodHandle WICKRA_DYNAMIC_MOMENTUM_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_DYNAMIC_MOMENTUM_INDEX_IS_READY; + public static MethodHandle WICKRA_DYNAMIC_MOMENTUM_INDEX_NAME; public static MethodHandle WICKRA_DYNAMIC_MOMENTUM_INDEX_RESET; public static MethodHandle WICKRA_DYNAMIC_MOMENTUM_INDEX_FREE; public static MethodHandle WICKRA_EHLERS_STOCHASTIC_NEW; @@ -249,6 +282,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_EHLERS_STOCHASTIC_BATCH; public static MethodHandle WICKRA_EHLERS_STOCHASTIC_WARMUP_PERIOD; public static MethodHandle WICKRA_EHLERS_STOCHASTIC_IS_READY; + public static MethodHandle WICKRA_EHLERS_STOCHASTIC_NAME; public static MethodHandle WICKRA_EHLERS_STOCHASTIC_RESET; public static MethodHandle WICKRA_EHLERS_STOCHASTIC_FREE; public static MethodHandle WICKRA_EHMA_NEW; @@ -256,6 +290,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_EHMA_BATCH; public static MethodHandle WICKRA_EHMA_WARMUP_PERIOD; public static MethodHandle WICKRA_EHMA_IS_READY; + public static MethodHandle WICKRA_EHMA_NAME; public static MethodHandle WICKRA_EHMA_RESET; public static MethodHandle WICKRA_EHMA_FREE; public static MethodHandle WICKRA_ELDER_IMPULSE_NEW; @@ -263,6 +298,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ELDER_IMPULSE_BATCH; public static MethodHandle WICKRA_ELDER_IMPULSE_WARMUP_PERIOD; public static MethodHandle WICKRA_ELDER_IMPULSE_IS_READY; + public static MethodHandle WICKRA_ELDER_IMPULSE_NAME; public static MethodHandle WICKRA_ELDER_IMPULSE_RESET; public static MethodHandle WICKRA_ELDER_IMPULSE_FREE; public static MethodHandle WICKRA_EMA_NEW; @@ -270,6 +306,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_EMA_BATCH; public static MethodHandle WICKRA_EMA_WARMUP_PERIOD; public static MethodHandle WICKRA_EMA_IS_READY; + public static MethodHandle WICKRA_EMA_NAME; public static MethodHandle WICKRA_EMA_RESET; public static MethodHandle WICKRA_EMA_FREE; public static MethodHandle WICKRA_EMPIRICAL_MODE_DECOMPOSITION_NEW; @@ -277,6 +314,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_EMPIRICAL_MODE_DECOMPOSITION_BATCH; public static MethodHandle WICKRA_EMPIRICAL_MODE_DECOMPOSITION_WARMUP_PERIOD; public static MethodHandle WICKRA_EMPIRICAL_MODE_DECOMPOSITION_IS_READY; + public static MethodHandle WICKRA_EMPIRICAL_MODE_DECOMPOSITION_NAME; public static MethodHandle WICKRA_EMPIRICAL_MODE_DECOMPOSITION_RESET; public static MethodHandle WICKRA_EMPIRICAL_MODE_DECOMPOSITION_FREE; public static MethodHandle WICKRA_EVEN_BETTER_SINEWAVE_NEW; @@ -284,6 +322,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_EVEN_BETTER_SINEWAVE_BATCH; public static MethodHandle WICKRA_EVEN_BETTER_SINEWAVE_WARMUP_PERIOD; public static MethodHandle WICKRA_EVEN_BETTER_SINEWAVE_IS_READY; + public static MethodHandle WICKRA_EVEN_BETTER_SINEWAVE_NAME; public static MethodHandle WICKRA_EVEN_BETTER_SINEWAVE_RESET; public static MethodHandle WICKRA_EVEN_BETTER_SINEWAVE_FREE; public static MethodHandle WICKRA_EWMA_VOLATILITY_NEW; @@ -291,6 +330,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_EWMA_VOLATILITY_BATCH; public static MethodHandle WICKRA_EWMA_VOLATILITY_WARMUP_PERIOD; public static MethodHandle WICKRA_EWMA_VOLATILITY_IS_READY; + public static MethodHandle WICKRA_EWMA_VOLATILITY_NAME; public static MethodHandle WICKRA_EWMA_VOLATILITY_RESET; public static MethodHandle WICKRA_EWMA_VOLATILITY_FREE; public static MethodHandle WICKRA_EXPECTANCY_NEW; @@ -298,6 +338,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_EXPECTANCY_BATCH; public static MethodHandle WICKRA_EXPECTANCY_WARMUP_PERIOD; public static MethodHandle WICKRA_EXPECTANCY_IS_READY; + public static MethodHandle WICKRA_EXPECTANCY_NAME; public static MethodHandle WICKRA_EXPECTANCY_RESET; public static MethodHandle WICKRA_EXPECTANCY_FREE; public static MethodHandle WICKRA_FAMA_NEW; @@ -305,6 +346,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_FAMA_BATCH; public static MethodHandle WICKRA_FAMA_WARMUP_PERIOD; public static MethodHandle WICKRA_FAMA_IS_READY; + public static MethodHandle WICKRA_FAMA_NAME; public static MethodHandle WICKRA_FAMA_RESET; public static MethodHandle WICKRA_FAMA_FREE; public static MethodHandle WICKRA_FISHER_RSI_NEW; @@ -312,6 +354,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_FISHER_RSI_BATCH; public static MethodHandle WICKRA_FISHER_RSI_WARMUP_PERIOD; public static MethodHandle WICKRA_FISHER_RSI_IS_READY; + public static MethodHandle WICKRA_FISHER_RSI_NAME; public static MethodHandle WICKRA_FISHER_RSI_RESET; public static MethodHandle WICKRA_FISHER_RSI_FREE; public static MethodHandle WICKRA_FISHER_TRANSFORM_NEW; @@ -319,6 +362,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_FISHER_TRANSFORM_BATCH; public static MethodHandle WICKRA_FISHER_TRANSFORM_WARMUP_PERIOD; public static MethodHandle WICKRA_FISHER_TRANSFORM_IS_READY; + public static MethodHandle WICKRA_FISHER_TRANSFORM_NAME; public static MethodHandle WICKRA_FISHER_TRANSFORM_RESET; public static MethodHandle WICKRA_FISHER_TRANSFORM_FREE; public static MethodHandle WICKRA_FRAMA_NEW; @@ -326,6 +370,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_FRAMA_BATCH; public static MethodHandle WICKRA_FRAMA_WARMUP_PERIOD; public static MethodHandle WICKRA_FRAMA_IS_READY; + public static MethodHandle WICKRA_FRAMA_NAME; public static MethodHandle WICKRA_FRAMA_RESET; public static MethodHandle WICKRA_FRAMA_FREE; public static MethodHandle WICKRA_GAIN_LOSS_RATIO_NEW; @@ -333,6 +378,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_GAIN_LOSS_RATIO_BATCH; public static MethodHandle WICKRA_GAIN_LOSS_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_GAIN_LOSS_RATIO_IS_READY; + public static MethodHandle WICKRA_GAIN_LOSS_RATIO_NAME; public static MethodHandle WICKRA_GAIN_LOSS_RATIO_RESET; public static MethodHandle WICKRA_GAIN_LOSS_RATIO_FREE; public static MethodHandle WICKRA_GAIN_TO_PAIN_RATIO_NEW; @@ -340,6 +386,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_GAIN_TO_PAIN_RATIO_BATCH; public static MethodHandle WICKRA_GAIN_TO_PAIN_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_GAIN_TO_PAIN_RATIO_IS_READY; + public static MethodHandle WICKRA_GAIN_TO_PAIN_RATIO_NAME; public static MethodHandle WICKRA_GAIN_TO_PAIN_RATIO_RESET; public static MethodHandle WICKRA_GAIN_TO_PAIN_RATIO_FREE; public static MethodHandle WICKRA_GARCH11_NEW; @@ -347,6 +394,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_GARCH11_BATCH; public static MethodHandle WICKRA_GARCH11_WARMUP_PERIOD; public static MethodHandle WICKRA_GARCH11_IS_READY; + public static MethodHandle WICKRA_GARCH11_NAME; public static MethodHandle WICKRA_GARCH11_RESET; public static MethodHandle WICKRA_GARCH11_FREE; public static MethodHandle WICKRA_GENERALIZED_DEMA_NEW; @@ -354,6 +402,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_GENERALIZED_DEMA_BATCH; public static MethodHandle WICKRA_GENERALIZED_DEMA_WARMUP_PERIOD; public static MethodHandle WICKRA_GENERALIZED_DEMA_IS_READY; + public static MethodHandle WICKRA_GENERALIZED_DEMA_NAME; public static MethodHandle WICKRA_GENERALIZED_DEMA_RESET; public static MethodHandle WICKRA_GENERALIZED_DEMA_FREE; public static MethodHandle WICKRA_GEOMETRIC_MA_NEW; @@ -361,6 +410,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_GEOMETRIC_MA_BATCH; public static MethodHandle WICKRA_GEOMETRIC_MA_WARMUP_PERIOD; public static MethodHandle WICKRA_GEOMETRIC_MA_IS_READY; + public static MethodHandle WICKRA_GEOMETRIC_MA_NAME; public static MethodHandle WICKRA_GEOMETRIC_MA_RESET; public static MethodHandle WICKRA_GEOMETRIC_MA_FREE; public static MethodHandle WICKRA_HIGHPASS_FILTER_NEW; @@ -368,6 +418,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HIGHPASS_FILTER_BATCH; public static MethodHandle WICKRA_HIGHPASS_FILTER_WARMUP_PERIOD; public static MethodHandle WICKRA_HIGHPASS_FILTER_IS_READY; + public static MethodHandle WICKRA_HIGHPASS_FILTER_NAME; public static MethodHandle WICKRA_HIGHPASS_FILTER_RESET; public static MethodHandle WICKRA_HIGHPASS_FILTER_FREE; public static MethodHandle WICKRA_HILBERT_DOMINANT_CYCLE_NEW; @@ -375,6 +426,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HILBERT_DOMINANT_CYCLE_BATCH; public static MethodHandle WICKRA_HILBERT_DOMINANT_CYCLE_WARMUP_PERIOD; public static MethodHandle WICKRA_HILBERT_DOMINANT_CYCLE_IS_READY; + public static MethodHandle WICKRA_HILBERT_DOMINANT_CYCLE_NAME; public static MethodHandle WICKRA_HILBERT_DOMINANT_CYCLE_RESET; public static MethodHandle WICKRA_HILBERT_DOMINANT_CYCLE_FREE; public static MethodHandle WICKRA_HISTORICAL_VOLATILITY_NEW; @@ -382,6 +434,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HISTORICAL_VOLATILITY_BATCH; public static MethodHandle WICKRA_HISTORICAL_VOLATILITY_WARMUP_PERIOD; public static MethodHandle WICKRA_HISTORICAL_VOLATILITY_IS_READY; + public static MethodHandle WICKRA_HISTORICAL_VOLATILITY_NAME; public static MethodHandle WICKRA_HISTORICAL_VOLATILITY_RESET; public static MethodHandle WICKRA_HISTORICAL_VOLATILITY_FREE; public static MethodHandle WICKRA_HMA_NEW; @@ -389,6 +442,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HMA_BATCH; public static MethodHandle WICKRA_HMA_WARMUP_PERIOD; public static MethodHandle WICKRA_HMA_IS_READY; + public static MethodHandle WICKRA_HMA_NAME; public static MethodHandle WICKRA_HMA_RESET; public static MethodHandle WICKRA_HMA_FREE; public static MethodHandle WICKRA_HOLT_WINTERS_NEW; @@ -396,6 +450,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HOLT_WINTERS_BATCH; public static MethodHandle WICKRA_HOLT_WINTERS_WARMUP_PERIOD; public static MethodHandle WICKRA_HOLT_WINTERS_IS_READY; + public static MethodHandle WICKRA_HOLT_WINTERS_NAME; public static MethodHandle WICKRA_HOLT_WINTERS_RESET; public static MethodHandle WICKRA_HOLT_WINTERS_FREE; public static MethodHandle WICKRA_HT_DC_PHASE_NEW; @@ -403,6 +458,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HT_DC_PHASE_BATCH; public static MethodHandle WICKRA_HT_DC_PHASE_WARMUP_PERIOD; public static MethodHandle WICKRA_HT_DC_PHASE_IS_READY; + public static MethodHandle WICKRA_HT_DC_PHASE_NAME; public static MethodHandle WICKRA_HT_DC_PHASE_RESET; public static MethodHandle WICKRA_HT_DC_PHASE_FREE; public static MethodHandle WICKRA_HT_TREND_MODE_NEW; @@ -410,6 +466,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HT_TREND_MODE_BATCH; public static MethodHandle WICKRA_HT_TREND_MODE_WARMUP_PERIOD; public static MethodHandle WICKRA_HT_TREND_MODE_IS_READY; + public static MethodHandle WICKRA_HT_TREND_MODE_NAME; public static MethodHandle WICKRA_HT_TREND_MODE_RESET; public static MethodHandle WICKRA_HT_TREND_MODE_FREE; public static MethodHandle WICKRA_HURST_EXPONENT_NEW; @@ -417,6 +474,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HURST_EXPONENT_BATCH; public static MethodHandle WICKRA_HURST_EXPONENT_WARMUP_PERIOD; public static MethodHandle WICKRA_HURST_EXPONENT_IS_READY; + public static MethodHandle WICKRA_HURST_EXPONENT_NAME; public static MethodHandle WICKRA_HURST_EXPONENT_RESET; public static MethodHandle WICKRA_HURST_EXPONENT_FREE; public static MethodHandle WICKRA_INSTANTANEOUS_TRENDLINE_NEW; @@ -424,6 +482,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_INSTANTANEOUS_TRENDLINE_BATCH; public static MethodHandle WICKRA_INSTANTANEOUS_TRENDLINE_WARMUP_PERIOD; public static MethodHandle WICKRA_INSTANTANEOUS_TRENDLINE_IS_READY; + public static MethodHandle WICKRA_INSTANTANEOUS_TRENDLINE_NAME; public static MethodHandle WICKRA_INSTANTANEOUS_TRENDLINE_RESET; public static MethodHandle WICKRA_INSTANTANEOUS_TRENDLINE_FREE; public static MethodHandle WICKRA_INVERSE_FISHER_TRANSFORM_NEW; @@ -431,6 +490,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_INVERSE_FISHER_TRANSFORM_BATCH; public static MethodHandle WICKRA_INVERSE_FISHER_TRANSFORM_WARMUP_PERIOD; public static MethodHandle WICKRA_INVERSE_FISHER_TRANSFORM_IS_READY; + public static MethodHandle WICKRA_INVERSE_FISHER_TRANSFORM_NAME; public static MethodHandle WICKRA_INVERSE_FISHER_TRANSFORM_RESET; public static MethodHandle WICKRA_INVERSE_FISHER_TRANSFORM_FREE; public static MethodHandle WICKRA_JARQUE_BERA_NEW; @@ -438,6 +498,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_JARQUE_BERA_BATCH; public static MethodHandle WICKRA_JARQUE_BERA_WARMUP_PERIOD; public static MethodHandle WICKRA_JARQUE_BERA_IS_READY; + public static MethodHandle WICKRA_JARQUE_BERA_NAME; public static MethodHandle WICKRA_JARQUE_BERA_RESET; public static MethodHandle WICKRA_JARQUE_BERA_FREE; public static MethodHandle WICKRA_JMA_NEW; @@ -445,6 +506,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_JMA_BATCH; public static MethodHandle WICKRA_JMA_WARMUP_PERIOD; public static MethodHandle WICKRA_JMA_IS_READY; + public static MethodHandle WICKRA_JMA_NAME; public static MethodHandle WICKRA_JMA_RESET; public static MethodHandle WICKRA_JMA_FREE; public static MethodHandle WICKRA_JUMP_INDICATOR_NEW; @@ -452,6 +514,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_JUMP_INDICATOR_BATCH; public static MethodHandle WICKRA_JUMP_INDICATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_JUMP_INDICATOR_IS_READY; + public static MethodHandle WICKRA_JUMP_INDICATOR_NAME; public static MethodHandle WICKRA_JUMP_INDICATOR_RESET; public static MethodHandle WICKRA_JUMP_INDICATOR_FREE; public static MethodHandle WICKRA_K_RATIO_NEW; @@ -459,6 +522,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_K_RATIO_BATCH; public static MethodHandle WICKRA_K_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_K_RATIO_IS_READY; + public static MethodHandle WICKRA_K_RATIO_NAME; public static MethodHandle WICKRA_K_RATIO_RESET; public static MethodHandle WICKRA_K_RATIO_FREE; public static MethodHandle WICKRA_KAMA_NEW; @@ -466,6 +530,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_KAMA_BATCH; public static MethodHandle WICKRA_KAMA_WARMUP_PERIOD; public static MethodHandle WICKRA_KAMA_IS_READY; + public static MethodHandle WICKRA_KAMA_NAME; public static MethodHandle WICKRA_KAMA_RESET; public static MethodHandle WICKRA_KAMA_FREE; public static MethodHandle WICKRA_KELLY_CRITERION_NEW; @@ -473,6 +538,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_KELLY_CRITERION_BATCH; public static MethodHandle WICKRA_KELLY_CRITERION_WARMUP_PERIOD; public static MethodHandle WICKRA_KELLY_CRITERION_IS_READY; + public static MethodHandle WICKRA_KELLY_CRITERION_NAME; public static MethodHandle WICKRA_KELLY_CRITERION_RESET; public static MethodHandle WICKRA_KELLY_CRITERION_FREE; public static MethodHandle WICKRA_KURTOSIS_NEW; @@ -480,6 +546,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_KURTOSIS_BATCH; public static MethodHandle WICKRA_KURTOSIS_WARMUP_PERIOD; public static MethodHandle WICKRA_KURTOSIS_IS_READY; + public static MethodHandle WICKRA_KURTOSIS_NAME; public static MethodHandle WICKRA_KURTOSIS_RESET; public static MethodHandle WICKRA_KURTOSIS_FREE; public static MethodHandle WICKRA_LAGUERRE_RSI_NEW; @@ -487,6 +554,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_LAGUERRE_RSI_BATCH; public static MethodHandle WICKRA_LAGUERRE_RSI_WARMUP_PERIOD; public static MethodHandle WICKRA_LAGUERRE_RSI_IS_READY; + public static MethodHandle WICKRA_LAGUERRE_RSI_NAME; public static MethodHandle WICKRA_LAGUERRE_RSI_RESET; public static MethodHandle WICKRA_LAGUERRE_RSI_FREE; public static MethodHandle WICKRA_LINEAR_REGRESSION_NEW; @@ -494,6 +562,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_LINEAR_REGRESSION_BATCH; public static MethodHandle WICKRA_LINEAR_REGRESSION_WARMUP_PERIOD; public static MethodHandle WICKRA_LINEAR_REGRESSION_IS_READY; + public static MethodHandle WICKRA_LINEAR_REGRESSION_NAME; public static MethodHandle WICKRA_LINEAR_REGRESSION_RESET; public static MethodHandle WICKRA_LINEAR_REGRESSION_FREE; public static MethodHandle WICKRA_LIN_REG_ANGLE_NEW; @@ -501,6 +570,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_LIN_REG_ANGLE_BATCH; public static MethodHandle WICKRA_LIN_REG_ANGLE_WARMUP_PERIOD; public static MethodHandle WICKRA_LIN_REG_ANGLE_IS_READY; + public static MethodHandle WICKRA_LIN_REG_ANGLE_NAME; public static MethodHandle WICKRA_LIN_REG_ANGLE_RESET; public static MethodHandle WICKRA_LIN_REG_ANGLE_FREE; public static MethodHandle WICKRA_LIN_REG_INTERCEPT_NEW; @@ -508,6 +578,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_LIN_REG_INTERCEPT_BATCH; public static MethodHandle WICKRA_LIN_REG_INTERCEPT_WARMUP_PERIOD; public static MethodHandle WICKRA_LIN_REG_INTERCEPT_IS_READY; + public static MethodHandle WICKRA_LIN_REG_INTERCEPT_NAME; public static MethodHandle WICKRA_LIN_REG_INTERCEPT_RESET; public static MethodHandle WICKRA_LIN_REG_INTERCEPT_FREE; public static MethodHandle WICKRA_LIN_REG_SLOPE_NEW; @@ -515,6 +586,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_LIN_REG_SLOPE_BATCH; public static MethodHandle WICKRA_LIN_REG_SLOPE_WARMUP_PERIOD; public static MethodHandle WICKRA_LIN_REG_SLOPE_IS_READY; + public static MethodHandle WICKRA_LIN_REG_SLOPE_NAME; public static MethodHandle WICKRA_LIN_REG_SLOPE_RESET; public static MethodHandle WICKRA_LIN_REG_SLOPE_FREE; public static MethodHandle WICKRA_LOG_RETURN_NEW; @@ -522,6 +594,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_LOG_RETURN_BATCH; public static MethodHandle WICKRA_LOG_RETURN_WARMUP_PERIOD; public static MethodHandle WICKRA_LOG_RETURN_IS_READY; + public static MethodHandle WICKRA_LOG_RETURN_NAME; public static MethodHandle WICKRA_LOG_RETURN_RESET; public static MethodHandle WICKRA_LOG_RETURN_FREE; public static MethodHandle WICKRA_M2_MEASURE_NEW; @@ -529,6 +602,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_M2_MEASURE_BATCH; public static MethodHandle WICKRA_M2_MEASURE_WARMUP_PERIOD; public static MethodHandle WICKRA_M2_MEASURE_IS_READY; + public static MethodHandle WICKRA_M2_MEASURE_NAME; public static MethodHandle WICKRA_M2_MEASURE_RESET; public static MethodHandle WICKRA_M2_MEASURE_FREE; public static MethodHandle WICKRA_MACD_HISTOGRAM_NEW; @@ -536,6 +610,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MACD_HISTOGRAM_BATCH; public static MethodHandle WICKRA_MACD_HISTOGRAM_WARMUP_PERIOD; public static MethodHandle WICKRA_MACD_HISTOGRAM_IS_READY; + public static MethodHandle WICKRA_MACD_HISTOGRAM_NAME; public static MethodHandle WICKRA_MACD_HISTOGRAM_RESET; public static MethodHandle WICKRA_MACD_HISTOGRAM_FREE; public static MethodHandle WICKRA_MARTIN_RATIO_NEW; @@ -543,6 +618,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MARTIN_RATIO_BATCH; public static MethodHandle WICKRA_MARTIN_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_MARTIN_RATIO_IS_READY; + public static MethodHandle WICKRA_MARTIN_RATIO_NAME; public static MethodHandle WICKRA_MARTIN_RATIO_RESET; public static MethodHandle WICKRA_MARTIN_RATIO_FREE; public static MethodHandle WICKRA_MAX_DRAWDOWN_NEW; @@ -550,6 +626,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MAX_DRAWDOWN_BATCH; public static MethodHandle WICKRA_MAX_DRAWDOWN_WARMUP_PERIOD; public static MethodHandle WICKRA_MAX_DRAWDOWN_IS_READY; + public static MethodHandle WICKRA_MAX_DRAWDOWN_NAME; public static MethodHandle WICKRA_MAX_DRAWDOWN_RESET; public static MethodHandle WICKRA_MAX_DRAWDOWN_FREE; public static MethodHandle WICKRA_MC_GINLEY_DYNAMIC_NEW; @@ -557,6 +634,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MC_GINLEY_DYNAMIC_BATCH; public static MethodHandle WICKRA_MC_GINLEY_DYNAMIC_WARMUP_PERIOD; public static MethodHandle WICKRA_MC_GINLEY_DYNAMIC_IS_READY; + public static MethodHandle WICKRA_MC_GINLEY_DYNAMIC_NAME; public static MethodHandle WICKRA_MC_GINLEY_DYNAMIC_RESET; public static MethodHandle WICKRA_MC_GINLEY_DYNAMIC_FREE; public static MethodHandle WICKRA_MEDIAN_ABSOLUTE_DEVIATION_NEW; @@ -564,6 +642,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MEDIAN_ABSOLUTE_DEVIATION_BATCH; public static MethodHandle WICKRA_MEDIAN_ABSOLUTE_DEVIATION_WARMUP_PERIOD; public static MethodHandle WICKRA_MEDIAN_ABSOLUTE_DEVIATION_IS_READY; + public static MethodHandle WICKRA_MEDIAN_ABSOLUTE_DEVIATION_NAME; public static MethodHandle WICKRA_MEDIAN_ABSOLUTE_DEVIATION_RESET; public static MethodHandle WICKRA_MEDIAN_ABSOLUTE_DEVIATION_FREE; public static MethodHandle WICKRA_MEDIAN_MA_NEW; @@ -571,6 +650,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MEDIAN_MA_BATCH; public static MethodHandle WICKRA_MEDIAN_MA_WARMUP_PERIOD; public static MethodHandle WICKRA_MEDIAN_MA_IS_READY; + public static MethodHandle WICKRA_MEDIAN_MA_NAME; public static MethodHandle WICKRA_MEDIAN_MA_RESET; public static MethodHandle WICKRA_MEDIAN_MA_FREE; public static MethodHandle WICKRA_MID_POINT_NEW; @@ -578,6 +658,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MID_POINT_BATCH; public static MethodHandle WICKRA_MID_POINT_WARMUP_PERIOD; public static MethodHandle WICKRA_MID_POINT_IS_READY; + public static MethodHandle WICKRA_MID_POINT_NAME; public static MethodHandle WICKRA_MID_POINT_RESET; public static MethodHandle WICKRA_MID_POINT_FREE; public static MethodHandle WICKRA_MOM_NEW; @@ -585,6 +666,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MOM_BATCH; public static MethodHandle WICKRA_MOM_WARMUP_PERIOD; public static MethodHandle WICKRA_MOM_IS_READY; + public static MethodHandle WICKRA_MOM_NAME; public static MethodHandle WICKRA_MOM_RESET; public static MethodHandle WICKRA_MOM_FREE; public static MethodHandle WICKRA_OMEGA_RATIO_NEW; @@ -592,6 +674,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_OMEGA_RATIO_BATCH; public static MethodHandle WICKRA_OMEGA_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_OMEGA_RATIO_IS_READY; + public static MethodHandle WICKRA_OMEGA_RATIO_NAME; public static MethodHandle WICKRA_OMEGA_RATIO_RESET; public static MethodHandle WICKRA_OMEGA_RATIO_FREE; public static MethodHandle WICKRA_PAIN_INDEX_NEW; @@ -599,6 +682,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PAIN_INDEX_BATCH; public static MethodHandle WICKRA_PAIN_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_PAIN_INDEX_IS_READY; + public static MethodHandle WICKRA_PAIN_INDEX_NAME; public static MethodHandle WICKRA_PAIN_INDEX_RESET; public static MethodHandle WICKRA_PAIN_INDEX_FREE; public static MethodHandle WICKRA_PERCENT_B_NEW; @@ -606,6 +690,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PERCENT_B_BATCH; public static MethodHandle WICKRA_PERCENT_B_WARMUP_PERIOD; public static MethodHandle WICKRA_PERCENT_B_IS_READY; + public static MethodHandle WICKRA_PERCENT_B_NAME; public static MethodHandle WICKRA_PERCENT_B_RESET; public static MethodHandle WICKRA_PERCENT_B_FREE; public static MethodHandle WICKRA_PERCENTAGE_TRAILING_STOP_NEW; @@ -613,6 +698,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PERCENTAGE_TRAILING_STOP_BATCH; public static MethodHandle WICKRA_PERCENTAGE_TRAILING_STOP_WARMUP_PERIOD; public static MethodHandle WICKRA_PERCENTAGE_TRAILING_STOP_IS_READY; + public static MethodHandle WICKRA_PERCENTAGE_TRAILING_STOP_NAME; public static MethodHandle WICKRA_PERCENTAGE_TRAILING_STOP_RESET; public static MethodHandle WICKRA_PERCENTAGE_TRAILING_STOP_FREE; public static MethodHandle WICKRA_PMO_NEW; @@ -620,6 +706,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PMO_BATCH; public static MethodHandle WICKRA_PMO_WARMUP_PERIOD; public static MethodHandle WICKRA_PMO_IS_READY; + public static MethodHandle WICKRA_PMO_NAME; public static MethodHandle WICKRA_PMO_RESET; public static MethodHandle WICKRA_PMO_FREE; public static MethodHandle WICKRA_POLARIZED_FRACTAL_EFFICIENCY_NEW; @@ -627,6 +714,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_POLARIZED_FRACTAL_EFFICIENCY_BATCH; public static MethodHandle WICKRA_POLARIZED_FRACTAL_EFFICIENCY_WARMUP_PERIOD; public static MethodHandle WICKRA_POLARIZED_FRACTAL_EFFICIENCY_IS_READY; + public static MethodHandle WICKRA_POLARIZED_FRACTAL_EFFICIENCY_NAME; public static MethodHandle WICKRA_POLARIZED_FRACTAL_EFFICIENCY_RESET; public static MethodHandle WICKRA_POLARIZED_FRACTAL_EFFICIENCY_FREE; public static MethodHandle WICKRA_PPO_NEW; @@ -634,6 +722,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PPO_BATCH; public static MethodHandle WICKRA_PPO_WARMUP_PERIOD; public static MethodHandle WICKRA_PPO_IS_READY; + public static MethodHandle WICKRA_PPO_NAME; public static MethodHandle WICKRA_PPO_RESET; public static MethodHandle WICKRA_PPO_FREE; public static MethodHandle WICKRA_PPO_HISTOGRAM_NEW; @@ -641,6 +730,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PPO_HISTOGRAM_BATCH; public static MethodHandle WICKRA_PPO_HISTOGRAM_WARMUP_PERIOD; public static MethodHandle WICKRA_PPO_HISTOGRAM_IS_READY; + public static MethodHandle WICKRA_PPO_HISTOGRAM_NAME; public static MethodHandle WICKRA_PPO_HISTOGRAM_RESET; public static MethodHandle WICKRA_PPO_HISTOGRAM_FREE; public static MethodHandle WICKRA_PROFIT_FACTOR_NEW; @@ -648,6 +738,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PROFIT_FACTOR_BATCH; public static MethodHandle WICKRA_PROFIT_FACTOR_WARMUP_PERIOD; public static MethodHandle WICKRA_PROFIT_FACTOR_IS_READY; + public static MethodHandle WICKRA_PROFIT_FACTOR_NAME; public static MethodHandle WICKRA_PROFIT_FACTOR_RESET; public static MethodHandle WICKRA_PROFIT_FACTOR_FREE; public static MethodHandle WICKRA_R_SQUARED_NEW; @@ -655,6 +746,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_R_SQUARED_BATCH; public static MethodHandle WICKRA_R_SQUARED_WARMUP_PERIOD; public static MethodHandle WICKRA_R_SQUARED_IS_READY; + public static MethodHandle WICKRA_R_SQUARED_NAME; public static MethodHandle WICKRA_R_SQUARED_RESET; public static MethodHandle WICKRA_R_SQUARED_FREE; public static MethodHandle WICKRA_REALIZED_VOLATILITY_NEW; @@ -662,6 +754,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_REALIZED_VOLATILITY_BATCH; public static MethodHandle WICKRA_REALIZED_VOLATILITY_WARMUP_PERIOD; public static MethodHandle WICKRA_REALIZED_VOLATILITY_IS_READY; + public static MethodHandle WICKRA_REALIZED_VOLATILITY_NAME; public static MethodHandle WICKRA_REALIZED_VOLATILITY_RESET; public static MethodHandle WICKRA_REALIZED_VOLATILITY_FREE; public static MethodHandle WICKRA_RECOVERY_FACTOR_NEW; @@ -669,6 +762,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_RECOVERY_FACTOR_BATCH; public static MethodHandle WICKRA_RECOVERY_FACTOR_WARMUP_PERIOD; public static MethodHandle WICKRA_RECOVERY_FACTOR_IS_READY; + public static MethodHandle WICKRA_RECOVERY_FACTOR_NAME; public static MethodHandle WICKRA_RECOVERY_FACTOR_RESET; public static MethodHandle WICKRA_RECOVERY_FACTOR_FREE; public static MethodHandle WICKRA_REFLEX_NEW; @@ -676,6 +770,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_REFLEX_BATCH; public static MethodHandle WICKRA_REFLEX_WARMUP_PERIOD; public static MethodHandle WICKRA_REFLEX_IS_READY; + public static MethodHandle WICKRA_REFLEX_NAME; public static MethodHandle WICKRA_REFLEX_RESET; public static MethodHandle WICKRA_REFLEX_FREE; public static MethodHandle WICKRA_REGIME_LABEL_NEW; @@ -683,6 +778,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_REGIME_LABEL_BATCH; public static MethodHandle WICKRA_REGIME_LABEL_WARMUP_PERIOD; public static MethodHandle WICKRA_REGIME_LABEL_IS_READY; + public static MethodHandle WICKRA_REGIME_LABEL_NAME; public static MethodHandle WICKRA_REGIME_LABEL_RESET; public static MethodHandle WICKRA_REGIME_LABEL_FREE; public static MethodHandle WICKRA_RENKO_TRAILING_STOP_NEW; @@ -690,6 +786,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_RENKO_TRAILING_STOP_BATCH; public static MethodHandle WICKRA_RENKO_TRAILING_STOP_WARMUP_PERIOD; public static MethodHandle WICKRA_RENKO_TRAILING_STOP_IS_READY; + public static MethodHandle WICKRA_RENKO_TRAILING_STOP_NAME; public static MethodHandle WICKRA_RENKO_TRAILING_STOP_RESET; public static MethodHandle WICKRA_RENKO_TRAILING_STOP_FREE; public static MethodHandle WICKRA_RMI_NEW; @@ -697,6 +794,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_RMI_BATCH; public static MethodHandle WICKRA_RMI_WARMUP_PERIOD; public static MethodHandle WICKRA_RMI_IS_READY; + public static MethodHandle WICKRA_RMI_NAME; public static MethodHandle WICKRA_RMI_RESET; public static MethodHandle WICKRA_RMI_FREE; public static MethodHandle WICKRA_ROC_NEW; @@ -704,6 +802,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROC_BATCH; public static MethodHandle WICKRA_ROC_WARMUP_PERIOD; public static MethodHandle WICKRA_ROC_IS_READY; + public static MethodHandle WICKRA_ROC_NAME; public static MethodHandle WICKRA_ROC_RESET; public static MethodHandle WICKRA_ROC_FREE; public static MethodHandle WICKRA_ROCP_NEW; @@ -711,6 +810,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROCP_BATCH; public static MethodHandle WICKRA_ROCP_WARMUP_PERIOD; public static MethodHandle WICKRA_ROCP_IS_READY; + public static MethodHandle WICKRA_ROCP_NAME; public static MethodHandle WICKRA_ROCP_RESET; public static MethodHandle WICKRA_ROCP_FREE; public static MethodHandle WICKRA_ROCR_NEW; @@ -718,6 +818,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROCR_BATCH; public static MethodHandle WICKRA_ROCR_WARMUP_PERIOD; public static MethodHandle WICKRA_ROCR_IS_READY; + public static MethodHandle WICKRA_ROCR_NAME; public static MethodHandle WICKRA_ROCR_RESET; public static MethodHandle WICKRA_ROCR_FREE; public static MethodHandle WICKRA_ROCR100_NEW; @@ -725,6 +826,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROCR100_BATCH; public static MethodHandle WICKRA_ROCR100_WARMUP_PERIOD; public static MethodHandle WICKRA_ROCR100_IS_READY; + public static MethodHandle WICKRA_ROCR100_NAME; public static MethodHandle WICKRA_ROCR100_RESET; public static MethodHandle WICKRA_ROCR100_FREE; public static MethodHandle WICKRA_ROLLING_IQR_NEW; @@ -732,6 +834,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROLLING_IQR_BATCH; public static MethodHandle WICKRA_ROLLING_IQR_WARMUP_PERIOD; public static MethodHandle WICKRA_ROLLING_IQR_IS_READY; + public static MethodHandle WICKRA_ROLLING_IQR_NAME; public static MethodHandle WICKRA_ROLLING_IQR_RESET; public static MethodHandle WICKRA_ROLLING_IQR_FREE; public static MethodHandle WICKRA_ROLLING_MIN_MAX_SCALER_NEW; @@ -739,6 +842,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROLLING_MIN_MAX_SCALER_BATCH; public static MethodHandle WICKRA_ROLLING_MIN_MAX_SCALER_WARMUP_PERIOD; public static MethodHandle WICKRA_ROLLING_MIN_MAX_SCALER_IS_READY; + public static MethodHandle WICKRA_ROLLING_MIN_MAX_SCALER_NAME; public static MethodHandle WICKRA_ROLLING_MIN_MAX_SCALER_RESET; public static MethodHandle WICKRA_ROLLING_MIN_MAX_SCALER_FREE; public static MethodHandle WICKRA_ROLLING_PERCENTILE_RANK_NEW; @@ -746,6 +850,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROLLING_PERCENTILE_RANK_BATCH; public static MethodHandle WICKRA_ROLLING_PERCENTILE_RANK_WARMUP_PERIOD; public static MethodHandle WICKRA_ROLLING_PERCENTILE_RANK_IS_READY; + public static MethodHandle WICKRA_ROLLING_PERCENTILE_RANK_NAME; public static MethodHandle WICKRA_ROLLING_PERCENTILE_RANK_RESET; public static MethodHandle WICKRA_ROLLING_PERCENTILE_RANK_FREE; public static MethodHandle WICKRA_ROLLING_QUANTILE_NEW; @@ -753,6 +858,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROLLING_QUANTILE_BATCH; public static MethodHandle WICKRA_ROLLING_QUANTILE_WARMUP_PERIOD; public static MethodHandle WICKRA_ROLLING_QUANTILE_IS_READY; + public static MethodHandle WICKRA_ROLLING_QUANTILE_NAME; public static MethodHandle WICKRA_ROLLING_QUANTILE_RESET; public static MethodHandle WICKRA_ROLLING_QUANTILE_FREE; public static MethodHandle WICKRA_ROOFING_FILTER_NEW; @@ -760,6 +866,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROOFING_FILTER_BATCH; public static MethodHandle WICKRA_ROOFING_FILTER_WARMUP_PERIOD; public static MethodHandle WICKRA_ROOFING_FILTER_IS_READY; + public static MethodHandle WICKRA_ROOFING_FILTER_NAME; public static MethodHandle WICKRA_ROOFING_FILTER_RESET; public static MethodHandle WICKRA_ROOFING_FILTER_FREE; public static MethodHandle WICKRA_RSI_NEW; @@ -767,6 +874,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_RSI_BATCH; public static MethodHandle WICKRA_RSI_WARMUP_PERIOD; public static MethodHandle WICKRA_RSI_IS_READY; + public static MethodHandle WICKRA_RSI_NAME; public static MethodHandle WICKRA_RSI_RESET; public static MethodHandle WICKRA_RSI_FREE; public static MethodHandle WICKRA_RSX_NEW; @@ -774,6 +882,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_RSX_BATCH; public static MethodHandle WICKRA_RSX_WARMUP_PERIOD; public static MethodHandle WICKRA_RSX_IS_READY; + public static MethodHandle WICKRA_RSX_NAME; public static MethodHandle WICKRA_RSX_RESET; public static MethodHandle WICKRA_RSX_FREE; public static MethodHandle WICKRA_RVI_VOLATILITY_NEW; @@ -781,6 +890,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_RVI_VOLATILITY_BATCH; public static MethodHandle WICKRA_RVI_VOLATILITY_WARMUP_PERIOD; public static MethodHandle WICKRA_RVI_VOLATILITY_IS_READY; + public static MethodHandle WICKRA_RVI_VOLATILITY_NAME; public static MethodHandle WICKRA_RVI_VOLATILITY_RESET; public static MethodHandle WICKRA_RVI_VOLATILITY_FREE; public static MethodHandle WICKRA_SAMPLE_ENTROPY_NEW; @@ -788,6 +898,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SAMPLE_ENTROPY_BATCH; public static MethodHandle WICKRA_SAMPLE_ENTROPY_WARMUP_PERIOD; public static MethodHandle WICKRA_SAMPLE_ENTROPY_IS_READY; + public static MethodHandle WICKRA_SAMPLE_ENTROPY_NAME; public static MethodHandle WICKRA_SAMPLE_ENTROPY_RESET; public static MethodHandle WICKRA_SAMPLE_ENTROPY_FREE; public static MethodHandle WICKRA_SHANNON_ENTROPY_NEW; @@ -795,6 +906,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SHANNON_ENTROPY_BATCH; public static MethodHandle WICKRA_SHANNON_ENTROPY_WARMUP_PERIOD; public static MethodHandle WICKRA_SHANNON_ENTROPY_IS_READY; + public static MethodHandle WICKRA_SHANNON_ENTROPY_NAME; public static MethodHandle WICKRA_SHANNON_ENTROPY_RESET; public static MethodHandle WICKRA_SHANNON_ENTROPY_FREE; public static MethodHandle WICKRA_SHARPE_RATIO_NEW; @@ -802,6 +914,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SHARPE_RATIO_BATCH; public static MethodHandle WICKRA_SHARPE_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_SHARPE_RATIO_IS_READY; + public static MethodHandle WICKRA_SHARPE_RATIO_NAME; public static MethodHandle WICKRA_SHARPE_RATIO_RESET; public static MethodHandle WICKRA_SHARPE_RATIO_FREE; public static MethodHandle WICKRA_SINE_WAVE_NEW; @@ -809,6 +922,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SINE_WAVE_BATCH; public static MethodHandle WICKRA_SINE_WAVE_WARMUP_PERIOD; public static MethodHandle WICKRA_SINE_WAVE_IS_READY; + public static MethodHandle WICKRA_SINE_WAVE_NAME; public static MethodHandle WICKRA_SINE_WAVE_RESET; public static MethodHandle WICKRA_SINE_WAVE_FREE; public static MethodHandle WICKRA_SINE_WEIGHTED_MA_NEW; @@ -816,6 +930,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SINE_WEIGHTED_MA_BATCH; public static MethodHandle WICKRA_SINE_WEIGHTED_MA_WARMUP_PERIOD; public static MethodHandle WICKRA_SINE_WEIGHTED_MA_IS_READY; + public static MethodHandle WICKRA_SINE_WEIGHTED_MA_NAME; public static MethodHandle WICKRA_SINE_WEIGHTED_MA_RESET; public static MethodHandle WICKRA_SINE_WEIGHTED_MA_FREE; public static MethodHandle WICKRA_SKEWNESS_NEW; @@ -823,6 +938,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SKEWNESS_BATCH; public static MethodHandle WICKRA_SKEWNESS_WARMUP_PERIOD; public static MethodHandle WICKRA_SKEWNESS_IS_READY; + public static MethodHandle WICKRA_SKEWNESS_NAME; public static MethodHandle WICKRA_SKEWNESS_RESET; public static MethodHandle WICKRA_SKEWNESS_FREE; public static MethodHandle WICKRA_SMA_NEW; @@ -830,6 +946,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SMA_BATCH; public static MethodHandle WICKRA_SMA_WARMUP_PERIOD; public static MethodHandle WICKRA_SMA_IS_READY; + public static MethodHandle WICKRA_SMA_NAME; public static MethodHandle WICKRA_SMA_RESET; public static MethodHandle WICKRA_SMA_FREE; public static MethodHandle WICKRA_SMMA_NEW; @@ -837,6 +954,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SMMA_BATCH; public static MethodHandle WICKRA_SMMA_WARMUP_PERIOD; public static MethodHandle WICKRA_SMMA_IS_READY; + public static MethodHandle WICKRA_SMMA_NAME; public static MethodHandle WICKRA_SMMA_RESET; public static MethodHandle WICKRA_SMMA_FREE; public static MethodHandle WICKRA_SORTINO_RATIO_NEW; @@ -844,6 +962,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SORTINO_RATIO_BATCH; public static MethodHandle WICKRA_SORTINO_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_SORTINO_RATIO_IS_READY; + public static MethodHandle WICKRA_SORTINO_RATIO_NAME; public static MethodHandle WICKRA_SORTINO_RATIO_RESET; public static MethodHandle WICKRA_SORTINO_RATIO_FREE; public static MethodHandle WICKRA_STANDARD_ERROR_NEW; @@ -851,6 +970,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_STANDARD_ERROR_BATCH; public static MethodHandle WICKRA_STANDARD_ERROR_WARMUP_PERIOD; public static MethodHandle WICKRA_STANDARD_ERROR_IS_READY; + public static MethodHandle WICKRA_STANDARD_ERROR_NAME; public static MethodHandle WICKRA_STANDARD_ERROR_RESET; public static MethodHandle WICKRA_STANDARD_ERROR_FREE; public static MethodHandle WICKRA_STC_NEW; @@ -858,6 +978,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_STC_BATCH; public static MethodHandle WICKRA_STC_WARMUP_PERIOD; public static MethodHandle WICKRA_STC_IS_READY; + public static MethodHandle WICKRA_STC_NAME; public static MethodHandle WICKRA_STC_RESET; public static MethodHandle WICKRA_STC_FREE; public static MethodHandle WICKRA_STD_DEV_NEW; @@ -865,6 +986,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_STD_DEV_BATCH; public static MethodHandle WICKRA_STD_DEV_WARMUP_PERIOD; public static MethodHandle WICKRA_STD_DEV_IS_READY; + public static MethodHandle WICKRA_STD_DEV_NAME; public static MethodHandle WICKRA_STD_DEV_RESET; public static MethodHandle WICKRA_STD_DEV_FREE; public static MethodHandle WICKRA_STEP_TRAILING_STOP_NEW; @@ -872,6 +994,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_STEP_TRAILING_STOP_BATCH; public static MethodHandle WICKRA_STEP_TRAILING_STOP_WARMUP_PERIOD; public static MethodHandle WICKRA_STEP_TRAILING_STOP_IS_READY; + public static MethodHandle WICKRA_STEP_TRAILING_STOP_NAME; public static MethodHandle WICKRA_STEP_TRAILING_STOP_RESET; public static MethodHandle WICKRA_STEP_TRAILING_STOP_FREE; public static MethodHandle WICKRA_STERLING_RATIO_NEW; @@ -879,6 +1002,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_STERLING_RATIO_BATCH; public static MethodHandle WICKRA_STERLING_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_STERLING_RATIO_IS_READY; + public static MethodHandle WICKRA_STERLING_RATIO_NAME; public static MethodHandle WICKRA_STERLING_RATIO_RESET; public static MethodHandle WICKRA_STERLING_RATIO_FREE; public static MethodHandle WICKRA_STOCH_RSI_NEW; @@ -886,6 +1010,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_STOCH_RSI_BATCH; public static MethodHandle WICKRA_STOCH_RSI_WARMUP_PERIOD; public static MethodHandle WICKRA_STOCH_RSI_IS_READY; + public static MethodHandle WICKRA_STOCH_RSI_NAME; public static MethodHandle WICKRA_STOCH_RSI_RESET; public static MethodHandle WICKRA_STOCH_RSI_FREE; public static MethodHandle WICKRA_SUPER_SMOOTHER_NEW; @@ -893,6 +1018,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SUPER_SMOOTHER_BATCH; public static MethodHandle WICKRA_SUPER_SMOOTHER_WARMUP_PERIOD; public static MethodHandle WICKRA_SUPER_SMOOTHER_IS_READY; + public static MethodHandle WICKRA_SUPER_SMOOTHER_NAME; public static MethodHandle WICKRA_SUPER_SMOOTHER_RESET; public static MethodHandle WICKRA_SUPER_SMOOTHER_FREE; public static MethodHandle WICKRA_T3_NEW; @@ -900,6 +1026,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_T3_BATCH; public static MethodHandle WICKRA_T3_WARMUP_PERIOD; public static MethodHandle WICKRA_T3_IS_READY; + public static MethodHandle WICKRA_T3_NAME; public static MethodHandle WICKRA_T3_RESET; public static MethodHandle WICKRA_T3_FREE; public static MethodHandle WICKRA_TAIL_RATIO_NEW; @@ -907,6 +1034,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TAIL_RATIO_BATCH; public static MethodHandle WICKRA_TAIL_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_TAIL_RATIO_IS_READY; + public static MethodHandle WICKRA_TAIL_RATIO_NAME; public static MethodHandle WICKRA_TAIL_RATIO_RESET; public static MethodHandle WICKRA_TAIL_RATIO_FREE; public static MethodHandle WICKRA_TEMA_NEW; @@ -914,6 +1042,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TEMA_BATCH; public static MethodHandle WICKRA_TEMA_WARMUP_PERIOD; public static MethodHandle WICKRA_TEMA_IS_READY; + public static MethodHandle WICKRA_TEMA_NAME; public static MethodHandle WICKRA_TEMA_RESET; public static MethodHandle WICKRA_TEMA_FREE; public static MethodHandle WICKRA_TII_NEW; @@ -921,6 +1050,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TII_BATCH; public static MethodHandle WICKRA_TII_WARMUP_PERIOD; public static MethodHandle WICKRA_TII_IS_READY; + public static MethodHandle WICKRA_TII_NAME; public static MethodHandle WICKRA_TII_RESET; public static MethodHandle WICKRA_TII_FREE; public static MethodHandle WICKRA_TREND_LABEL_NEW; @@ -928,6 +1058,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TREND_LABEL_BATCH; public static MethodHandle WICKRA_TREND_LABEL_WARMUP_PERIOD; public static MethodHandle WICKRA_TREND_LABEL_IS_READY; + public static MethodHandle WICKRA_TREND_LABEL_NAME; public static MethodHandle WICKRA_TREND_LABEL_RESET; public static MethodHandle WICKRA_TREND_LABEL_FREE; public static MethodHandle WICKRA_TREND_STRENGTH_INDEX_NEW; @@ -935,6 +1066,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TREND_STRENGTH_INDEX_BATCH; public static MethodHandle WICKRA_TREND_STRENGTH_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_TREND_STRENGTH_INDEX_IS_READY; + public static MethodHandle WICKRA_TREND_STRENGTH_INDEX_NAME; public static MethodHandle WICKRA_TREND_STRENGTH_INDEX_RESET; public static MethodHandle WICKRA_TREND_STRENGTH_INDEX_FREE; public static MethodHandle WICKRA_TRENDFLEX_NEW; @@ -942,6 +1074,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TRENDFLEX_BATCH; public static MethodHandle WICKRA_TRENDFLEX_WARMUP_PERIOD; public static MethodHandle WICKRA_TRENDFLEX_IS_READY; + public static MethodHandle WICKRA_TRENDFLEX_NAME; public static MethodHandle WICKRA_TRENDFLEX_RESET; public static MethodHandle WICKRA_TRENDFLEX_FREE; public static MethodHandle WICKRA_TRIMA_NEW; @@ -949,6 +1082,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TRIMA_BATCH; public static MethodHandle WICKRA_TRIMA_WARMUP_PERIOD; public static MethodHandle WICKRA_TRIMA_IS_READY; + public static MethodHandle WICKRA_TRIMA_NAME; public static MethodHandle WICKRA_TRIMA_RESET; public static MethodHandle WICKRA_TRIMA_FREE; public static MethodHandle WICKRA_TRIX_NEW; @@ -956,6 +1090,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TRIX_BATCH; public static MethodHandle WICKRA_TRIX_WARMUP_PERIOD; public static MethodHandle WICKRA_TRIX_IS_READY; + public static MethodHandle WICKRA_TRIX_NAME; public static MethodHandle WICKRA_TRIX_RESET; public static MethodHandle WICKRA_TRIX_FREE; public static MethodHandle WICKRA_TSF_NEW; @@ -963,6 +1098,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TSF_BATCH; public static MethodHandle WICKRA_TSF_WARMUP_PERIOD; public static MethodHandle WICKRA_TSF_IS_READY; + public static MethodHandle WICKRA_TSF_NAME; public static MethodHandle WICKRA_TSF_RESET; public static MethodHandle WICKRA_TSF_FREE; public static MethodHandle WICKRA_TSF_OSCILLATOR_NEW; @@ -970,6 +1106,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TSF_OSCILLATOR_BATCH; public static MethodHandle WICKRA_TSF_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_TSF_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_TSF_OSCILLATOR_NAME; public static MethodHandle WICKRA_TSF_OSCILLATOR_RESET; public static MethodHandle WICKRA_TSF_OSCILLATOR_FREE; public static MethodHandle WICKRA_TSI_NEW; @@ -977,6 +1114,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TSI_BATCH; public static MethodHandle WICKRA_TSI_WARMUP_PERIOD; public static MethodHandle WICKRA_TSI_IS_READY; + public static MethodHandle WICKRA_TSI_NAME; public static MethodHandle WICKRA_TSI_RESET; public static MethodHandle WICKRA_TSI_FREE; public static MethodHandle WICKRA_ULCER_INDEX_NEW; @@ -984,6 +1122,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ULCER_INDEX_BATCH; public static MethodHandle WICKRA_ULCER_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_ULCER_INDEX_IS_READY; + public static MethodHandle WICKRA_ULCER_INDEX_NAME; public static MethodHandle WICKRA_ULCER_INDEX_RESET; public static MethodHandle WICKRA_ULCER_INDEX_FREE; public static MethodHandle WICKRA_UNIVERSAL_OSCILLATOR_NEW; @@ -991,6 +1130,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_UNIVERSAL_OSCILLATOR_BATCH; public static MethodHandle WICKRA_UNIVERSAL_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_UNIVERSAL_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_UNIVERSAL_OSCILLATOR_NAME; public static MethodHandle WICKRA_UNIVERSAL_OSCILLATOR_RESET; public static MethodHandle WICKRA_UNIVERSAL_OSCILLATOR_FREE; public static MethodHandle WICKRA_UPSIDE_POTENTIAL_RATIO_NEW; @@ -998,6 +1138,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_UPSIDE_POTENTIAL_RATIO_BATCH; public static MethodHandle WICKRA_UPSIDE_POTENTIAL_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_UPSIDE_POTENTIAL_RATIO_IS_READY; + public static MethodHandle WICKRA_UPSIDE_POTENTIAL_RATIO_NAME; public static MethodHandle WICKRA_UPSIDE_POTENTIAL_RATIO_RESET; public static MethodHandle WICKRA_UPSIDE_POTENTIAL_RATIO_FREE; public static MethodHandle WICKRA_VALUE_AT_RISK_NEW; @@ -1005,6 +1146,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VALUE_AT_RISK_BATCH; public static MethodHandle WICKRA_VALUE_AT_RISK_WARMUP_PERIOD; public static MethodHandle WICKRA_VALUE_AT_RISK_IS_READY; + public static MethodHandle WICKRA_VALUE_AT_RISK_NAME; public static MethodHandle WICKRA_VALUE_AT_RISK_RESET; public static MethodHandle WICKRA_VALUE_AT_RISK_FREE; public static MethodHandle WICKRA_VARIANCE_NEW; @@ -1012,6 +1154,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VARIANCE_BATCH; public static MethodHandle WICKRA_VARIANCE_WARMUP_PERIOD; public static MethodHandle WICKRA_VARIANCE_IS_READY; + public static MethodHandle WICKRA_VARIANCE_NAME; public static MethodHandle WICKRA_VARIANCE_RESET; public static MethodHandle WICKRA_VARIANCE_FREE; public static MethodHandle WICKRA_VERTICAL_HORIZONTAL_FILTER_NEW; @@ -1019,6 +1162,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VERTICAL_HORIZONTAL_FILTER_BATCH; public static MethodHandle WICKRA_VERTICAL_HORIZONTAL_FILTER_WARMUP_PERIOD; public static MethodHandle WICKRA_VERTICAL_HORIZONTAL_FILTER_IS_READY; + public static MethodHandle WICKRA_VERTICAL_HORIZONTAL_FILTER_NAME; public static MethodHandle WICKRA_VERTICAL_HORIZONTAL_FILTER_RESET; public static MethodHandle WICKRA_VERTICAL_HORIZONTAL_FILTER_FREE; public static MethodHandle WICKRA_VIDYA_NEW; @@ -1026,6 +1170,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VIDYA_BATCH; public static MethodHandle WICKRA_VIDYA_WARMUP_PERIOD; public static MethodHandle WICKRA_VIDYA_IS_READY; + public static MethodHandle WICKRA_VIDYA_NAME; public static MethodHandle WICKRA_VIDYA_RESET; public static MethodHandle WICKRA_VIDYA_FREE; public static MethodHandle WICKRA_VOLATILITY_OF_VOLATILITY_NEW; @@ -1033,6 +1178,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VOLATILITY_OF_VOLATILITY_BATCH; public static MethodHandle WICKRA_VOLATILITY_OF_VOLATILITY_WARMUP_PERIOD; public static MethodHandle WICKRA_VOLATILITY_OF_VOLATILITY_IS_READY; + public static MethodHandle WICKRA_VOLATILITY_OF_VOLATILITY_NAME; public static MethodHandle WICKRA_VOLATILITY_OF_VOLATILITY_RESET; public static MethodHandle WICKRA_VOLATILITY_OF_VOLATILITY_FREE; public static MethodHandle WICKRA_WAVE_PM_NEW; @@ -1040,6 +1186,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_WAVE_PM_BATCH; public static MethodHandle WICKRA_WAVE_PM_WARMUP_PERIOD; public static MethodHandle WICKRA_WAVE_PM_IS_READY; + public static MethodHandle WICKRA_WAVE_PM_NAME; public static MethodHandle WICKRA_WAVE_PM_RESET; public static MethodHandle WICKRA_WAVE_PM_FREE; public static MethodHandle WICKRA_WIN_RATE_NEW; @@ -1047,6 +1194,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_WIN_RATE_BATCH; public static MethodHandle WICKRA_WIN_RATE_WARMUP_PERIOD; public static MethodHandle WICKRA_WIN_RATE_IS_READY; + public static MethodHandle WICKRA_WIN_RATE_NAME; public static MethodHandle WICKRA_WIN_RATE_RESET; public static MethodHandle WICKRA_WIN_RATE_FREE; public static MethodHandle WICKRA_WMA_NEW; @@ -1054,6 +1202,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_WMA_BATCH; public static MethodHandle WICKRA_WMA_WARMUP_PERIOD; public static MethodHandle WICKRA_WMA_IS_READY; + public static MethodHandle WICKRA_WMA_NAME; public static MethodHandle WICKRA_WMA_RESET; public static MethodHandle WICKRA_WMA_FREE; public static MethodHandle WICKRA_Z_SCORE_NEW; @@ -1061,6 +1210,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_Z_SCORE_BATCH; public static MethodHandle WICKRA_Z_SCORE_WARMUP_PERIOD; public static MethodHandle WICKRA_Z_SCORE_IS_READY; + public static MethodHandle WICKRA_Z_SCORE_NAME; public static MethodHandle WICKRA_Z_SCORE_RESET; public static MethodHandle WICKRA_Z_SCORE_FREE; public static MethodHandle WICKRA_ZLEMA_NEW; @@ -1068,6 +1218,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ZLEMA_BATCH; public static MethodHandle WICKRA_ZLEMA_WARMUP_PERIOD; public static MethodHandle WICKRA_ZLEMA_IS_READY; + public static MethodHandle WICKRA_ZLEMA_NAME; public static MethodHandle WICKRA_ZLEMA_RESET; public static MethodHandle WICKRA_ZLEMA_FREE; public static MethodHandle WICKRA_ALPHA_NEW; @@ -1075,6 +1226,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ALPHA_BATCH; public static MethodHandle WICKRA_ALPHA_WARMUP_PERIOD; public static MethodHandle WICKRA_ALPHA_IS_READY; + public static MethodHandle WICKRA_ALPHA_NAME; public static MethodHandle WICKRA_ALPHA_RESET; public static MethodHandle WICKRA_ALPHA_FREE; public static MethodHandle WICKRA_BETA_NEW; @@ -1082,6 +1234,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BETA_BATCH; public static MethodHandle WICKRA_BETA_WARMUP_PERIOD; public static MethodHandle WICKRA_BETA_IS_READY; + public static MethodHandle WICKRA_BETA_NAME; public static MethodHandle WICKRA_BETA_RESET; public static MethodHandle WICKRA_BETA_FREE; public static MethodHandle WICKRA_BETA_NEUTRAL_SPREAD_NEW; @@ -1089,6 +1242,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BETA_NEUTRAL_SPREAD_BATCH; public static MethodHandle WICKRA_BETA_NEUTRAL_SPREAD_WARMUP_PERIOD; public static MethodHandle WICKRA_BETA_NEUTRAL_SPREAD_IS_READY; + public static MethodHandle WICKRA_BETA_NEUTRAL_SPREAD_NAME; public static MethodHandle WICKRA_BETA_NEUTRAL_SPREAD_RESET; public static MethodHandle WICKRA_BETA_NEUTRAL_SPREAD_FREE; public static MethodHandle WICKRA_DISTANCE_SSD_NEW; @@ -1096,6 +1250,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DISTANCE_SSD_BATCH; public static MethodHandle WICKRA_DISTANCE_SSD_WARMUP_PERIOD; public static MethodHandle WICKRA_DISTANCE_SSD_IS_READY; + public static MethodHandle WICKRA_DISTANCE_SSD_NAME; public static MethodHandle WICKRA_DISTANCE_SSD_RESET; public static MethodHandle WICKRA_DISTANCE_SSD_FREE; public static MethodHandle WICKRA_GRANGER_CAUSALITY_NEW; @@ -1103,6 +1258,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_GRANGER_CAUSALITY_BATCH; public static MethodHandle WICKRA_GRANGER_CAUSALITY_WARMUP_PERIOD; public static MethodHandle WICKRA_GRANGER_CAUSALITY_IS_READY; + public static MethodHandle WICKRA_GRANGER_CAUSALITY_NAME; public static MethodHandle WICKRA_GRANGER_CAUSALITY_RESET; public static MethodHandle WICKRA_GRANGER_CAUSALITY_FREE; public static MethodHandle WICKRA_HASBROUCK_INFORMATION_SHARE_NEW; @@ -1110,6 +1266,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HASBROUCK_INFORMATION_SHARE_BATCH; public static MethodHandle WICKRA_HASBROUCK_INFORMATION_SHARE_WARMUP_PERIOD; public static MethodHandle WICKRA_HASBROUCK_INFORMATION_SHARE_IS_READY; + public static MethodHandle WICKRA_HASBROUCK_INFORMATION_SHARE_NAME; public static MethodHandle WICKRA_HASBROUCK_INFORMATION_SHARE_RESET; public static MethodHandle WICKRA_HASBROUCK_INFORMATION_SHARE_FREE; public static MethodHandle WICKRA_INFORMATION_RATIO_NEW; @@ -1117,6 +1274,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_INFORMATION_RATIO_BATCH; public static MethodHandle WICKRA_INFORMATION_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_INFORMATION_RATIO_IS_READY; + public static MethodHandle WICKRA_INFORMATION_RATIO_NAME; public static MethodHandle WICKRA_INFORMATION_RATIO_RESET; public static MethodHandle WICKRA_INFORMATION_RATIO_FREE; public static MethodHandle WICKRA_KENDALL_TAU_NEW; @@ -1124,6 +1282,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_KENDALL_TAU_BATCH; public static MethodHandle WICKRA_KENDALL_TAU_WARMUP_PERIOD; public static MethodHandle WICKRA_KENDALL_TAU_IS_READY; + public static MethodHandle WICKRA_KENDALL_TAU_NAME; public static MethodHandle WICKRA_KENDALL_TAU_RESET; public static MethodHandle WICKRA_KENDALL_TAU_FREE; public static MethodHandle WICKRA_OU_HALF_LIFE_NEW; @@ -1131,6 +1290,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_OU_HALF_LIFE_BATCH; public static MethodHandle WICKRA_OU_HALF_LIFE_WARMUP_PERIOD; public static MethodHandle WICKRA_OU_HALF_LIFE_IS_READY; + public static MethodHandle WICKRA_OU_HALF_LIFE_NAME; public static MethodHandle WICKRA_OU_HALF_LIFE_RESET; public static MethodHandle WICKRA_OU_HALF_LIFE_FREE; public static MethodHandle WICKRA_PAIR_SPREAD_Z_SCORE_NEW; @@ -1138,6 +1298,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PAIR_SPREAD_Z_SCORE_BATCH; public static MethodHandle WICKRA_PAIR_SPREAD_Z_SCORE_WARMUP_PERIOD; public static MethodHandle WICKRA_PAIR_SPREAD_Z_SCORE_IS_READY; + public static MethodHandle WICKRA_PAIR_SPREAD_Z_SCORE_NAME; public static MethodHandle WICKRA_PAIR_SPREAD_Z_SCORE_RESET; public static MethodHandle WICKRA_PAIR_SPREAD_Z_SCORE_FREE; public static MethodHandle WICKRA_PAIRWISE_BETA_NEW; @@ -1145,6 +1306,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PAIRWISE_BETA_BATCH; public static MethodHandle WICKRA_PAIRWISE_BETA_WARMUP_PERIOD; public static MethodHandle WICKRA_PAIRWISE_BETA_IS_READY; + public static MethodHandle WICKRA_PAIRWISE_BETA_NAME; public static MethodHandle WICKRA_PAIRWISE_BETA_RESET; public static MethodHandle WICKRA_PAIRWISE_BETA_FREE; public static MethodHandle WICKRA_PEARSON_CORRELATION_NEW; @@ -1152,6 +1314,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PEARSON_CORRELATION_BATCH; public static MethodHandle WICKRA_PEARSON_CORRELATION_WARMUP_PERIOD; public static MethodHandle WICKRA_PEARSON_CORRELATION_IS_READY; + public static MethodHandle WICKRA_PEARSON_CORRELATION_NAME; public static MethodHandle WICKRA_PEARSON_CORRELATION_RESET; public static MethodHandle WICKRA_PEARSON_CORRELATION_FREE; public static MethodHandle WICKRA_ROLLING_CORRELATION_NEW; @@ -1159,6 +1322,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROLLING_CORRELATION_BATCH; public static MethodHandle WICKRA_ROLLING_CORRELATION_WARMUP_PERIOD; public static MethodHandle WICKRA_ROLLING_CORRELATION_IS_READY; + public static MethodHandle WICKRA_ROLLING_CORRELATION_NAME; public static MethodHandle WICKRA_ROLLING_CORRELATION_RESET; public static MethodHandle WICKRA_ROLLING_CORRELATION_FREE; public static MethodHandle WICKRA_ROLLING_COVARIANCE_NEW; @@ -1166,6 +1330,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROLLING_COVARIANCE_BATCH; public static MethodHandle WICKRA_ROLLING_COVARIANCE_WARMUP_PERIOD; public static MethodHandle WICKRA_ROLLING_COVARIANCE_IS_READY; + public static MethodHandle WICKRA_ROLLING_COVARIANCE_NAME; public static MethodHandle WICKRA_ROLLING_COVARIANCE_RESET; public static MethodHandle WICKRA_ROLLING_COVARIANCE_FREE; public static MethodHandle WICKRA_SPEARMAN_CORRELATION_NEW; @@ -1173,6 +1338,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SPEARMAN_CORRELATION_BATCH; public static MethodHandle WICKRA_SPEARMAN_CORRELATION_WARMUP_PERIOD; public static MethodHandle WICKRA_SPEARMAN_CORRELATION_IS_READY; + public static MethodHandle WICKRA_SPEARMAN_CORRELATION_NAME; public static MethodHandle WICKRA_SPEARMAN_CORRELATION_RESET; public static MethodHandle WICKRA_SPEARMAN_CORRELATION_FREE; public static MethodHandle WICKRA_SPREAD_AR1_COEFFICIENT_NEW; @@ -1180,6 +1346,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SPREAD_AR1_COEFFICIENT_BATCH; public static MethodHandle WICKRA_SPREAD_AR1_COEFFICIENT_WARMUP_PERIOD; public static MethodHandle WICKRA_SPREAD_AR1_COEFFICIENT_IS_READY; + public static MethodHandle WICKRA_SPREAD_AR1_COEFFICIENT_NAME; public static MethodHandle WICKRA_SPREAD_AR1_COEFFICIENT_RESET; public static MethodHandle WICKRA_SPREAD_AR1_COEFFICIENT_FREE; public static MethodHandle WICKRA_SPREAD_HURST_NEW; @@ -1187,6 +1354,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SPREAD_HURST_BATCH; public static MethodHandle WICKRA_SPREAD_HURST_WARMUP_PERIOD; public static MethodHandle WICKRA_SPREAD_HURST_IS_READY; + public static MethodHandle WICKRA_SPREAD_HURST_NAME; public static MethodHandle WICKRA_SPREAD_HURST_RESET; public static MethodHandle WICKRA_SPREAD_HURST_FREE; public static MethodHandle WICKRA_TREYNOR_RATIO_NEW; @@ -1194,6 +1362,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TREYNOR_RATIO_BATCH; public static MethodHandle WICKRA_TREYNOR_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_TREYNOR_RATIO_IS_READY; + public static MethodHandle WICKRA_TREYNOR_RATIO_NAME; public static MethodHandle WICKRA_TREYNOR_RATIO_RESET; public static MethodHandle WICKRA_TREYNOR_RATIO_FREE; public static MethodHandle WICKRA_VARIANCE_RATIO_NEW; @@ -1201,6 +1370,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VARIANCE_RATIO_BATCH; public static MethodHandle WICKRA_VARIANCE_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_VARIANCE_RATIO_IS_READY; + public static MethodHandle WICKRA_VARIANCE_RATIO_NAME; public static MethodHandle WICKRA_VARIANCE_RATIO_RESET; public static MethodHandle WICKRA_VARIANCE_RATIO_FREE; public static MethodHandle WICKRA_ABANDONED_BABY_NEW; @@ -1208,6 +1378,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ABANDONED_BABY_BATCH; public static MethodHandle WICKRA_ABANDONED_BABY_WARMUP_PERIOD; public static MethodHandle WICKRA_ABANDONED_BABY_IS_READY; + public static MethodHandle WICKRA_ABANDONED_BABY_NAME; public static MethodHandle WICKRA_ABANDONED_BABY_RESET; public static MethodHandle WICKRA_ABANDONED_BABY_FREE; public static MethodHandle WICKRA_ABCD_NEW; @@ -1215,6 +1386,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ABCD_BATCH; public static MethodHandle WICKRA_ABCD_WARMUP_PERIOD; public static MethodHandle WICKRA_ABCD_IS_READY; + public static MethodHandle WICKRA_ABCD_NAME; public static MethodHandle WICKRA_ABCD_RESET; public static MethodHandle WICKRA_ABCD_FREE; public static MethodHandle WICKRA_ACCELERATOR_OSCILLATOR_NEW; @@ -1222,6 +1394,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ACCELERATOR_OSCILLATOR_BATCH; public static MethodHandle WICKRA_ACCELERATOR_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_ACCELERATOR_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_ACCELERATOR_OSCILLATOR_NAME; public static MethodHandle WICKRA_ACCELERATOR_OSCILLATOR_RESET; public static MethodHandle WICKRA_ACCELERATOR_OSCILLATOR_FREE; public static MethodHandle WICKRA_AD_OSCILLATOR_NEW; @@ -1229,6 +1402,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_AD_OSCILLATOR_BATCH; public static MethodHandle WICKRA_AD_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_AD_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_AD_OSCILLATOR_NAME; public static MethodHandle WICKRA_AD_OSCILLATOR_RESET; public static MethodHandle WICKRA_AD_OSCILLATOR_FREE; public static MethodHandle WICKRA_ADAPTIVE_CCI_NEW; @@ -1236,6 +1410,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ADAPTIVE_CCI_BATCH; public static MethodHandle WICKRA_ADAPTIVE_CCI_WARMUP_PERIOD; public static MethodHandle WICKRA_ADAPTIVE_CCI_IS_READY; + public static MethodHandle WICKRA_ADAPTIVE_CCI_NAME; public static MethodHandle WICKRA_ADAPTIVE_CCI_RESET; public static MethodHandle WICKRA_ADAPTIVE_CCI_FREE; public static MethodHandle WICKRA_ADL_NEW; @@ -1243,6 +1418,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ADL_BATCH; public static MethodHandle WICKRA_ADL_WARMUP_PERIOD; public static MethodHandle WICKRA_ADL_IS_READY; + public static MethodHandle WICKRA_ADL_NAME; public static MethodHandle WICKRA_ADL_RESET; public static MethodHandle WICKRA_ADL_FREE; public static MethodHandle WICKRA_ADVANCE_BLOCK_NEW; @@ -1250,6 +1426,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ADVANCE_BLOCK_BATCH; public static MethodHandle WICKRA_ADVANCE_BLOCK_WARMUP_PERIOD; public static MethodHandle WICKRA_ADVANCE_BLOCK_IS_READY; + public static MethodHandle WICKRA_ADVANCE_BLOCK_NAME; public static MethodHandle WICKRA_ADVANCE_BLOCK_RESET; public static MethodHandle WICKRA_ADVANCE_BLOCK_FREE; public static MethodHandle WICKRA_ADXR_NEW; @@ -1257,6 +1434,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ADXR_BATCH; public static MethodHandle WICKRA_ADXR_WARMUP_PERIOD; public static MethodHandle WICKRA_ADXR_IS_READY; + public static MethodHandle WICKRA_ADXR_NAME; public static MethodHandle WICKRA_ADXR_RESET; public static MethodHandle WICKRA_ADXR_FREE; public static MethodHandle WICKRA_ANCHORED_VWAP_NEW; @@ -1264,6 +1442,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ANCHORED_VWAP_BATCH; public static MethodHandle WICKRA_ANCHORED_VWAP_WARMUP_PERIOD; public static MethodHandle WICKRA_ANCHORED_VWAP_IS_READY; + public static MethodHandle WICKRA_ANCHORED_VWAP_NAME; public static MethodHandle WICKRA_ANCHORED_VWAP_RESET; public static MethodHandle WICKRA_ANCHORED_VWAP_FREE; public static MethodHandle WICKRA_AROON_OSCILLATOR_NEW; @@ -1271,6 +1450,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_AROON_OSCILLATOR_BATCH; public static MethodHandle WICKRA_AROON_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_AROON_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_AROON_OSCILLATOR_NAME; public static MethodHandle WICKRA_AROON_OSCILLATOR_RESET; public static MethodHandle WICKRA_AROON_OSCILLATOR_FREE; public static MethodHandle WICKRA_ATR_NEW; @@ -1278,6 +1458,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ATR_BATCH; public static MethodHandle WICKRA_ATR_WARMUP_PERIOD; public static MethodHandle WICKRA_ATR_IS_READY; + public static MethodHandle WICKRA_ATR_NAME; public static MethodHandle WICKRA_ATR_RESET; public static MethodHandle WICKRA_ATR_FREE; public static MethodHandle WICKRA_ATR_TRAILING_STOP_NEW; @@ -1285,6 +1466,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ATR_TRAILING_STOP_BATCH; public static MethodHandle WICKRA_ATR_TRAILING_STOP_WARMUP_PERIOD; public static MethodHandle WICKRA_ATR_TRAILING_STOP_IS_READY; + public static MethodHandle WICKRA_ATR_TRAILING_STOP_NAME; public static MethodHandle WICKRA_ATR_TRAILING_STOP_RESET; public static MethodHandle WICKRA_ATR_TRAILING_STOP_FREE; public static MethodHandle WICKRA_AVERAGE_DAILY_RANGE_NEW; @@ -1292,6 +1474,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_AVERAGE_DAILY_RANGE_BATCH; public static MethodHandle WICKRA_AVERAGE_DAILY_RANGE_WARMUP_PERIOD; public static MethodHandle WICKRA_AVERAGE_DAILY_RANGE_IS_READY; + public static MethodHandle WICKRA_AVERAGE_DAILY_RANGE_NAME; public static MethodHandle WICKRA_AVERAGE_DAILY_RANGE_RESET; public static MethodHandle WICKRA_AVERAGE_DAILY_RANGE_FREE; public static MethodHandle WICKRA_AVG_PRICE_NEW; @@ -1299,6 +1482,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_AVG_PRICE_BATCH; public static MethodHandle WICKRA_AVG_PRICE_WARMUP_PERIOD; public static MethodHandle WICKRA_AVG_PRICE_IS_READY; + public static MethodHandle WICKRA_AVG_PRICE_NAME; public static MethodHandle WICKRA_AVG_PRICE_RESET; public static MethodHandle WICKRA_AVG_PRICE_FREE; public static MethodHandle WICKRA_AWESOME_OSCILLATOR_NEW; @@ -1306,6 +1490,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_AWESOME_OSCILLATOR_BATCH; public static MethodHandle WICKRA_AWESOME_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_AWESOME_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_AWESOME_OSCILLATOR_NAME; public static MethodHandle WICKRA_AWESOME_OSCILLATOR_RESET; public static MethodHandle WICKRA_AWESOME_OSCILLATOR_FREE; public static MethodHandle WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_NEW; @@ -1313,6 +1498,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_BATCH; public static MethodHandle WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_WARMUP_PERIOD; public static MethodHandle WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_IS_READY; + public static MethodHandle WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_NAME; public static MethodHandle WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_RESET; public static MethodHandle WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_FREE; public static MethodHandle WICKRA_BALANCE_OF_POWER_NEW; @@ -1320,6 +1506,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BALANCE_OF_POWER_BATCH; public static MethodHandle WICKRA_BALANCE_OF_POWER_WARMUP_PERIOD; public static MethodHandle WICKRA_BALANCE_OF_POWER_IS_READY; + public static MethodHandle WICKRA_BALANCE_OF_POWER_NAME; public static MethodHandle WICKRA_BALANCE_OF_POWER_RESET; public static MethodHandle WICKRA_BALANCE_OF_POWER_FREE; public static MethodHandle WICKRA_BAT_NEW; @@ -1327,6 +1514,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BAT_BATCH; public static MethodHandle WICKRA_BAT_WARMUP_PERIOD; public static MethodHandle WICKRA_BAT_IS_READY; + public static MethodHandle WICKRA_BAT_NAME; public static MethodHandle WICKRA_BAT_RESET; public static MethodHandle WICKRA_BAT_FREE; public static MethodHandle WICKRA_BELT_HOLD_NEW; @@ -1334,6 +1522,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BELT_HOLD_BATCH; public static MethodHandle WICKRA_BELT_HOLD_WARMUP_PERIOD; public static MethodHandle WICKRA_BELT_HOLD_IS_READY; + public static MethodHandle WICKRA_BELT_HOLD_NAME; public static MethodHandle WICKRA_BELT_HOLD_RESET; public static MethodHandle WICKRA_BELT_HOLD_FREE; public static MethodHandle WICKRA_BETTER_VOLUME_NEW; @@ -1341,6 +1530,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BETTER_VOLUME_BATCH; public static MethodHandle WICKRA_BETTER_VOLUME_WARMUP_PERIOD; public static MethodHandle WICKRA_BETTER_VOLUME_IS_READY; + public static MethodHandle WICKRA_BETTER_VOLUME_NAME; public static MethodHandle WICKRA_BETTER_VOLUME_RESET; public static MethodHandle WICKRA_BETTER_VOLUME_FREE; public static MethodHandle WICKRA_BODY_SIZE_PCT_NEW; @@ -1348,6 +1538,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BODY_SIZE_PCT_BATCH; public static MethodHandle WICKRA_BODY_SIZE_PCT_WARMUP_PERIOD; public static MethodHandle WICKRA_BODY_SIZE_PCT_IS_READY; + public static MethodHandle WICKRA_BODY_SIZE_PCT_NAME; public static MethodHandle WICKRA_BODY_SIZE_PCT_RESET; public static MethodHandle WICKRA_BODY_SIZE_PCT_FREE; public static MethodHandle WICKRA_BREAKAWAY_NEW; @@ -1355,6 +1546,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BREAKAWAY_BATCH; public static MethodHandle WICKRA_BREAKAWAY_WARMUP_PERIOD; public static MethodHandle WICKRA_BREAKAWAY_IS_READY; + public static MethodHandle WICKRA_BREAKAWAY_NAME; public static MethodHandle WICKRA_BREAKAWAY_RESET; public static MethodHandle WICKRA_BREAKAWAY_FREE; public static MethodHandle WICKRA_BUTTERFLY_NEW; @@ -1362,6 +1554,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_BUTTERFLY_BATCH; public static MethodHandle WICKRA_BUTTERFLY_WARMUP_PERIOD; public static MethodHandle WICKRA_BUTTERFLY_IS_READY; + public static MethodHandle WICKRA_BUTTERFLY_NAME; public static MethodHandle WICKRA_BUTTERFLY_RESET; public static MethodHandle WICKRA_BUTTERFLY_FREE; public static MethodHandle WICKRA_CCI_NEW; @@ -1369,6 +1562,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CCI_BATCH; public static MethodHandle WICKRA_CCI_WARMUP_PERIOD; public static MethodHandle WICKRA_CCI_IS_READY; + public static MethodHandle WICKRA_CCI_NAME; public static MethodHandle WICKRA_CCI_RESET; public static MethodHandle WICKRA_CCI_FREE; public static MethodHandle WICKRA_CHAIKIN_OSCILLATOR_NEW; @@ -1376,6 +1570,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CHAIKIN_OSCILLATOR_BATCH; public static MethodHandle WICKRA_CHAIKIN_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_CHAIKIN_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_CHAIKIN_OSCILLATOR_NAME; public static MethodHandle WICKRA_CHAIKIN_OSCILLATOR_RESET; public static MethodHandle WICKRA_CHAIKIN_OSCILLATOR_FREE; public static MethodHandle WICKRA_CHAIKIN_VOLATILITY_NEW; @@ -1383,6 +1578,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CHAIKIN_VOLATILITY_BATCH; public static MethodHandle WICKRA_CHAIKIN_VOLATILITY_WARMUP_PERIOD; public static MethodHandle WICKRA_CHAIKIN_VOLATILITY_IS_READY; + public static MethodHandle WICKRA_CHAIKIN_VOLATILITY_NAME; public static MethodHandle WICKRA_CHAIKIN_VOLATILITY_RESET; public static MethodHandle WICKRA_CHAIKIN_VOLATILITY_FREE; public static MethodHandle WICKRA_CHOPPINESS_INDEX_NEW; @@ -1390,6 +1586,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CHOPPINESS_INDEX_BATCH; public static MethodHandle WICKRA_CHOPPINESS_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_CHOPPINESS_INDEX_IS_READY; + public static MethodHandle WICKRA_CHOPPINESS_INDEX_NAME; public static MethodHandle WICKRA_CHOPPINESS_INDEX_RESET; public static MethodHandle WICKRA_CHOPPINESS_INDEX_FREE; public static MethodHandle WICKRA_CLOSE_VS_OPEN_NEW; @@ -1397,6 +1594,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CLOSE_VS_OPEN_BATCH; public static MethodHandle WICKRA_CLOSE_VS_OPEN_WARMUP_PERIOD; public static MethodHandle WICKRA_CLOSE_VS_OPEN_IS_READY; + public static MethodHandle WICKRA_CLOSE_VS_OPEN_NAME; public static MethodHandle WICKRA_CLOSE_VS_OPEN_RESET; public static MethodHandle WICKRA_CLOSE_VS_OPEN_FREE; public static MethodHandle WICKRA_CLOSING_MARUBOZU_NEW; @@ -1404,6 +1602,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CLOSING_MARUBOZU_BATCH; public static MethodHandle WICKRA_CLOSING_MARUBOZU_WARMUP_PERIOD; public static MethodHandle WICKRA_CLOSING_MARUBOZU_IS_READY; + public static MethodHandle WICKRA_CLOSING_MARUBOZU_NAME; public static MethodHandle WICKRA_CLOSING_MARUBOZU_RESET; public static MethodHandle WICKRA_CLOSING_MARUBOZU_FREE; public static MethodHandle WICKRA_CHAIKIN_MONEY_FLOW_NEW; @@ -1411,6 +1610,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CHAIKIN_MONEY_FLOW_BATCH; public static MethodHandle WICKRA_CHAIKIN_MONEY_FLOW_WARMUP_PERIOD; public static MethodHandle WICKRA_CHAIKIN_MONEY_FLOW_IS_READY; + public static MethodHandle WICKRA_CHAIKIN_MONEY_FLOW_NAME; public static MethodHandle WICKRA_CHAIKIN_MONEY_FLOW_RESET; public static MethodHandle WICKRA_CHAIKIN_MONEY_FLOW_FREE; public static MethodHandle WICKRA_CONCEALING_BABY_SWALLOW_NEW; @@ -1418,6 +1618,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CONCEALING_BABY_SWALLOW_BATCH; public static MethodHandle WICKRA_CONCEALING_BABY_SWALLOW_WARMUP_PERIOD; public static MethodHandle WICKRA_CONCEALING_BABY_SWALLOW_IS_READY; + public static MethodHandle WICKRA_CONCEALING_BABY_SWALLOW_NAME; public static MethodHandle WICKRA_CONCEALING_BABY_SWALLOW_RESET; public static MethodHandle WICKRA_CONCEALING_BABY_SWALLOW_FREE; public static MethodHandle WICKRA_COUNTERATTACK_NEW; @@ -1425,6 +1626,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_COUNTERATTACK_BATCH; public static MethodHandle WICKRA_COUNTERATTACK_WARMUP_PERIOD; public static MethodHandle WICKRA_COUNTERATTACK_IS_READY; + public static MethodHandle WICKRA_COUNTERATTACK_NAME; public static MethodHandle WICKRA_COUNTERATTACK_RESET; public static MethodHandle WICKRA_COUNTERATTACK_FREE; public static MethodHandle WICKRA_CRAB_NEW; @@ -1432,6 +1634,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CRAB_BATCH; public static MethodHandle WICKRA_CRAB_WARMUP_PERIOD; public static MethodHandle WICKRA_CRAB_IS_READY; + public static MethodHandle WICKRA_CRAB_NAME; public static MethodHandle WICKRA_CRAB_RESET; public static MethodHandle WICKRA_CRAB_FREE; public static MethodHandle WICKRA_CUP_AND_HANDLE_NEW; @@ -1439,6 +1642,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CUP_AND_HANDLE_BATCH; public static MethodHandle WICKRA_CUP_AND_HANDLE_WARMUP_PERIOD; public static MethodHandle WICKRA_CUP_AND_HANDLE_IS_READY; + public static MethodHandle WICKRA_CUP_AND_HANDLE_NAME; public static MethodHandle WICKRA_CUP_AND_HANDLE_RESET; public static MethodHandle WICKRA_CUP_AND_HANDLE_FREE; public static MethodHandle WICKRA_CYPHER_NEW; @@ -1446,6 +1650,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_CYPHER_BATCH; public static MethodHandle WICKRA_CYPHER_WARMUP_PERIOD; public static MethodHandle WICKRA_CYPHER_IS_READY; + public static MethodHandle WICKRA_CYPHER_NAME; public static MethodHandle WICKRA_CYPHER_RESET; public static MethodHandle WICKRA_CYPHER_FREE; public static MethodHandle WICKRA_DEMAND_INDEX_NEW; @@ -1453,6 +1658,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DEMAND_INDEX_BATCH; public static MethodHandle WICKRA_DEMAND_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_DEMAND_INDEX_IS_READY; + public static MethodHandle WICKRA_DEMAND_INDEX_NAME; public static MethodHandle WICKRA_DEMAND_INDEX_RESET; public static MethodHandle WICKRA_DEMAND_INDEX_FREE; public static MethodHandle WICKRA_DOJI_NEW; @@ -1460,6 +1666,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DOJI_BATCH; public static MethodHandle WICKRA_DOJI_WARMUP_PERIOD; public static MethodHandle WICKRA_DOJI_IS_READY; + public static MethodHandle WICKRA_DOJI_NAME; public static MethodHandle WICKRA_DOJI_RESET; public static MethodHandle WICKRA_DOJI_FREE; public static MethodHandle WICKRA_DOJI_STAR_NEW; @@ -1467,6 +1674,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DOJI_STAR_BATCH; public static MethodHandle WICKRA_DOJI_STAR_WARMUP_PERIOD; public static MethodHandle WICKRA_DOJI_STAR_IS_READY; + public static MethodHandle WICKRA_DOJI_STAR_NAME; public static MethodHandle WICKRA_DOJI_STAR_RESET; public static MethodHandle WICKRA_DOJI_STAR_FREE; public static MethodHandle WICKRA_DOUBLE_TOP_BOTTOM_NEW; @@ -1474,6 +1682,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DOUBLE_TOP_BOTTOM_BATCH; public static MethodHandle WICKRA_DOUBLE_TOP_BOTTOM_WARMUP_PERIOD; public static MethodHandle WICKRA_DOUBLE_TOP_BOTTOM_IS_READY; + public static MethodHandle WICKRA_DOUBLE_TOP_BOTTOM_NAME; public static MethodHandle WICKRA_DOUBLE_TOP_BOTTOM_RESET; public static MethodHandle WICKRA_DOUBLE_TOP_BOTTOM_FREE; public static MethodHandle WICKRA_DOWNSIDE_GAP_THREE_METHODS_NEW; @@ -1481,6 +1690,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DOWNSIDE_GAP_THREE_METHODS_BATCH; public static MethodHandle WICKRA_DOWNSIDE_GAP_THREE_METHODS_WARMUP_PERIOD; public static MethodHandle WICKRA_DOWNSIDE_GAP_THREE_METHODS_IS_READY; + public static MethodHandle WICKRA_DOWNSIDE_GAP_THREE_METHODS_NAME; public static MethodHandle WICKRA_DOWNSIDE_GAP_THREE_METHODS_RESET; public static MethodHandle WICKRA_DOWNSIDE_GAP_THREE_METHODS_FREE; public static MethodHandle WICKRA_DRAGONFLY_DOJI_NEW; @@ -1488,6 +1698,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DRAGONFLY_DOJI_BATCH; public static MethodHandle WICKRA_DRAGONFLY_DOJI_WARMUP_PERIOD; public static MethodHandle WICKRA_DRAGONFLY_DOJI_IS_READY; + public static MethodHandle WICKRA_DRAGONFLY_DOJI_NAME; public static MethodHandle WICKRA_DRAGONFLY_DOJI_RESET; public static MethodHandle WICKRA_DRAGONFLY_DOJI_FREE; public static MethodHandle WICKRA_DUMPLING_TOP_NEW; @@ -1495,6 +1706,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DUMPLING_TOP_BATCH; public static MethodHandle WICKRA_DUMPLING_TOP_WARMUP_PERIOD; public static MethodHandle WICKRA_DUMPLING_TOP_IS_READY; + public static MethodHandle WICKRA_DUMPLING_TOP_NAME; public static MethodHandle WICKRA_DUMPLING_TOP_RESET; public static MethodHandle WICKRA_DUMPLING_TOP_FREE; public static MethodHandle WICKRA_DX_NEW; @@ -1502,6 +1714,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_DX_BATCH; public static MethodHandle WICKRA_DX_WARMUP_PERIOD; public static MethodHandle WICKRA_DX_IS_READY; + public static MethodHandle WICKRA_DX_NAME; public static MethodHandle WICKRA_DX_RESET; public static MethodHandle WICKRA_DX_FREE; public static MethodHandle WICKRA_EASE_OF_MOVEMENT_NEW; @@ -1509,6 +1722,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_EASE_OF_MOVEMENT_BATCH; public static MethodHandle WICKRA_EASE_OF_MOVEMENT_WARMUP_PERIOD; public static MethodHandle WICKRA_EASE_OF_MOVEMENT_IS_READY; + public static MethodHandle WICKRA_EASE_OF_MOVEMENT_NAME; public static MethodHandle WICKRA_EASE_OF_MOVEMENT_RESET; public static MethodHandle WICKRA_EASE_OF_MOVEMENT_FREE; public static MethodHandle WICKRA_ENGULFING_NEW; @@ -1516,6 +1730,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ENGULFING_BATCH; public static MethodHandle WICKRA_ENGULFING_WARMUP_PERIOD; public static MethodHandle WICKRA_ENGULFING_IS_READY; + public static MethodHandle WICKRA_ENGULFING_NAME; public static MethodHandle WICKRA_ENGULFING_RESET; public static MethodHandle WICKRA_ENGULFING_FREE; public static MethodHandle WICKRA_EVENING_DOJI_STAR_NEW; @@ -1523,6 +1738,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_EVENING_DOJI_STAR_BATCH; public static MethodHandle WICKRA_EVENING_DOJI_STAR_WARMUP_PERIOD; public static MethodHandle WICKRA_EVENING_DOJI_STAR_IS_READY; + public static MethodHandle WICKRA_EVENING_DOJI_STAR_NAME; public static MethodHandle WICKRA_EVENING_DOJI_STAR_RESET; public static MethodHandle WICKRA_EVENING_DOJI_STAR_FREE; public static MethodHandle WICKRA_EVWMA_NEW; @@ -1530,6 +1746,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_EVWMA_BATCH; public static MethodHandle WICKRA_EVWMA_WARMUP_PERIOD; public static MethodHandle WICKRA_EVWMA_IS_READY; + public static MethodHandle WICKRA_EVWMA_NAME; public static MethodHandle WICKRA_EVWMA_RESET; public static MethodHandle WICKRA_EVWMA_FREE; public static MethodHandle WICKRA_FALLING_THREE_METHODS_NEW; @@ -1537,6 +1754,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_FALLING_THREE_METHODS_BATCH; public static MethodHandle WICKRA_FALLING_THREE_METHODS_WARMUP_PERIOD; public static MethodHandle WICKRA_FALLING_THREE_METHODS_IS_READY; + public static MethodHandle WICKRA_FALLING_THREE_METHODS_NAME; public static MethodHandle WICKRA_FALLING_THREE_METHODS_RESET; public static MethodHandle WICKRA_FALLING_THREE_METHODS_FREE; public static MethodHandle WICKRA_FLAG_PENNANT_NEW; @@ -1544,6 +1762,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_FLAG_PENNANT_BATCH; public static MethodHandle WICKRA_FLAG_PENNANT_WARMUP_PERIOD; public static MethodHandle WICKRA_FLAG_PENNANT_IS_READY; + public static MethodHandle WICKRA_FLAG_PENNANT_NAME; public static MethodHandle WICKRA_FLAG_PENNANT_RESET; public static MethodHandle WICKRA_FLAG_PENNANT_FREE; public static MethodHandle WICKRA_FORCE_INDEX_NEW; @@ -1551,6 +1770,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_FORCE_INDEX_BATCH; public static MethodHandle WICKRA_FORCE_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_FORCE_INDEX_IS_READY; + public static MethodHandle WICKRA_FORCE_INDEX_NAME; public static MethodHandle WICKRA_FORCE_INDEX_RESET; public static MethodHandle WICKRA_FORCE_INDEX_FREE; public static MethodHandle WICKRA_FRY_PAN_BOTTOM_NEW; @@ -1558,6 +1778,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_FRY_PAN_BOTTOM_BATCH; public static MethodHandle WICKRA_FRY_PAN_BOTTOM_WARMUP_PERIOD; public static MethodHandle WICKRA_FRY_PAN_BOTTOM_IS_READY; + public static MethodHandle WICKRA_FRY_PAN_BOTTOM_NAME; public static MethodHandle WICKRA_FRY_PAN_BOTTOM_RESET; public static MethodHandle WICKRA_FRY_PAN_BOTTOM_FREE; public static MethodHandle WICKRA_GAP_SIDE_BY_SIDE_WHITE_NEW; @@ -1565,6 +1786,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_GAP_SIDE_BY_SIDE_WHITE_BATCH; public static MethodHandle WICKRA_GAP_SIDE_BY_SIDE_WHITE_WARMUP_PERIOD; public static MethodHandle WICKRA_GAP_SIDE_BY_SIDE_WHITE_IS_READY; + public static MethodHandle WICKRA_GAP_SIDE_BY_SIDE_WHITE_NAME; public static MethodHandle WICKRA_GAP_SIDE_BY_SIDE_WHITE_RESET; public static MethodHandle WICKRA_GAP_SIDE_BY_SIDE_WHITE_FREE; public static MethodHandle WICKRA_GARMAN_KLASS_VOLATILITY_NEW; @@ -1572,6 +1794,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_GARMAN_KLASS_VOLATILITY_BATCH; public static MethodHandle WICKRA_GARMAN_KLASS_VOLATILITY_WARMUP_PERIOD; public static MethodHandle WICKRA_GARMAN_KLASS_VOLATILITY_IS_READY; + public static MethodHandle WICKRA_GARMAN_KLASS_VOLATILITY_NAME; public static MethodHandle WICKRA_GARMAN_KLASS_VOLATILITY_RESET; public static MethodHandle WICKRA_GARMAN_KLASS_VOLATILITY_FREE; public static MethodHandle WICKRA_GARTLEY_NEW; @@ -1579,6 +1802,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_GARTLEY_BATCH; public static MethodHandle WICKRA_GARTLEY_WARMUP_PERIOD; public static MethodHandle WICKRA_GARTLEY_IS_READY; + public static MethodHandle WICKRA_GARTLEY_NAME; public static MethodHandle WICKRA_GARTLEY_RESET; public static MethodHandle WICKRA_GARTLEY_FREE; public static MethodHandle WICKRA_GRAVESTONE_DOJI_NEW; @@ -1586,6 +1810,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_GRAVESTONE_DOJI_BATCH; public static MethodHandle WICKRA_GRAVESTONE_DOJI_WARMUP_PERIOD; public static MethodHandle WICKRA_GRAVESTONE_DOJI_IS_READY; + public static MethodHandle WICKRA_GRAVESTONE_DOJI_NAME; public static MethodHandle WICKRA_GRAVESTONE_DOJI_RESET; public static MethodHandle WICKRA_GRAVESTONE_DOJI_FREE; public static MethodHandle WICKRA_HAMMER_NEW; @@ -1593,6 +1818,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HAMMER_BATCH; public static MethodHandle WICKRA_HAMMER_WARMUP_PERIOD; public static MethodHandle WICKRA_HAMMER_IS_READY; + public static MethodHandle WICKRA_HAMMER_NAME; public static MethodHandle WICKRA_HAMMER_RESET; public static MethodHandle WICKRA_HAMMER_FREE; public static MethodHandle WICKRA_HANGING_MAN_NEW; @@ -1600,6 +1826,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HANGING_MAN_BATCH; public static MethodHandle WICKRA_HANGING_MAN_WARMUP_PERIOD; public static MethodHandle WICKRA_HANGING_MAN_IS_READY; + public static MethodHandle WICKRA_HANGING_MAN_NAME; public static MethodHandle WICKRA_HANGING_MAN_RESET; public static MethodHandle WICKRA_HANGING_MAN_FREE; public static MethodHandle WICKRA_HARAMI_NEW; @@ -1607,6 +1834,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HARAMI_BATCH; public static MethodHandle WICKRA_HARAMI_WARMUP_PERIOD; public static MethodHandle WICKRA_HARAMI_IS_READY; + public static MethodHandle WICKRA_HARAMI_NAME; public static MethodHandle WICKRA_HARAMI_RESET; public static MethodHandle WICKRA_HARAMI_FREE; public static MethodHandle WICKRA_HARAMI_CROSS_NEW; @@ -1614,6 +1842,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HARAMI_CROSS_BATCH; public static MethodHandle WICKRA_HARAMI_CROSS_WARMUP_PERIOD; public static MethodHandle WICKRA_HARAMI_CROSS_IS_READY; + public static MethodHandle WICKRA_HARAMI_CROSS_NAME; public static MethodHandle WICKRA_HARAMI_CROSS_RESET; public static MethodHandle WICKRA_HARAMI_CROSS_FREE; public static MethodHandle WICKRA_HEAD_AND_SHOULDERS_NEW; @@ -1621,6 +1850,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HEAD_AND_SHOULDERS_BATCH; public static MethodHandle WICKRA_HEAD_AND_SHOULDERS_WARMUP_PERIOD; public static MethodHandle WICKRA_HEAD_AND_SHOULDERS_IS_READY; + public static MethodHandle WICKRA_HEAD_AND_SHOULDERS_NAME; public static MethodHandle WICKRA_HEAD_AND_SHOULDERS_RESET; public static MethodHandle WICKRA_HEAD_AND_SHOULDERS_FREE; public static MethodHandle WICKRA_HEIKIN_ASHI_OSCILLATOR_NEW; @@ -1628,6 +1858,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HEIKIN_ASHI_OSCILLATOR_BATCH; public static MethodHandle WICKRA_HEIKIN_ASHI_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_HEIKIN_ASHI_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_HEIKIN_ASHI_OSCILLATOR_NAME; public static MethodHandle WICKRA_HEIKIN_ASHI_OSCILLATOR_RESET; public static MethodHandle WICKRA_HEIKIN_ASHI_OSCILLATOR_FREE; public static MethodHandle WICKRA_HIGH_LOW_RANGE_NEW; @@ -1635,6 +1866,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HIGH_LOW_RANGE_BATCH; public static MethodHandle WICKRA_HIGH_LOW_RANGE_WARMUP_PERIOD; public static MethodHandle WICKRA_HIGH_LOW_RANGE_IS_READY; + public static MethodHandle WICKRA_HIGH_LOW_RANGE_NAME; public static MethodHandle WICKRA_HIGH_LOW_RANGE_RESET; public static MethodHandle WICKRA_HIGH_LOW_RANGE_FREE; public static MethodHandle WICKRA_HIGH_WAVE_NEW; @@ -1642,6 +1874,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HIGH_WAVE_BATCH; public static MethodHandle WICKRA_HIGH_WAVE_WARMUP_PERIOD; public static MethodHandle WICKRA_HIGH_WAVE_IS_READY; + public static MethodHandle WICKRA_HIGH_WAVE_NAME; public static MethodHandle WICKRA_HIGH_WAVE_RESET; public static MethodHandle WICKRA_HIGH_WAVE_FREE; public static MethodHandle WICKRA_HIKKAKE_NEW; @@ -1649,6 +1882,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HIKKAKE_BATCH; public static MethodHandle WICKRA_HIKKAKE_WARMUP_PERIOD; public static MethodHandle WICKRA_HIKKAKE_IS_READY; + public static MethodHandle WICKRA_HIKKAKE_NAME; public static MethodHandle WICKRA_HIKKAKE_RESET; public static MethodHandle WICKRA_HIKKAKE_FREE; public static MethodHandle WICKRA_HIKKAKE_MODIFIED_NEW; @@ -1656,6 +1890,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HIKKAKE_MODIFIED_BATCH; public static MethodHandle WICKRA_HIKKAKE_MODIFIED_WARMUP_PERIOD; public static MethodHandle WICKRA_HIKKAKE_MODIFIED_IS_READY; + public static MethodHandle WICKRA_HIKKAKE_MODIFIED_NAME; public static MethodHandle WICKRA_HIKKAKE_MODIFIED_RESET; public static MethodHandle WICKRA_HIKKAKE_MODIFIED_FREE; public static MethodHandle WICKRA_HI_LO_ACTIVATOR_NEW; @@ -1663,6 +1898,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HI_LO_ACTIVATOR_BATCH; public static MethodHandle WICKRA_HI_LO_ACTIVATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_HI_LO_ACTIVATOR_IS_READY; + public static MethodHandle WICKRA_HI_LO_ACTIVATOR_NAME; public static MethodHandle WICKRA_HI_LO_ACTIVATOR_RESET; public static MethodHandle WICKRA_HI_LO_ACTIVATOR_FREE; public static MethodHandle WICKRA_HOMING_PIGEON_NEW; @@ -1670,6 +1906,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_HOMING_PIGEON_BATCH; public static MethodHandle WICKRA_HOMING_PIGEON_WARMUP_PERIOD; public static MethodHandle WICKRA_HOMING_PIGEON_IS_READY; + public static MethodHandle WICKRA_HOMING_PIGEON_NAME; public static MethodHandle WICKRA_HOMING_PIGEON_RESET; public static MethodHandle WICKRA_HOMING_PIGEON_FREE; public static MethodHandle WICKRA_IDENTICAL_THREE_CROWS_NEW; @@ -1677,6 +1914,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_IDENTICAL_THREE_CROWS_BATCH; public static MethodHandle WICKRA_IDENTICAL_THREE_CROWS_WARMUP_PERIOD; public static MethodHandle WICKRA_IDENTICAL_THREE_CROWS_IS_READY; + public static MethodHandle WICKRA_IDENTICAL_THREE_CROWS_NAME; public static MethodHandle WICKRA_IDENTICAL_THREE_CROWS_RESET; public static MethodHandle WICKRA_IDENTICAL_THREE_CROWS_FREE; public static MethodHandle WICKRA_IN_NECK_NEW; @@ -1684,6 +1922,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_IN_NECK_BATCH; public static MethodHandle WICKRA_IN_NECK_WARMUP_PERIOD; public static MethodHandle WICKRA_IN_NECK_IS_READY; + public static MethodHandle WICKRA_IN_NECK_NAME; public static MethodHandle WICKRA_IN_NECK_RESET; public static MethodHandle WICKRA_IN_NECK_FREE; public static MethodHandle WICKRA_INERTIA_NEW; @@ -1691,6 +1930,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_INERTIA_BATCH; public static MethodHandle WICKRA_INERTIA_WARMUP_PERIOD; public static MethodHandle WICKRA_INERTIA_IS_READY; + public static MethodHandle WICKRA_INERTIA_NAME; public static MethodHandle WICKRA_INERTIA_RESET; public static MethodHandle WICKRA_INERTIA_FREE; public static MethodHandle WICKRA_INTRADAY_INTENSITY_NEW; @@ -1698,6 +1938,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_INTRADAY_INTENSITY_BATCH; public static MethodHandle WICKRA_INTRADAY_INTENSITY_WARMUP_PERIOD; public static MethodHandle WICKRA_INTRADAY_INTENSITY_IS_READY; + public static MethodHandle WICKRA_INTRADAY_INTENSITY_NAME; public static MethodHandle WICKRA_INTRADAY_INTENSITY_RESET; public static MethodHandle WICKRA_INTRADAY_INTENSITY_FREE; public static MethodHandle WICKRA_INTRADAY_MOMENTUM_INDEX_NEW; @@ -1705,6 +1946,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_INTRADAY_MOMENTUM_INDEX_BATCH; public static MethodHandle WICKRA_INTRADAY_MOMENTUM_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_INTRADAY_MOMENTUM_INDEX_IS_READY; + public static MethodHandle WICKRA_INTRADAY_MOMENTUM_INDEX_NAME; public static MethodHandle WICKRA_INTRADAY_MOMENTUM_INDEX_RESET; public static MethodHandle WICKRA_INTRADAY_MOMENTUM_INDEX_FREE; public static MethodHandle WICKRA_INVERTED_HAMMER_NEW; @@ -1712,6 +1954,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_INVERTED_HAMMER_BATCH; public static MethodHandle WICKRA_INVERTED_HAMMER_WARMUP_PERIOD; public static MethodHandle WICKRA_INVERTED_HAMMER_IS_READY; + public static MethodHandle WICKRA_INVERTED_HAMMER_NAME; public static MethodHandle WICKRA_INVERTED_HAMMER_RESET; public static MethodHandle WICKRA_INVERTED_HAMMER_FREE; public static MethodHandle WICKRA_KICKING_NEW; @@ -1719,6 +1962,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_KICKING_BATCH; public static MethodHandle WICKRA_KICKING_WARMUP_PERIOD; public static MethodHandle WICKRA_KICKING_IS_READY; + public static MethodHandle WICKRA_KICKING_NAME; public static MethodHandle WICKRA_KICKING_RESET; public static MethodHandle WICKRA_KICKING_FREE; public static MethodHandle WICKRA_KICKING_BY_LENGTH_NEW; @@ -1726,6 +1970,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_KICKING_BY_LENGTH_BATCH; public static MethodHandle WICKRA_KICKING_BY_LENGTH_WARMUP_PERIOD; public static MethodHandle WICKRA_KICKING_BY_LENGTH_IS_READY; + public static MethodHandle WICKRA_KICKING_BY_LENGTH_NAME; public static MethodHandle WICKRA_KICKING_BY_LENGTH_RESET; public static MethodHandle WICKRA_KICKING_BY_LENGTH_FREE; public static MethodHandle WICKRA_KVO_NEW; @@ -1733,6 +1978,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_KVO_BATCH; public static MethodHandle WICKRA_KVO_WARMUP_PERIOD; public static MethodHandle WICKRA_KVO_IS_READY; + public static MethodHandle WICKRA_KVO_NAME; public static MethodHandle WICKRA_KVO_RESET; public static MethodHandle WICKRA_KVO_FREE; public static MethodHandle WICKRA_LADDER_BOTTOM_NEW; @@ -1740,6 +1986,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_LADDER_BOTTOM_BATCH; public static MethodHandle WICKRA_LADDER_BOTTOM_WARMUP_PERIOD; public static MethodHandle WICKRA_LADDER_BOTTOM_IS_READY; + public static MethodHandle WICKRA_LADDER_BOTTOM_NAME; public static MethodHandle WICKRA_LADDER_BOTTOM_RESET; public static MethodHandle WICKRA_LADDER_BOTTOM_FREE; public static MethodHandle WICKRA_LONG_LEGGED_DOJI_NEW; @@ -1747,6 +1994,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_LONG_LEGGED_DOJI_BATCH; public static MethodHandle WICKRA_LONG_LEGGED_DOJI_WARMUP_PERIOD; public static MethodHandle WICKRA_LONG_LEGGED_DOJI_IS_READY; + public static MethodHandle WICKRA_LONG_LEGGED_DOJI_NAME; public static MethodHandle WICKRA_LONG_LEGGED_DOJI_RESET; public static MethodHandle WICKRA_LONG_LEGGED_DOJI_FREE; public static MethodHandle WICKRA_LONG_LINE_NEW; @@ -1754,6 +2002,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_LONG_LINE_BATCH; public static MethodHandle WICKRA_LONG_LINE_WARMUP_PERIOD; public static MethodHandle WICKRA_LONG_LINE_IS_READY; + public static MethodHandle WICKRA_LONG_LINE_NAME; public static MethodHandle WICKRA_LONG_LINE_RESET; public static MethodHandle WICKRA_LONG_LINE_FREE; public static MethodHandle WICKRA_MARKET_FACILITATION_INDEX_NEW; @@ -1761,6 +2010,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MARKET_FACILITATION_INDEX_BATCH; public static MethodHandle WICKRA_MARKET_FACILITATION_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_MARKET_FACILITATION_INDEX_IS_READY; + public static MethodHandle WICKRA_MARKET_FACILITATION_INDEX_NAME; public static MethodHandle WICKRA_MARKET_FACILITATION_INDEX_RESET; public static MethodHandle WICKRA_MARKET_FACILITATION_INDEX_FREE; public static MethodHandle WICKRA_MARUBOZU_NEW; @@ -1768,6 +2018,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MARUBOZU_BATCH; public static MethodHandle WICKRA_MARUBOZU_WARMUP_PERIOD; public static MethodHandle WICKRA_MARUBOZU_IS_READY; + public static MethodHandle WICKRA_MARUBOZU_NAME; public static MethodHandle WICKRA_MARUBOZU_RESET; public static MethodHandle WICKRA_MARUBOZU_FREE; public static MethodHandle WICKRA_MASS_INDEX_NEW; @@ -1775,6 +2026,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MASS_INDEX_BATCH; public static MethodHandle WICKRA_MASS_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_MASS_INDEX_IS_READY; + public static MethodHandle WICKRA_MASS_INDEX_NAME; public static MethodHandle WICKRA_MASS_INDEX_RESET; public static MethodHandle WICKRA_MASS_INDEX_FREE; public static MethodHandle WICKRA_MAT_HOLD_NEW; @@ -1782,6 +2034,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MAT_HOLD_BATCH; public static MethodHandle WICKRA_MAT_HOLD_WARMUP_PERIOD; public static MethodHandle WICKRA_MAT_HOLD_IS_READY; + public static MethodHandle WICKRA_MAT_HOLD_NAME; public static MethodHandle WICKRA_MAT_HOLD_RESET; public static MethodHandle WICKRA_MAT_HOLD_FREE; public static MethodHandle WICKRA_MATCHING_LOW_NEW; @@ -1789,6 +2042,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MATCHING_LOW_BATCH; public static MethodHandle WICKRA_MATCHING_LOW_WARMUP_PERIOD; public static MethodHandle WICKRA_MATCHING_LOW_IS_READY; + public static MethodHandle WICKRA_MATCHING_LOW_NAME; public static MethodHandle WICKRA_MATCHING_LOW_RESET; public static MethodHandle WICKRA_MATCHING_LOW_FREE; public static MethodHandle WICKRA_MEDIAN_PRICE_NEW; @@ -1796,6 +2050,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MEDIAN_PRICE_BATCH; public static MethodHandle WICKRA_MEDIAN_PRICE_WARMUP_PERIOD; public static MethodHandle WICKRA_MEDIAN_PRICE_IS_READY; + public static MethodHandle WICKRA_MEDIAN_PRICE_NAME; public static MethodHandle WICKRA_MEDIAN_PRICE_RESET; public static MethodHandle WICKRA_MEDIAN_PRICE_FREE; public static MethodHandle WICKRA_MFI_NEW; @@ -1803,6 +2058,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MFI_BATCH; public static MethodHandle WICKRA_MFI_WARMUP_PERIOD; public static MethodHandle WICKRA_MFI_IS_READY; + public static MethodHandle WICKRA_MFI_NAME; public static MethodHandle WICKRA_MFI_RESET; public static MethodHandle WICKRA_MFI_FREE; public static MethodHandle WICKRA_MID_PRICE_NEW; @@ -1810,6 +2066,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MID_PRICE_BATCH; public static MethodHandle WICKRA_MID_PRICE_WARMUP_PERIOD; public static MethodHandle WICKRA_MID_PRICE_IS_READY; + public static MethodHandle WICKRA_MID_PRICE_NAME; public static MethodHandle WICKRA_MID_PRICE_RESET; public static MethodHandle WICKRA_MID_PRICE_FREE; public static MethodHandle WICKRA_MINUS_DI_NEW; @@ -1817,6 +2074,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MINUS_DI_BATCH; public static MethodHandle WICKRA_MINUS_DI_WARMUP_PERIOD; public static MethodHandle WICKRA_MINUS_DI_IS_READY; + public static MethodHandle WICKRA_MINUS_DI_NAME; public static MethodHandle WICKRA_MINUS_DI_RESET; public static MethodHandle WICKRA_MINUS_DI_FREE; public static MethodHandle WICKRA_MINUS_DM_NEW; @@ -1824,6 +2082,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MINUS_DM_BATCH; public static MethodHandle WICKRA_MINUS_DM_WARMUP_PERIOD; public static MethodHandle WICKRA_MINUS_DM_IS_READY; + public static MethodHandle WICKRA_MINUS_DM_NAME; public static MethodHandle WICKRA_MINUS_DM_RESET; public static MethodHandle WICKRA_MINUS_DM_FREE; public static MethodHandle WICKRA_MORNING_DOJI_STAR_NEW; @@ -1831,6 +2090,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MORNING_DOJI_STAR_BATCH; public static MethodHandle WICKRA_MORNING_DOJI_STAR_WARMUP_PERIOD; public static MethodHandle WICKRA_MORNING_DOJI_STAR_IS_READY; + public static MethodHandle WICKRA_MORNING_DOJI_STAR_NAME; public static MethodHandle WICKRA_MORNING_DOJI_STAR_RESET; public static MethodHandle WICKRA_MORNING_DOJI_STAR_FREE; public static MethodHandle WICKRA_MORNING_EVENING_STAR_NEW; @@ -1838,6 +2098,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_MORNING_EVENING_STAR_BATCH; public static MethodHandle WICKRA_MORNING_EVENING_STAR_WARMUP_PERIOD; public static MethodHandle WICKRA_MORNING_EVENING_STAR_IS_READY; + public static MethodHandle WICKRA_MORNING_EVENING_STAR_NAME; public static MethodHandle WICKRA_MORNING_EVENING_STAR_RESET; public static MethodHandle WICKRA_MORNING_EVENING_STAR_FREE; public static MethodHandle WICKRA_NAKED_POC_NEW; @@ -1845,6 +2106,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_NAKED_POC_BATCH; public static MethodHandle WICKRA_NAKED_POC_WARMUP_PERIOD; public static MethodHandle WICKRA_NAKED_POC_IS_READY; + public static MethodHandle WICKRA_NAKED_POC_NAME; public static MethodHandle WICKRA_NAKED_POC_RESET; public static MethodHandle WICKRA_NAKED_POC_FREE; public static MethodHandle WICKRA_NATR_NEW; @@ -1852,6 +2114,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_NATR_BATCH; public static MethodHandle WICKRA_NATR_WARMUP_PERIOD; public static MethodHandle WICKRA_NATR_IS_READY; + public static MethodHandle WICKRA_NATR_NAME; public static MethodHandle WICKRA_NATR_RESET; public static MethodHandle WICKRA_NATR_FREE; public static MethodHandle WICKRA_NEW_PRICE_LINES_NEW; @@ -1859,6 +2122,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_NEW_PRICE_LINES_BATCH; public static MethodHandle WICKRA_NEW_PRICE_LINES_WARMUP_PERIOD; public static MethodHandle WICKRA_NEW_PRICE_LINES_IS_READY; + public static MethodHandle WICKRA_NEW_PRICE_LINES_NAME; public static MethodHandle WICKRA_NEW_PRICE_LINES_RESET; public static MethodHandle WICKRA_NEW_PRICE_LINES_FREE; public static MethodHandle WICKRA_NVI_NEW; @@ -1866,6 +2130,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_NVI_BATCH; public static MethodHandle WICKRA_NVI_WARMUP_PERIOD; public static MethodHandle WICKRA_NVI_IS_READY; + public static MethodHandle WICKRA_NVI_NAME; public static MethodHandle WICKRA_NVI_RESET; public static MethodHandle WICKRA_NVI_FREE; public static MethodHandle WICKRA_OBV_NEW; @@ -1873,6 +2138,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_OBV_BATCH; public static MethodHandle WICKRA_OBV_WARMUP_PERIOD; public static MethodHandle WICKRA_OBV_IS_READY; + public static MethodHandle WICKRA_OBV_NAME; public static MethodHandle WICKRA_OBV_RESET; public static MethodHandle WICKRA_OBV_FREE; public static MethodHandle WICKRA_ON_NECK_NEW; @@ -1880,6 +2146,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ON_NECK_BATCH; public static MethodHandle WICKRA_ON_NECK_WARMUP_PERIOD; public static MethodHandle WICKRA_ON_NECK_IS_READY; + public static MethodHandle WICKRA_ON_NECK_NAME; public static MethodHandle WICKRA_ON_NECK_RESET; public static MethodHandle WICKRA_ON_NECK_FREE; public static MethodHandle WICKRA_OPENING_MARUBOZU_NEW; @@ -1887,6 +2154,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_OPENING_MARUBOZU_BATCH; public static MethodHandle WICKRA_OPENING_MARUBOZU_WARMUP_PERIOD; public static MethodHandle WICKRA_OPENING_MARUBOZU_IS_READY; + public static MethodHandle WICKRA_OPENING_MARUBOZU_NAME; public static MethodHandle WICKRA_OPENING_MARUBOZU_RESET; public static MethodHandle WICKRA_OPENING_MARUBOZU_FREE; public static MethodHandle WICKRA_OVERNIGHT_GAP_NEW; @@ -1894,6 +2162,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_OVERNIGHT_GAP_BATCH; public static MethodHandle WICKRA_OVERNIGHT_GAP_WARMUP_PERIOD; public static MethodHandle WICKRA_OVERNIGHT_GAP_IS_READY; + public static MethodHandle WICKRA_OVERNIGHT_GAP_NAME; public static MethodHandle WICKRA_OVERNIGHT_GAP_RESET; public static MethodHandle WICKRA_OVERNIGHT_GAP_FREE; public static MethodHandle WICKRA_PARKINSON_VOLATILITY_NEW; @@ -1901,6 +2170,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PARKINSON_VOLATILITY_BATCH; public static MethodHandle WICKRA_PARKINSON_VOLATILITY_WARMUP_PERIOD; public static MethodHandle WICKRA_PARKINSON_VOLATILITY_IS_READY; + public static MethodHandle WICKRA_PARKINSON_VOLATILITY_NAME; public static MethodHandle WICKRA_PARKINSON_VOLATILITY_RESET; public static MethodHandle WICKRA_PARKINSON_VOLATILITY_FREE; public static MethodHandle WICKRA_PGO_NEW; @@ -1908,6 +2178,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PGO_BATCH; public static MethodHandle WICKRA_PGO_WARMUP_PERIOD; public static MethodHandle WICKRA_PGO_IS_READY; + public static MethodHandle WICKRA_PGO_NAME; public static MethodHandle WICKRA_PGO_RESET; public static MethodHandle WICKRA_PGO_FREE; public static MethodHandle WICKRA_PIERCING_DARK_CLOUD_NEW; @@ -1915,6 +2186,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PIERCING_DARK_CLOUD_BATCH; public static MethodHandle WICKRA_PIERCING_DARK_CLOUD_WARMUP_PERIOD; public static MethodHandle WICKRA_PIERCING_DARK_CLOUD_IS_READY; + public static MethodHandle WICKRA_PIERCING_DARK_CLOUD_NAME; public static MethodHandle WICKRA_PIERCING_DARK_CLOUD_RESET; public static MethodHandle WICKRA_PIERCING_DARK_CLOUD_FREE; public static MethodHandle WICKRA_PIVOT_REVERSAL_NEW; @@ -1922,6 +2194,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PIVOT_REVERSAL_BATCH; public static MethodHandle WICKRA_PIVOT_REVERSAL_WARMUP_PERIOD; public static MethodHandle WICKRA_PIVOT_REVERSAL_IS_READY; + public static MethodHandle WICKRA_PIVOT_REVERSAL_NAME; public static MethodHandle WICKRA_PIVOT_REVERSAL_RESET; public static MethodHandle WICKRA_PIVOT_REVERSAL_FREE; public static MethodHandle WICKRA_PLUS_DI_NEW; @@ -1929,6 +2202,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PLUS_DI_BATCH; public static MethodHandle WICKRA_PLUS_DI_WARMUP_PERIOD; public static MethodHandle WICKRA_PLUS_DI_IS_READY; + public static MethodHandle WICKRA_PLUS_DI_NAME; public static MethodHandle WICKRA_PLUS_DI_RESET; public static MethodHandle WICKRA_PLUS_DI_FREE; public static MethodHandle WICKRA_PLUS_DM_NEW; @@ -1936,6 +2210,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PLUS_DM_BATCH; public static MethodHandle WICKRA_PLUS_DM_WARMUP_PERIOD; public static MethodHandle WICKRA_PLUS_DM_IS_READY; + public static MethodHandle WICKRA_PLUS_DM_NAME; public static MethodHandle WICKRA_PLUS_DM_RESET; public static MethodHandle WICKRA_PLUS_DM_FREE; public static MethodHandle WICKRA_PROFILE_SHAPE_NEW; @@ -1943,6 +2218,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PROFILE_SHAPE_BATCH; public static MethodHandle WICKRA_PROFILE_SHAPE_WARMUP_PERIOD; public static MethodHandle WICKRA_PROFILE_SHAPE_IS_READY; + public static MethodHandle WICKRA_PROFILE_SHAPE_NAME; public static MethodHandle WICKRA_PROFILE_SHAPE_RESET; public static MethodHandle WICKRA_PROFILE_SHAPE_FREE; public static MethodHandle WICKRA_PROJECTION_OSCILLATOR_NEW; @@ -1950,6 +2226,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PROJECTION_OSCILLATOR_BATCH; public static MethodHandle WICKRA_PROJECTION_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_PROJECTION_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_PROJECTION_OSCILLATOR_NAME; public static MethodHandle WICKRA_PROJECTION_OSCILLATOR_RESET; public static MethodHandle WICKRA_PROJECTION_OSCILLATOR_FREE; public static MethodHandle WICKRA_PSAR_NEW; @@ -1957,6 +2234,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PSAR_BATCH; public static MethodHandle WICKRA_PSAR_WARMUP_PERIOD; public static MethodHandle WICKRA_PSAR_IS_READY; + public static MethodHandle WICKRA_PSAR_NAME; public static MethodHandle WICKRA_PSAR_RESET; public static MethodHandle WICKRA_PSAR_FREE; public static MethodHandle WICKRA_PVI_NEW; @@ -1964,6 +2242,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_PVI_BATCH; public static MethodHandle WICKRA_PVI_WARMUP_PERIOD; public static MethodHandle WICKRA_PVI_IS_READY; + public static MethodHandle WICKRA_PVI_NAME; public static MethodHandle WICKRA_PVI_RESET; public static MethodHandle WICKRA_PVI_FREE; public static MethodHandle WICKRA_QSTICK_NEW; @@ -1971,6 +2250,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_QSTICK_BATCH; public static MethodHandle WICKRA_QSTICK_WARMUP_PERIOD; public static MethodHandle WICKRA_QSTICK_IS_READY; + public static MethodHandle WICKRA_QSTICK_NAME; public static MethodHandle WICKRA_QSTICK_RESET; public static MethodHandle WICKRA_QSTICK_FREE; public static MethodHandle WICKRA_RECTANGLE_RANGE_NEW; @@ -1978,6 +2258,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_RECTANGLE_RANGE_BATCH; public static MethodHandle WICKRA_RECTANGLE_RANGE_WARMUP_PERIOD; public static MethodHandle WICKRA_RECTANGLE_RANGE_IS_READY; + public static MethodHandle WICKRA_RECTANGLE_RANGE_NAME; public static MethodHandle WICKRA_RECTANGLE_RANGE_RESET; public static MethodHandle WICKRA_RECTANGLE_RANGE_FREE; public static MethodHandle WICKRA_RICKSHAW_MAN_NEW; @@ -1985,6 +2266,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_RICKSHAW_MAN_BATCH; public static MethodHandle WICKRA_RICKSHAW_MAN_WARMUP_PERIOD; public static MethodHandle WICKRA_RICKSHAW_MAN_IS_READY; + public static MethodHandle WICKRA_RICKSHAW_MAN_NAME; public static MethodHandle WICKRA_RICKSHAW_MAN_RESET; public static MethodHandle WICKRA_RICKSHAW_MAN_FREE; public static MethodHandle WICKRA_RISING_THREE_METHODS_NEW; @@ -1992,6 +2274,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_RISING_THREE_METHODS_BATCH; public static MethodHandle WICKRA_RISING_THREE_METHODS_WARMUP_PERIOD; public static MethodHandle WICKRA_RISING_THREE_METHODS_IS_READY; + public static MethodHandle WICKRA_RISING_THREE_METHODS_NAME; public static MethodHandle WICKRA_RISING_THREE_METHODS_RESET; public static MethodHandle WICKRA_RISING_THREE_METHODS_FREE; public static MethodHandle WICKRA_ROGERS_SATCHELL_VOLATILITY_NEW; @@ -1999,6 +2282,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROGERS_SATCHELL_VOLATILITY_BATCH; public static MethodHandle WICKRA_ROGERS_SATCHELL_VOLATILITY_WARMUP_PERIOD; public static MethodHandle WICKRA_ROGERS_SATCHELL_VOLATILITY_IS_READY; + public static MethodHandle WICKRA_ROGERS_SATCHELL_VOLATILITY_NAME; public static MethodHandle WICKRA_ROGERS_SATCHELL_VOLATILITY_RESET; public static MethodHandle WICKRA_ROGERS_SATCHELL_VOLATILITY_FREE; public static MethodHandle WICKRA_RVI_NEW; @@ -2006,6 +2290,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_RVI_BATCH; public static MethodHandle WICKRA_RVI_WARMUP_PERIOD; public static MethodHandle WICKRA_RVI_IS_READY; + public static MethodHandle WICKRA_RVI_NAME; public static MethodHandle WICKRA_RVI_RESET; public static MethodHandle WICKRA_RVI_FREE; public static MethodHandle WICKRA_SAR_EXT_NEW; @@ -2013,6 +2298,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SAR_EXT_BATCH; public static MethodHandle WICKRA_SAR_EXT_WARMUP_PERIOD; public static MethodHandle WICKRA_SAR_EXT_IS_READY; + public static MethodHandle WICKRA_SAR_EXT_NAME; public static MethodHandle WICKRA_SAR_EXT_RESET; public static MethodHandle WICKRA_SAR_EXT_FREE; public static MethodHandle WICKRA_SEASONAL_Z_SCORE_NEW; @@ -2020,6 +2306,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SEASONAL_Z_SCORE_BATCH; public static MethodHandle WICKRA_SEASONAL_Z_SCORE_WARMUP_PERIOD; public static MethodHandle WICKRA_SEASONAL_Z_SCORE_IS_READY; + public static MethodHandle WICKRA_SEASONAL_Z_SCORE_NAME; public static MethodHandle WICKRA_SEASONAL_Z_SCORE_RESET; public static MethodHandle WICKRA_SEASONAL_Z_SCORE_FREE; public static MethodHandle WICKRA_SEPARATING_LINES_NEW; @@ -2027,6 +2314,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SEPARATING_LINES_BATCH; public static MethodHandle WICKRA_SEPARATING_LINES_WARMUP_PERIOD; public static MethodHandle WICKRA_SEPARATING_LINES_IS_READY; + public static MethodHandle WICKRA_SEPARATING_LINES_NAME; public static MethodHandle WICKRA_SEPARATING_LINES_RESET; public static MethodHandle WICKRA_SEPARATING_LINES_FREE; public static MethodHandle WICKRA_SESSION_VWAP_NEW; @@ -2034,6 +2322,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SESSION_VWAP_BATCH; public static MethodHandle WICKRA_SESSION_VWAP_WARMUP_PERIOD; public static MethodHandle WICKRA_SESSION_VWAP_IS_READY; + public static MethodHandle WICKRA_SESSION_VWAP_NAME; public static MethodHandle WICKRA_SESSION_VWAP_RESET; public static MethodHandle WICKRA_SESSION_VWAP_FREE; public static MethodHandle WICKRA_SHARK_NEW; @@ -2041,6 +2330,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SHARK_BATCH; public static MethodHandle WICKRA_SHARK_WARMUP_PERIOD; public static MethodHandle WICKRA_SHARK_IS_READY; + public static MethodHandle WICKRA_SHARK_NAME; public static MethodHandle WICKRA_SHARK_RESET; public static MethodHandle WICKRA_SHARK_FREE; public static MethodHandle WICKRA_SHOOTING_STAR_NEW; @@ -2048,6 +2338,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SHOOTING_STAR_BATCH; public static MethodHandle WICKRA_SHOOTING_STAR_WARMUP_PERIOD; public static MethodHandle WICKRA_SHOOTING_STAR_IS_READY; + public static MethodHandle WICKRA_SHOOTING_STAR_NAME; public static MethodHandle WICKRA_SHOOTING_STAR_RESET; public static MethodHandle WICKRA_SHOOTING_STAR_FREE; public static MethodHandle WICKRA_SHORT_LINE_NEW; @@ -2055,6 +2346,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SHORT_LINE_BATCH; public static MethodHandle WICKRA_SHORT_LINE_WARMUP_PERIOD; public static MethodHandle WICKRA_SHORT_LINE_IS_READY; + public static MethodHandle WICKRA_SHORT_LINE_NAME; public static MethodHandle WICKRA_SHORT_LINE_RESET; public static MethodHandle WICKRA_SHORT_LINE_FREE; public static MethodHandle WICKRA_SINGLE_PRINTS_NEW; @@ -2062,6 +2354,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SINGLE_PRINTS_BATCH; public static MethodHandle WICKRA_SINGLE_PRINTS_WARMUP_PERIOD; public static MethodHandle WICKRA_SINGLE_PRINTS_IS_READY; + public static MethodHandle WICKRA_SINGLE_PRINTS_NAME; public static MethodHandle WICKRA_SINGLE_PRINTS_RESET; public static MethodHandle WICKRA_SINGLE_PRINTS_FREE; public static MethodHandle WICKRA_SMI_NEW; @@ -2069,6 +2362,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SMI_BATCH; public static MethodHandle WICKRA_SMI_WARMUP_PERIOD; public static MethodHandle WICKRA_SMI_IS_READY; + public static MethodHandle WICKRA_SMI_NAME; public static MethodHandle WICKRA_SMI_RESET; public static MethodHandle WICKRA_SMI_FREE; public static MethodHandle WICKRA_SPINNING_TOP_NEW; @@ -2076,6 +2370,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_SPINNING_TOP_BATCH; public static MethodHandle WICKRA_SPINNING_TOP_WARMUP_PERIOD; public static MethodHandle WICKRA_SPINNING_TOP_IS_READY; + public static MethodHandle WICKRA_SPINNING_TOP_NAME; public static MethodHandle WICKRA_SPINNING_TOP_RESET; public static MethodHandle WICKRA_SPINNING_TOP_FREE; public static MethodHandle WICKRA_STALLED_PATTERN_NEW; @@ -2083,6 +2378,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_STALLED_PATTERN_BATCH; public static MethodHandle WICKRA_STALLED_PATTERN_WARMUP_PERIOD; public static MethodHandle WICKRA_STALLED_PATTERN_IS_READY; + public static MethodHandle WICKRA_STALLED_PATTERN_NAME; public static MethodHandle WICKRA_STALLED_PATTERN_RESET; public static MethodHandle WICKRA_STALLED_PATTERN_FREE; public static MethodHandle WICKRA_STICK_SANDWICH_NEW; @@ -2090,6 +2386,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_STICK_SANDWICH_BATCH; public static MethodHandle WICKRA_STICK_SANDWICH_WARMUP_PERIOD; public static MethodHandle WICKRA_STICK_SANDWICH_IS_READY; + public static MethodHandle WICKRA_STICK_SANDWICH_NAME; public static MethodHandle WICKRA_STICK_SANDWICH_RESET; public static MethodHandle WICKRA_STICK_SANDWICH_FREE; public static MethodHandle WICKRA_STOCHASTIC_CCI_NEW; @@ -2097,6 +2394,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_STOCHASTIC_CCI_BATCH; public static MethodHandle WICKRA_STOCHASTIC_CCI_WARMUP_PERIOD; public static MethodHandle WICKRA_STOCHASTIC_CCI_IS_READY; + public static MethodHandle WICKRA_STOCHASTIC_CCI_NAME; public static MethodHandle WICKRA_STOCHASTIC_CCI_RESET; public static MethodHandle WICKRA_STOCHASTIC_CCI_FREE; public static MethodHandle WICKRA_TAKURI_NEW; @@ -2104,6 +2402,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TAKURI_BATCH; public static MethodHandle WICKRA_TAKURI_WARMUP_PERIOD; public static MethodHandle WICKRA_TAKURI_IS_READY; + public static MethodHandle WICKRA_TAKURI_NAME; public static MethodHandle WICKRA_TAKURI_RESET; public static MethodHandle WICKRA_TAKURI_FREE; public static MethodHandle WICKRA_TASUKI_GAP_NEW; @@ -2111,6 +2410,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TASUKI_GAP_BATCH; public static MethodHandle WICKRA_TASUKI_GAP_WARMUP_PERIOD; public static MethodHandle WICKRA_TASUKI_GAP_IS_READY; + public static MethodHandle WICKRA_TASUKI_GAP_NAME; public static MethodHandle WICKRA_TASUKI_GAP_RESET; public static MethodHandle WICKRA_TASUKI_GAP_FREE; public static MethodHandle WICKRA_TD_CAMOUFLAGE_NEW; @@ -2118,6 +2418,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_CAMOUFLAGE_BATCH; public static MethodHandle WICKRA_TD_CAMOUFLAGE_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_CAMOUFLAGE_IS_READY; + public static MethodHandle WICKRA_TD_CAMOUFLAGE_NAME; public static MethodHandle WICKRA_TD_CAMOUFLAGE_RESET; public static MethodHandle WICKRA_TD_CAMOUFLAGE_FREE; public static MethodHandle WICKRA_TD_CLOP_NEW; @@ -2125,6 +2426,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_CLOP_BATCH; public static MethodHandle WICKRA_TD_CLOP_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_CLOP_IS_READY; + public static MethodHandle WICKRA_TD_CLOP_NAME; public static MethodHandle WICKRA_TD_CLOP_RESET; public static MethodHandle WICKRA_TD_CLOP_FREE; public static MethodHandle WICKRA_TD_CLOPWIN_NEW; @@ -2132,6 +2434,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_CLOPWIN_BATCH; public static MethodHandle WICKRA_TD_CLOPWIN_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_CLOPWIN_IS_READY; + public static MethodHandle WICKRA_TD_CLOPWIN_NAME; public static MethodHandle WICKRA_TD_CLOPWIN_RESET; public static MethodHandle WICKRA_TD_CLOPWIN_FREE; public static MethodHandle WICKRA_TD_COMBO_NEW; @@ -2139,6 +2442,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_COMBO_BATCH; public static MethodHandle WICKRA_TD_COMBO_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_COMBO_IS_READY; + public static MethodHandle WICKRA_TD_COMBO_NAME; public static MethodHandle WICKRA_TD_COMBO_RESET; public static MethodHandle WICKRA_TD_COMBO_FREE; public static MethodHandle WICKRA_TD_COUNTDOWN_NEW; @@ -2146,6 +2450,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_COUNTDOWN_BATCH; public static MethodHandle WICKRA_TD_COUNTDOWN_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_COUNTDOWN_IS_READY; + public static MethodHandle WICKRA_TD_COUNTDOWN_NAME; public static MethodHandle WICKRA_TD_COUNTDOWN_RESET; public static MethodHandle WICKRA_TD_COUNTDOWN_FREE; public static MethodHandle WICKRA_TD_DE_MARKER_NEW; @@ -2153,6 +2458,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_DE_MARKER_BATCH; public static MethodHandle WICKRA_TD_DE_MARKER_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_DE_MARKER_IS_READY; + public static MethodHandle WICKRA_TD_DE_MARKER_NAME; public static MethodHandle WICKRA_TD_DE_MARKER_RESET; public static MethodHandle WICKRA_TD_DE_MARKER_FREE; public static MethodHandle WICKRA_TD_DIFFERENTIAL_NEW; @@ -2160,6 +2466,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_DIFFERENTIAL_BATCH; public static MethodHandle WICKRA_TD_DIFFERENTIAL_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_DIFFERENTIAL_IS_READY; + public static MethodHandle WICKRA_TD_DIFFERENTIAL_NAME; public static MethodHandle WICKRA_TD_DIFFERENTIAL_RESET; public static MethodHandle WICKRA_TD_DIFFERENTIAL_FREE; public static MethodHandle WICKRA_TD_D_WAVE_NEW; @@ -2167,6 +2474,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_D_WAVE_BATCH; public static MethodHandle WICKRA_TD_D_WAVE_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_D_WAVE_IS_READY; + public static MethodHandle WICKRA_TD_D_WAVE_NAME; public static MethodHandle WICKRA_TD_D_WAVE_RESET; public static MethodHandle WICKRA_TD_D_WAVE_FREE; public static MethodHandle WICKRA_TD_OPEN_NEW; @@ -2174,6 +2482,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_OPEN_BATCH; public static MethodHandle WICKRA_TD_OPEN_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_OPEN_IS_READY; + public static MethodHandle WICKRA_TD_OPEN_NAME; public static MethodHandle WICKRA_TD_OPEN_RESET; public static MethodHandle WICKRA_TD_OPEN_FREE; public static MethodHandle WICKRA_TD_PRESSURE_NEW; @@ -2181,6 +2490,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_PRESSURE_BATCH; public static MethodHandle WICKRA_TD_PRESSURE_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_PRESSURE_IS_READY; + public static MethodHandle WICKRA_TD_PRESSURE_NAME; public static MethodHandle WICKRA_TD_PRESSURE_RESET; public static MethodHandle WICKRA_TD_PRESSURE_FREE; public static MethodHandle WICKRA_TD_PROPULSION_NEW; @@ -2188,6 +2498,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_PROPULSION_BATCH; public static MethodHandle WICKRA_TD_PROPULSION_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_PROPULSION_IS_READY; + public static MethodHandle WICKRA_TD_PROPULSION_NAME; public static MethodHandle WICKRA_TD_PROPULSION_RESET; public static MethodHandle WICKRA_TD_PROPULSION_FREE; public static MethodHandle WICKRA_TD_REI_NEW; @@ -2195,6 +2506,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_REI_BATCH; public static MethodHandle WICKRA_TD_REI_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_REI_IS_READY; + public static MethodHandle WICKRA_TD_REI_NAME; public static MethodHandle WICKRA_TD_REI_RESET; public static MethodHandle WICKRA_TD_REI_FREE; public static MethodHandle WICKRA_TD_SETUP_NEW; @@ -2202,6 +2514,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_SETUP_BATCH; public static MethodHandle WICKRA_TD_SETUP_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_SETUP_IS_READY; + public static MethodHandle WICKRA_TD_SETUP_NAME; public static MethodHandle WICKRA_TD_SETUP_RESET; public static MethodHandle WICKRA_TD_SETUP_FREE; public static MethodHandle WICKRA_TD_TRAP_NEW; @@ -2209,6 +2522,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TD_TRAP_BATCH; public static MethodHandle WICKRA_TD_TRAP_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_TRAP_IS_READY; + public static MethodHandle WICKRA_TD_TRAP_NAME; public static MethodHandle WICKRA_TD_TRAP_RESET; public static MethodHandle WICKRA_TD_TRAP_FREE; public static MethodHandle WICKRA_THREE_DRIVES_NEW; @@ -2216,6 +2530,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_THREE_DRIVES_BATCH; public static MethodHandle WICKRA_THREE_DRIVES_WARMUP_PERIOD; public static MethodHandle WICKRA_THREE_DRIVES_IS_READY; + public static MethodHandle WICKRA_THREE_DRIVES_NAME; public static MethodHandle WICKRA_THREE_DRIVES_RESET; public static MethodHandle WICKRA_THREE_DRIVES_FREE; public static MethodHandle WICKRA_THREE_INSIDE_NEW; @@ -2223,6 +2538,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_THREE_INSIDE_BATCH; public static MethodHandle WICKRA_THREE_INSIDE_WARMUP_PERIOD; public static MethodHandle WICKRA_THREE_INSIDE_IS_READY; + public static MethodHandle WICKRA_THREE_INSIDE_NAME; public static MethodHandle WICKRA_THREE_INSIDE_RESET; public static MethodHandle WICKRA_THREE_INSIDE_FREE; public static MethodHandle WICKRA_THREE_LINE_BREAK_NEW; @@ -2230,6 +2546,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_THREE_LINE_BREAK_BATCH; public static MethodHandle WICKRA_THREE_LINE_BREAK_WARMUP_PERIOD; public static MethodHandle WICKRA_THREE_LINE_BREAK_IS_READY; + public static MethodHandle WICKRA_THREE_LINE_BREAK_NAME; public static MethodHandle WICKRA_THREE_LINE_BREAK_RESET; public static MethodHandle WICKRA_THREE_LINE_BREAK_FREE; public static MethodHandle WICKRA_THREE_LINE_STRIKE_NEW; @@ -2237,6 +2554,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_THREE_LINE_STRIKE_BATCH; public static MethodHandle WICKRA_THREE_LINE_STRIKE_WARMUP_PERIOD; public static MethodHandle WICKRA_THREE_LINE_STRIKE_IS_READY; + public static MethodHandle WICKRA_THREE_LINE_STRIKE_NAME; public static MethodHandle WICKRA_THREE_LINE_STRIKE_RESET; public static MethodHandle WICKRA_THREE_LINE_STRIKE_FREE; public static MethodHandle WICKRA_THREE_OUTSIDE_NEW; @@ -2244,6 +2562,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_THREE_OUTSIDE_BATCH; public static MethodHandle WICKRA_THREE_OUTSIDE_WARMUP_PERIOD; public static MethodHandle WICKRA_THREE_OUTSIDE_IS_READY; + public static MethodHandle WICKRA_THREE_OUTSIDE_NAME; public static MethodHandle WICKRA_THREE_OUTSIDE_RESET; public static MethodHandle WICKRA_THREE_OUTSIDE_FREE; public static MethodHandle WICKRA_THREE_SOLDIERS_OR_CROWS_NEW; @@ -2251,6 +2570,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_THREE_SOLDIERS_OR_CROWS_BATCH; public static MethodHandle WICKRA_THREE_SOLDIERS_OR_CROWS_WARMUP_PERIOD; public static MethodHandle WICKRA_THREE_SOLDIERS_OR_CROWS_IS_READY; + public static MethodHandle WICKRA_THREE_SOLDIERS_OR_CROWS_NAME; public static MethodHandle WICKRA_THREE_SOLDIERS_OR_CROWS_RESET; public static MethodHandle WICKRA_THREE_SOLDIERS_OR_CROWS_FREE; public static MethodHandle WICKRA_THREE_STARS_IN_SOUTH_NEW; @@ -2258,6 +2578,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_THREE_STARS_IN_SOUTH_BATCH; public static MethodHandle WICKRA_THREE_STARS_IN_SOUTH_WARMUP_PERIOD; public static MethodHandle WICKRA_THREE_STARS_IN_SOUTH_IS_READY; + public static MethodHandle WICKRA_THREE_STARS_IN_SOUTH_NAME; public static MethodHandle WICKRA_THREE_STARS_IN_SOUTH_RESET; public static MethodHandle WICKRA_THREE_STARS_IN_SOUTH_FREE; public static MethodHandle WICKRA_THRUSTING_NEW; @@ -2265,6 +2586,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_THRUSTING_BATCH; public static MethodHandle WICKRA_THRUSTING_WARMUP_PERIOD; public static MethodHandle WICKRA_THRUSTING_IS_READY; + public static MethodHandle WICKRA_THRUSTING_NAME; public static MethodHandle WICKRA_THRUSTING_RESET; public static MethodHandle WICKRA_THRUSTING_FREE; public static MethodHandle WICKRA_TIME_BASED_STOP_NEW; @@ -2272,6 +2594,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TIME_BASED_STOP_BATCH; public static MethodHandle WICKRA_TIME_BASED_STOP_WARMUP_PERIOD; public static MethodHandle WICKRA_TIME_BASED_STOP_IS_READY; + public static MethodHandle WICKRA_TIME_BASED_STOP_NAME; public static MethodHandle WICKRA_TIME_BASED_STOP_RESET; public static MethodHandle WICKRA_TIME_BASED_STOP_FREE; public static MethodHandle WICKRA_TOWER_TOP_BOTTOM_NEW; @@ -2279,6 +2602,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TOWER_TOP_BOTTOM_BATCH; public static MethodHandle WICKRA_TOWER_TOP_BOTTOM_WARMUP_PERIOD; public static MethodHandle WICKRA_TOWER_TOP_BOTTOM_IS_READY; + public static MethodHandle WICKRA_TOWER_TOP_BOTTOM_NAME; public static MethodHandle WICKRA_TOWER_TOP_BOTTOM_RESET; public static MethodHandle WICKRA_TOWER_TOP_BOTTOM_FREE; public static MethodHandle WICKRA_TRADE_VOLUME_INDEX_NEW; @@ -2286,6 +2610,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TRADE_VOLUME_INDEX_BATCH; public static MethodHandle WICKRA_TRADE_VOLUME_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_TRADE_VOLUME_INDEX_IS_READY; + public static MethodHandle WICKRA_TRADE_VOLUME_INDEX_NAME; public static MethodHandle WICKRA_TRADE_VOLUME_INDEX_RESET; public static MethodHandle WICKRA_TRADE_VOLUME_INDEX_FREE; public static MethodHandle WICKRA_TRIANGLE_NEW; @@ -2293,6 +2618,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TRIANGLE_BATCH; public static MethodHandle WICKRA_TRIANGLE_WARMUP_PERIOD; public static MethodHandle WICKRA_TRIANGLE_IS_READY; + public static MethodHandle WICKRA_TRIANGLE_NAME; public static MethodHandle WICKRA_TRIANGLE_RESET; public static MethodHandle WICKRA_TRIANGLE_FREE; public static MethodHandle WICKRA_TRIPLE_TOP_BOTTOM_NEW; @@ -2300,6 +2626,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TRIPLE_TOP_BOTTOM_BATCH; public static MethodHandle WICKRA_TRIPLE_TOP_BOTTOM_WARMUP_PERIOD; public static MethodHandle WICKRA_TRIPLE_TOP_BOTTOM_IS_READY; + public static MethodHandle WICKRA_TRIPLE_TOP_BOTTOM_NAME; public static MethodHandle WICKRA_TRIPLE_TOP_BOTTOM_RESET; public static MethodHandle WICKRA_TRIPLE_TOP_BOTTOM_FREE; public static MethodHandle WICKRA_TRISTAR_NEW; @@ -2307,6 +2634,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TRISTAR_BATCH; public static MethodHandle WICKRA_TRISTAR_WARMUP_PERIOD; public static MethodHandle WICKRA_TRISTAR_IS_READY; + public static MethodHandle WICKRA_TRISTAR_NAME; public static MethodHandle WICKRA_TRISTAR_RESET; public static MethodHandle WICKRA_TRISTAR_FREE; public static MethodHandle WICKRA_TRUE_RANGE_NEW; @@ -2314,6 +2642,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TRUE_RANGE_BATCH; public static MethodHandle WICKRA_TRUE_RANGE_WARMUP_PERIOD; public static MethodHandle WICKRA_TRUE_RANGE_IS_READY; + public static MethodHandle WICKRA_TRUE_RANGE_NAME; public static MethodHandle WICKRA_TRUE_RANGE_RESET; public static MethodHandle WICKRA_TRUE_RANGE_FREE; public static MethodHandle WICKRA_TSV_NEW; @@ -2321,6 +2650,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TSV_BATCH; public static MethodHandle WICKRA_TSV_WARMUP_PERIOD; public static MethodHandle WICKRA_TSV_IS_READY; + public static MethodHandle WICKRA_TSV_NAME; public static MethodHandle WICKRA_TSV_RESET; public static MethodHandle WICKRA_TSV_FREE; public static MethodHandle WICKRA_TTM_TREND_NEW; @@ -2328,6 +2658,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TTM_TREND_BATCH; public static MethodHandle WICKRA_TTM_TREND_WARMUP_PERIOD; public static MethodHandle WICKRA_TTM_TREND_IS_READY; + public static MethodHandle WICKRA_TTM_TREND_NAME; public static MethodHandle WICKRA_TTM_TREND_RESET; public static MethodHandle WICKRA_TTM_TREND_FREE; public static MethodHandle WICKRA_TURN_OF_MONTH_NEW; @@ -2335,6 +2666,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TURN_OF_MONTH_BATCH; public static MethodHandle WICKRA_TURN_OF_MONTH_WARMUP_PERIOD; public static MethodHandle WICKRA_TURN_OF_MONTH_IS_READY; + public static MethodHandle WICKRA_TURN_OF_MONTH_NAME; public static MethodHandle WICKRA_TURN_OF_MONTH_RESET; public static MethodHandle WICKRA_TURN_OF_MONTH_FREE; public static MethodHandle WICKRA_TWEEZER_NEW; @@ -2342,6 +2674,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TWEEZER_BATCH; public static MethodHandle WICKRA_TWEEZER_WARMUP_PERIOD; public static MethodHandle WICKRA_TWEEZER_IS_READY; + public static MethodHandle WICKRA_TWEEZER_NAME; public static MethodHandle WICKRA_TWEEZER_RESET; public static MethodHandle WICKRA_TWEEZER_FREE; public static MethodHandle WICKRA_TWIGGS_MONEY_FLOW_NEW; @@ -2349,6 +2682,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TWIGGS_MONEY_FLOW_BATCH; public static MethodHandle WICKRA_TWIGGS_MONEY_FLOW_WARMUP_PERIOD; public static MethodHandle WICKRA_TWIGGS_MONEY_FLOW_IS_READY; + public static MethodHandle WICKRA_TWIGGS_MONEY_FLOW_NAME; public static MethodHandle WICKRA_TWIGGS_MONEY_FLOW_RESET; public static MethodHandle WICKRA_TWIGGS_MONEY_FLOW_FREE; public static MethodHandle WICKRA_TWO_CROWS_NEW; @@ -2356,6 +2690,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TWO_CROWS_BATCH; public static MethodHandle WICKRA_TWO_CROWS_WARMUP_PERIOD; public static MethodHandle WICKRA_TWO_CROWS_IS_READY; + public static MethodHandle WICKRA_TWO_CROWS_NAME; public static MethodHandle WICKRA_TWO_CROWS_RESET; public static MethodHandle WICKRA_TWO_CROWS_FREE; public static MethodHandle WICKRA_TYPICAL_PRICE_NEW; @@ -2363,6 +2698,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_TYPICAL_PRICE_BATCH; public static MethodHandle WICKRA_TYPICAL_PRICE_WARMUP_PERIOD; public static MethodHandle WICKRA_TYPICAL_PRICE_IS_READY; + public static MethodHandle WICKRA_TYPICAL_PRICE_NAME; public static MethodHandle WICKRA_TYPICAL_PRICE_RESET; public static MethodHandle WICKRA_TYPICAL_PRICE_FREE; public static MethodHandle WICKRA_ULTIMATE_OSCILLATOR_NEW; @@ -2370,6 +2706,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ULTIMATE_OSCILLATOR_BATCH; public static MethodHandle WICKRA_ULTIMATE_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_ULTIMATE_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_ULTIMATE_OSCILLATOR_NAME; public static MethodHandle WICKRA_ULTIMATE_OSCILLATOR_RESET; public static MethodHandle WICKRA_ULTIMATE_OSCILLATOR_FREE; public static MethodHandle WICKRA_UNIQUE_THREE_RIVER_NEW; @@ -2377,6 +2714,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_UNIQUE_THREE_RIVER_BATCH; public static MethodHandle WICKRA_UNIQUE_THREE_RIVER_WARMUP_PERIOD; public static MethodHandle WICKRA_UNIQUE_THREE_RIVER_IS_READY; + public static MethodHandle WICKRA_UNIQUE_THREE_RIVER_NAME; public static MethodHandle WICKRA_UNIQUE_THREE_RIVER_RESET; public static MethodHandle WICKRA_UNIQUE_THREE_RIVER_FREE; public static MethodHandle WICKRA_UPSIDE_GAP_THREE_METHODS_NEW; @@ -2384,6 +2722,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_UPSIDE_GAP_THREE_METHODS_BATCH; public static MethodHandle WICKRA_UPSIDE_GAP_THREE_METHODS_WARMUP_PERIOD; public static MethodHandle WICKRA_UPSIDE_GAP_THREE_METHODS_IS_READY; + public static MethodHandle WICKRA_UPSIDE_GAP_THREE_METHODS_NAME; public static MethodHandle WICKRA_UPSIDE_GAP_THREE_METHODS_RESET; public static MethodHandle WICKRA_UPSIDE_GAP_THREE_METHODS_FREE; public static MethodHandle WICKRA_UPSIDE_GAP_TWO_CROWS_NEW; @@ -2391,6 +2730,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_UPSIDE_GAP_TWO_CROWS_BATCH; public static MethodHandle WICKRA_UPSIDE_GAP_TWO_CROWS_WARMUP_PERIOD; public static MethodHandle WICKRA_UPSIDE_GAP_TWO_CROWS_IS_READY; + public static MethodHandle WICKRA_UPSIDE_GAP_TWO_CROWS_NAME; public static MethodHandle WICKRA_UPSIDE_GAP_TWO_CROWS_RESET; public static MethodHandle WICKRA_UPSIDE_GAP_TWO_CROWS_FREE; public static MethodHandle WICKRA_VOLATILITY_RATIO_NEW; @@ -2398,6 +2738,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VOLATILITY_RATIO_BATCH; public static MethodHandle WICKRA_VOLATILITY_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_VOLATILITY_RATIO_IS_READY; + public static MethodHandle WICKRA_VOLATILITY_RATIO_NAME; public static MethodHandle WICKRA_VOLATILITY_RATIO_RESET; public static MethodHandle WICKRA_VOLATILITY_RATIO_FREE; public static MethodHandle WICKRA_VOLTY_STOP_NEW; @@ -2405,6 +2746,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VOLTY_STOP_BATCH; public static MethodHandle WICKRA_VOLTY_STOP_WARMUP_PERIOD; public static MethodHandle WICKRA_VOLTY_STOP_IS_READY; + public static MethodHandle WICKRA_VOLTY_STOP_NAME; public static MethodHandle WICKRA_VOLTY_STOP_RESET; public static MethodHandle WICKRA_VOLTY_STOP_FREE; public static MethodHandle WICKRA_VOLUME_OSCILLATOR_NEW; @@ -2412,6 +2754,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VOLUME_OSCILLATOR_BATCH; public static MethodHandle WICKRA_VOLUME_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_VOLUME_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_VOLUME_OSCILLATOR_NAME; public static MethodHandle WICKRA_VOLUME_OSCILLATOR_RESET; public static MethodHandle WICKRA_VOLUME_OSCILLATOR_FREE; public static MethodHandle WICKRA_VOLUME_RSI_NEW; @@ -2419,6 +2762,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VOLUME_RSI_BATCH; public static MethodHandle WICKRA_VOLUME_RSI_WARMUP_PERIOD; public static MethodHandle WICKRA_VOLUME_RSI_IS_READY; + public static MethodHandle WICKRA_VOLUME_RSI_NAME; public static MethodHandle WICKRA_VOLUME_RSI_RESET; public static MethodHandle WICKRA_VOLUME_RSI_FREE; public static MethodHandle WICKRA_VOLUME_PRICE_TREND_NEW; @@ -2426,6 +2770,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VOLUME_PRICE_TREND_BATCH; public static MethodHandle WICKRA_VOLUME_PRICE_TREND_WARMUP_PERIOD; public static MethodHandle WICKRA_VOLUME_PRICE_TREND_IS_READY; + public static MethodHandle WICKRA_VOLUME_PRICE_TREND_NAME; public static MethodHandle WICKRA_VOLUME_PRICE_TREND_RESET; public static MethodHandle WICKRA_VOLUME_PRICE_TREND_FREE; public static MethodHandle WICKRA_VWAP_NEW; @@ -2433,6 +2778,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VWAP_BATCH; public static MethodHandle WICKRA_VWAP_WARMUP_PERIOD; public static MethodHandle WICKRA_VWAP_IS_READY; + public static MethodHandle WICKRA_VWAP_NAME; public static MethodHandle WICKRA_VWAP_RESET; public static MethodHandle WICKRA_VWAP_FREE; public static MethodHandle WICKRA_ROLLING_VWAP_NEW; @@ -2440,6 +2786,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_ROLLING_VWAP_BATCH; public static MethodHandle WICKRA_ROLLING_VWAP_WARMUP_PERIOD; public static MethodHandle WICKRA_ROLLING_VWAP_IS_READY; + public static MethodHandle WICKRA_ROLLING_VWAP_NAME; public static MethodHandle WICKRA_ROLLING_VWAP_RESET; public static MethodHandle WICKRA_ROLLING_VWAP_FREE; public static MethodHandle WICKRA_VWMA_NEW; @@ -2447,6 +2794,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VWMA_BATCH; public static MethodHandle WICKRA_VWMA_WARMUP_PERIOD; public static MethodHandle WICKRA_VWMA_IS_READY; + public static MethodHandle WICKRA_VWMA_NAME; public static MethodHandle WICKRA_VWMA_RESET; public static MethodHandle WICKRA_VWMA_FREE; public static MethodHandle WICKRA_VZO_NEW; @@ -2454,6 +2802,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_VZO_BATCH; public static MethodHandle WICKRA_VZO_WARMUP_PERIOD; public static MethodHandle WICKRA_VZO_IS_READY; + public static MethodHandle WICKRA_VZO_NAME; public static MethodHandle WICKRA_VZO_RESET; public static MethodHandle WICKRA_VZO_FREE; public static MethodHandle WICKRA_WAD_NEW; @@ -2461,6 +2810,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_WAD_BATCH; public static MethodHandle WICKRA_WAD_WARMUP_PERIOD; public static MethodHandle WICKRA_WAD_IS_READY; + public static MethodHandle WICKRA_WAD_NAME; public static MethodHandle WICKRA_WAD_RESET; public static MethodHandle WICKRA_WAD_FREE; public static MethodHandle WICKRA_WEDGE_NEW; @@ -2468,6 +2818,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_WEDGE_BATCH; public static MethodHandle WICKRA_WEDGE_WARMUP_PERIOD; public static MethodHandle WICKRA_WEDGE_IS_READY; + public static MethodHandle WICKRA_WEDGE_NAME; public static MethodHandle WICKRA_WEDGE_RESET; public static MethodHandle WICKRA_WEDGE_FREE; public static MethodHandle WICKRA_WEIGHTED_CLOSE_NEW; @@ -2475,6 +2826,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_WEIGHTED_CLOSE_BATCH; public static MethodHandle WICKRA_WEIGHTED_CLOSE_WARMUP_PERIOD; public static MethodHandle WICKRA_WEIGHTED_CLOSE_IS_READY; + public static MethodHandle WICKRA_WEIGHTED_CLOSE_NAME; public static MethodHandle WICKRA_WEIGHTED_CLOSE_RESET; public static MethodHandle WICKRA_WEIGHTED_CLOSE_FREE; public static MethodHandle WICKRA_WICK_RATIO_NEW; @@ -2482,6 +2834,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_WICK_RATIO_BATCH; public static MethodHandle WICKRA_WICK_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_WICK_RATIO_IS_READY; + public static MethodHandle WICKRA_WICK_RATIO_NAME; public static MethodHandle WICKRA_WICK_RATIO_RESET; public static MethodHandle WICKRA_WICK_RATIO_FREE; public static MethodHandle WICKRA_WILLIAMS_R_NEW; @@ -2489,6 +2842,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_WILLIAMS_R_BATCH; public static MethodHandle WICKRA_WILLIAMS_R_WARMUP_PERIOD; public static MethodHandle WICKRA_WILLIAMS_R_IS_READY; + public static MethodHandle WICKRA_WILLIAMS_R_NAME; public static MethodHandle WICKRA_WILLIAMS_R_RESET; public static MethodHandle WICKRA_WILLIAMS_R_FREE; public static MethodHandle WICKRA_YANG_ZHANG_VOLATILITY_NEW; @@ -2496,6 +2850,7 @@ public final class NativeMethods { public static MethodHandle WICKRA_YANG_ZHANG_VOLATILITY_BATCH; public static MethodHandle WICKRA_YANG_ZHANG_VOLATILITY_WARMUP_PERIOD; public static MethodHandle WICKRA_YANG_ZHANG_VOLATILITY_IS_READY; + public static MethodHandle WICKRA_YANG_ZHANG_VOLATILITY_NAME; public static MethodHandle WICKRA_YANG_ZHANG_VOLATILITY_RESET; public static MethodHandle WICKRA_YANG_ZHANG_VOLATILITY_FREE; public static MethodHandle WICKRA_YOYO_EXIT_NEW; @@ -2503,934 +2858,1093 @@ public final class NativeMethods { public static MethodHandle WICKRA_YOYO_EXIT_BATCH; public static MethodHandle WICKRA_YOYO_EXIT_WARMUP_PERIOD; public static MethodHandle WICKRA_YOYO_EXIT_IS_READY; + public static MethodHandle WICKRA_YOYO_EXIT_NAME; public static MethodHandle WICKRA_YOYO_EXIT_RESET; public static MethodHandle WICKRA_YOYO_EXIT_FREE; public static MethodHandle WICKRA_AMIHUD_ILLIQUIDITY_NEW; public static MethodHandle WICKRA_AMIHUD_ILLIQUIDITY_UPDATE; public static MethodHandle WICKRA_AMIHUD_ILLIQUIDITY_WARMUP_PERIOD; public static MethodHandle WICKRA_AMIHUD_ILLIQUIDITY_IS_READY; + public static MethodHandle WICKRA_AMIHUD_ILLIQUIDITY_NAME; public static MethodHandle WICKRA_AMIHUD_ILLIQUIDITY_RESET; public static MethodHandle WICKRA_AMIHUD_ILLIQUIDITY_FREE; public static MethodHandle WICKRA_CUMULATIVE_VOLUME_DELTA_NEW; public static MethodHandle WICKRA_CUMULATIVE_VOLUME_DELTA_UPDATE; public static MethodHandle WICKRA_CUMULATIVE_VOLUME_DELTA_WARMUP_PERIOD; public static MethodHandle WICKRA_CUMULATIVE_VOLUME_DELTA_IS_READY; + public static MethodHandle WICKRA_CUMULATIVE_VOLUME_DELTA_NAME; public static MethodHandle WICKRA_CUMULATIVE_VOLUME_DELTA_RESET; public static MethodHandle WICKRA_CUMULATIVE_VOLUME_DELTA_FREE; public static MethodHandle WICKRA_PIN_NEW; public static MethodHandle WICKRA_PIN_UPDATE; public static MethodHandle WICKRA_PIN_WARMUP_PERIOD; public static MethodHandle WICKRA_PIN_IS_READY; + public static MethodHandle WICKRA_PIN_NAME; public static MethodHandle WICKRA_PIN_RESET; public static MethodHandle WICKRA_PIN_FREE; public static MethodHandle WICKRA_ROLL_MEASURE_NEW; public static MethodHandle WICKRA_ROLL_MEASURE_UPDATE; public static MethodHandle WICKRA_ROLL_MEASURE_WARMUP_PERIOD; public static MethodHandle WICKRA_ROLL_MEASURE_IS_READY; + public static MethodHandle WICKRA_ROLL_MEASURE_NAME; public static MethodHandle WICKRA_ROLL_MEASURE_RESET; public static MethodHandle WICKRA_ROLL_MEASURE_FREE; public static MethodHandle WICKRA_SIGNED_VOLUME_NEW; public static MethodHandle WICKRA_SIGNED_VOLUME_UPDATE; public static MethodHandle WICKRA_SIGNED_VOLUME_WARMUP_PERIOD; public static MethodHandle WICKRA_SIGNED_VOLUME_IS_READY; + public static MethodHandle WICKRA_SIGNED_VOLUME_NAME; public static MethodHandle WICKRA_SIGNED_VOLUME_RESET; public static MethodHandle WICKRA_SIGNED_VOLUME_FREE; public static MethodHandle WICKRA_TRADE_IMBALANCE_NEW; public static MethodHandle WICKRA_TRADE_IMBALANCE_UPDATE; public static MethodHandle WICKRA_TRADE_IMBALANCE_WARMUP_PERIOD; public static MethodHandle WICKRA_TRADE_IMBALANCE_IS_READY; + public static MethodHandle WICKRA_TRADE_IMBALANCE_NAME; public static MethodHandle WICKRA_TRADE_IMBALANCE_RESET; public static MethodHandle WICKRA_TRADE_IMBALANCE_FREE; public static MethodHandle WICKRA_TRADE_SIGN_AUTOCORRELATION_NEW; public static MethodHandle WICKRA_TRADE_SIGN_AUTOCORRELATION_UPDATE; public static MethodHandle WICKRA_TRADE_SIGN_AUTOCORRELATION_WARMUP_PERIOD; public static MethodHandle WICKRA_TRADE_SIGN_AUTOCORRELATION_IS_READY; + public static MethodHandle WICKRA_TRADE_SIGN_AUTOCORRELATION_NAME; public static MethodHandle WICKRA_TRADE_SIGN_AUTOCORRELATION_RESET; public static MethodHandle WICKRA_TRADE_SIGN_AUTOCORRELATION_FREE; public static MethodHandle WICKRA_VPIN_NEW; public static MethodHandle WICKRA_VPIN_UPDATE; public static MethodHandle WICKRA_VPIN_WARMUP_PERIOD; public static MethodHandle WICKRA_VPIN_IS_READY; + public static MethodHandle WICKRA_VPIN_NAME; public static MethodHandle WICKRA_VPIN_RESET; public static MethodHandle WICKRA_VPIN_FREE; public static MethodHandle WICKRA_EFFECTIVE_SPREAD_NEW; public static MethodHandle WICKRA_EFFECTIVE_SPREAD_UPDATE; public static MethodHandle WICKRA_EFFECTIVE_SPREAD_WARMUP_PERIOD; public static MethodHandle WICKRA_EFFECTIVE_SPREAD_IS_READY; + public static MethodHandle WICKRA_EFFECTIVE_SPREAD_NAME; public static MethodHandle WICKRA_EFFECTIVE_SPREAD_RESET; public static MethodHandle WICKRA_EFFECTIVE_SPREAD_FREE; public static MethodHandle WICKRA_KYLES_LAMBDA_NEW; public static MethodHandle WICKRA_KYLES_LAMBDA_UPDATE; public static MethodHandle WICKRA_KYLES_LAMBDA_WARMUP_PERIOD; public static MethodHandle WICKRA_KYLES_LAMBDA_IS_READY; + public static MethodHandle WICKRA_KYLES_LAMBDA_NAME; public static MethodHandle WICKRA_KYLES_LAMBDA_RESET; public static MethodHandle WICKRA_KYLES_LAMBDA_FREE; public static MethodHandle WICKRA_REALIZED_SPREAD_NEW; public static MethodHandle WICKRA_REALIZED_SPREAD_UPDATE; public static MethodHandle WICKRA_REALIZED_SPREAD_WARMUP_PERIOD; public static MethodHandle WICKRA_REALIZED_SPREAD_IS_READY; + public static MethodHandle WICKRA_REALIZED_SPREAD_NAME; public static MethodHandle WICKRA_REALIZED_SPREAD_RESET; public static MethodHandle WICKRA_REALIZED_SPREAD_FREE; public static MethodHandle WICKRA_CALENDAR_SPREAD_NEW; public static MethodHandle WICKRA_CALENDAR_SPREAD_UPDATE; public static MethodHandle WICKRA_CALENDAR_SPREAD_WARMUP_PERIOD; public static MethodHandle WICKRA_CALENDAR_SPREAD_IS_READY; + public static MethodHandle WICKRA_CALENDAR_SPREAD_NAME; public static MethodHandle WICKRA_CALENDAR_SPREAD_RESET; public static MethodHandle WICKRA_CALENDAR_SPREAD_FREE; public static MethodHandle WICKRA_ESTIMATED_LEVERAGE_RATIO_NEW; public static MethodHandle WICKRA_ESTIMATED_LEVERAGE_RATIO_UPDATE; public static MethodHandle WICKRA_ESTIMATED_LEVERAGE_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_ESTIMATED_LEVERAGE_RATIO_IS_READY; + public static MethodHandle WICKRA_ESTIMATED_LEVERAGE_RATIO_NAME; public static MethodHandle WICKRA_ESTIMATED_LEVERAGE_RATIO_RESET; public static MethodHandle WICKRA_ESTIMATED_LEVERAGE_RATIO_FREE; public static MethodHandle WICKRA_FUNDING_BASIS_NEW; public static MethodHandle WICKRA_FUNDING_BASIS_UPDATE; public static MethodHandle WICKRA_FUNDING_BASIS_WARMUP_PERIOD; public static MethodHandle WICKRA_FUNDING_BASIS_IS_READY; + public static MethodHandle WICKRA_FUNDING_BASIS_NAME; public static MethodHandle WICKRA_FUNDING_BASIS_RESET; public static MethodHandle WICKRA_FUNDING_BASIS_FREE; public static MethodHandle WICKRA_FUNDING_IMPLIED_APR_NEW; public static MethodHandle WICKRA_FUNDING_IMPLIED_APR_UPDATE; public static MethodHandle WICKRA_FUNDING_IMPLIED_APR_WARMUP_PERIOD; public static MethodHandle WICKRA_FUNDING_IMPLIED_APR_IS_READY; + public static MethodHandle WICKRA_FUNDING_IMPLIED_APR_NAME; public static MethodHandle WICKRA_FUNDING_IMPLIED_APR_RESET; public static MethodHandle WICKRA_FUNDING_IMPLIED_APR_FREE; public static MethodHandle WICKRA_FUNDING_RATE_NEW; public static MethodHandle WICKRA_FUNDING_RATE_UPDATE; public static MethodHandle WICKRA_FUNDING_RATE_WARMUP_PERIOD; public static MethodHandle WICKRA_FUNDING_RATE_IS_READY; + public static MethodHandle WICKRA_FUNDING_RATE_NAME; public static MethodHandle WICKRA_FUNDING_RATE_RESET; public static MethodHandle WICKRA_FUNDING_RATE_FREE; public static MethodHandle WICKRA_FUNDING_RATE_MEAN_NEW; public static MethodHandle WICKRA_FUNDING_RATE_MEAN_UPDATE; public static MethodHandle WICKRA_FUNDING_RATE_MEAN_WARMUP_PERIOD; public static MethodHandle WICKRA_FUNDING_RATE_MEAN_IS_READY; + public static MethodHandle WICKRA_FUNDING_RATE_MEAN_NAME; public static MethodHandle WICKRA_FUNDING_RATE_MEAN_RESET; public static MethodHandle WICKRA_FUNDING_RATE_MEAN_FREE; public static MethodHandle WICKRA_FUNDING_RATE_Z_SCORE_NEW; public static MethodHandle WICKRA_FUNDING_RATE_Z_SCORE_UPDATE; public static MethodHandle WICKRA_FUNDING_RATE_Z_SCORE_WARMUP_PERIOD; public static MethodHandle WICKRA_FUNDING_RATE_Z_SCORE_IS_READY; + public static MethodHandle WICKRA_FUNDING_RATE_Z_SCORE_NAME; public static MethodHandle WICKRA_FUNDING_RATE_Z_SCORE_RESET; public static MethodHandle WICKRA_FUNDING_RATE_Z_SCORE_FREE; public static MethodHandle WICKRA_LONG_SHORT_RATIO_NEW; public static MethodHandle WICKRA_LONG_SHORT_RATIO_UPDATE; public static MethodHandle WICKRA_LONG_SHORT_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_LONG_SHORT_RATIO_IS_READY; + public static MethodHandle WICKRA_LONG_SHORT_RATIO_NAME; public static MethodHandle WICKRA_LONG_SHORT_RATIO_RESET; public static MethodHandle WICKRA_LONG_SHORT_RATIO_FREE; public static MethodHandle WICKRA_OPEN_INTEREST_DELTA_NEW; public static MethodHandle WICKRA_OPEN_INTEREST_DELTA_UPDATE; public static MethodHandle WICKRA_OPEN_INTEREST_DELTA_WARMUP_PERIOD; public static MethodHandle WICKRA_OPEN_INTEREST_DELTA_IS_READY; + public static MethodHandle WICKRA_OPEN_INTEREST_DELTA_NAME; public static MethodHandle WICKRA_OPEN_INTEREST_DELTA_RESET; public static MethodHandle WICKRA_OPEN_INTEREST_DELTA_FREE; public static MethodHandle WICKRA_OI_PRICE_DIVERGENCE_NEW; public static MethodHandle WICKRA_OI_PRICE_DIVERGENCE_UPDATE; public static MethodHandle WICKRA_OI_PRICE_DIVERGENCE_WARMUP_PERIOD; public static MethodHandle WICKRA_OI_PRICE_DIVERGENCE_IS_READY; + public static MethodHandle WICKRA_OI_PRICE_DIVERGENCE_NAME; public static MethodHandle WICKRA_OI_PRICE_DIVERGENCE_RESET; public static MethodHandle WICKRA_OI_PRICE_DIVERGENCE_FREE; public static MethodHandle WICKRA_OI_TO_VOLUME_RATIO_NEW; public static MethodHandle WICKRA_OI_TO_VOLUME_RATIO_UPDATE; public static MethodHandle WICKRA_OI_TO_VOLUME_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_OI_TO_VOLUME_RATIO_IS_READY; + public static MethodHandle WICKRA_OI_TO_VOLUME_RATIO_NAME; public static MethodHandle WICKRA_OI_TO_VOLUME_RATIO_RESET; public static MethodHandle WICKRA_OI_TO_VOLUME_RATIO_FREE; public static MethodHandle WICKRA_OI_WEIGHTED_NEW; public static MethodHandle WICKRA_OI_WEIGHTED_UPDATE; public static MethodHandle WICKRA_OI_WEIGHTED_WARMUP_PERIOD; public static MethodHandle WICKRA_OI_WEIGHTED_IS_READY; + public static MethodHandle WICKRA_OI_WEIGHTED_NAME; public static MethodHandle WICKRA_OI_WEIGHTED_RESET; public static MethodHandle WICKRA_OI_WEIGHTED_FREE; public static MethodHandle WICKRA_OPEN_INTEREST_MOMENTUM_NEW; public static MethodHandle WICKRA_OPEN_INTEREST_MOMENTUM_UPDATE; public static MethodHandle WICKRA_OPEN_INTEREST_MOMENTUM_WARMUP_PERIOD; public static MethodHandle WICKRA_OPEN_INTEREST_MOMENTUM_IS_READY; + public static MethodHandle WICKRA_OPEN_INTEREST_MOMENTUM_NAME; public static MethodHandle WICKRA_OPEN_INTEREST_MOMENTUM_RESET; public static MethodHandle WICKRA_OPEN_INTEREST_MOMENTUM_FREE; public static MethodHandle WICKRA_PERPETUAL_PREMIUM_INDEX_NEW; public static MethodHandle WICKRA_PERPETUAL_PREMIUM_INDEX_UPDATE; public static MethodHandle WICKRA_PERPETUAL_PREMIUM_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_PERPETUAL_PREMIUM_INDEX_IS_READY; + public static MethodHandle WICKRA_PERPETUAL_PREMIUM_INDEX_NAME; public static MethodHandle WICKRA_PERPETUAL_PREMIUM_INDEX_RESET; public static MethodHandle WICKRA_PERPETUAL_PREMIUM_INDEX_FREE; public static MethodHandle WICKRA_TAKER_BUY_SELL_RATIO_NEW; public static MethodHandle WICKRA_TAKER_BUY_SELL_RATIO_UPDATE; public static MethodHandle WICKRA_TAKER_BUY_SELL_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_TAKER_BUY_SELL_RATIO_IS_READY; + public static MethodHandle WICKRA_TAKER_BUY_SELL_RATIO_NAME; public static MethodHandle WICKRA_TAKER_BUY_SELL_RATIO_RESET; public static MethodHandle WICKRA_TAKER_BUY_SELL_RATIO_FREE; public static MethodHandle WICKRA_TERM_STRUCTURE_BASIS_NEW; public static MethodHandle WICKRA_TERM_STRUCTURE_BASIS_UPDATE; public static MethodHandle WICKRA_TERM_STRUCTURE_BASIS_WARMUP_PERIOD; public static MethodHandle WICKRA_TERM_STRUCTURE_BASIS_IS_READY; + public static MethodHandle WICKRA_TERM_STRUCTURE_BASIS_NAME; public static MethodHandle WICKRA_TERM_STRUCTURE_BASIS_RESET; public static MethodHandle WICKRA_TERM_STRUCTURE_BASIS_FREE; public static MethodHandle WICKRA_DEPTH_SLOPE_NEW; public static MethodHandle WICKRA_DEPTH_SLOPE_UPDATE; public static MethodHandle WICKRA_DEPTH_SLOPE_WARMUP_PERIOD; public static MethodHandle WICKRA_DEPTH_SLOPE_IS_READY; + public static MethodHandle WICKRA_DEPTH_SLOPE_NAME; public static MethodHandle WICKRA_DEPTH_SLOPE_RESET; public static MethodHandle WICKRA_DEPTH_SLOPE_FREE; public static MethodHandle WICKRA_MICROPRICE_NEW; public static MethodHandle WICKRA_MICROPRICE_UPDATE; public static MethodHandle WICKRA_MICROPRICE_WARMUP_PERIOD; public static MethodHandle WICKRA_MICROPRICE_IS_READY; + public static MethodHandle WICKRA_MICROPRICE_NAME; public static MethodHandle WICKRA_MICROPRICE_RESET; public static MethodHandle WICKRA_MICROPRICE_FREE; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_FULL_NEW; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_FULL_UPDATE; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_FULL_WARMUP_PERIOD; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_FULL_IS_READY; + public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_FULL_NAME; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_FULL_RESET; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_FULL_FREE; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP1_NEW; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP1_UPDATE; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP1_WARMUP_PERIOD; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP1_IS_READY; + public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP1_NAME; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP1_RESET; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP1_FREE; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_NEW; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_UPDATE; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_WARMUP_PERIOD; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_IS_READY; + public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_NAME; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_RESET; public static MethodHandle WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_FREE; public static MethodHandle WICKRA_ORDER_FLOW_IMBALANCE_NEW; public static MethodHandle WICKRA_ORDER_FLOW_IMBALANCE_UPDATE; public static MethodHandle WICKRA_ORDER_FLOW_IMBALANCE_WARMUP_PERIOD; public static MethodHandle WICKRA_ORDER_FLOW_IMBALANCE_IS_READY; + public static MethodHandle WICKRA_ORDER_FLOW_IMBALANCE_NAME; public static MethodHandle WICKRA_ORDER_FLOW_IMBALANCE_RESET; public static MethodHandle WICKRA_ORDER_FLOW_IMBALANCE_FREE; public static MethodHandle WICKRA_QUOTED_SPREAD_NEW; public static MethodHandle WICKRA_QUOTED_SPREAD_UPDATE; public static MethodHandle WICKRA_QUOTED_SPREAD_WARMUP_PERIOD; public static MethodHandle WICKRA_QUOTED_SPREAD_IS_READY; + public static MethodHandle WICKRA_QUOTED_SPREAD_NAME; public static MethodHandle WICKRA_QUOTED_SPREAD_RESET; public static MethodHandle WICKRA_QUOTED_SPREAD_FREE; public static MethodHandle WICKRA_ABSOLUTE_BREADTH_INDEX_NEW; public static MethodHandle WICKRA_ABSOLUTE_BREADTH_INDEX_UPDATE; public static MethodHandle WICKRA_ABSOLUTE_BREADTH_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_ABSOLUTE_BREADTH_INDEX_IS_READY; + public static MethodHandle WICKRA_ABSOLUTE_BREADTH_INDEX_NAME; public static MethodHandle WICKRA_ABSOLUTE_BREADTH_INDEX_RESET; public static MethodHandle WICKRA_ABSOLUTE_BREADTH_INDEX_FREE; public static MethodHandle WICKRA_AD_VOLUME_LINE_NEW; public static MethodHandle WICKRA_AD_VOLUME_LINE_UPDATE; public static MethodHandle WICKRA_AD_VOLUME_LINE_WARMUP_PERIOD; public static MethodHandle WICKRA_AD_VOLUME_LINE_IS_READY; + public static MethodHandle WICKRA_AD_VOLUME_LINE_NAME; public static MethodHandle WICKRA_AD_VOLUME_LINE_RESET; public static MethodHandle WICKRA_AD_VOLUME_LINE_FREE; public static MethodHandle WICKRA_ADVANCE_DECLINE_NEW; public static MethodHandle WICKRA_ADVANCE_DECLINE_UPDATE; public static MethodHandle WICKRA_ADVANCE_DECLINE_WARMUP_PERIOD; public static MethodHandle WICKRA_ADVANCE_DECLINE_IS_READY; + public static MethodHandle WICKRA_ADVANCE_DECLINE_NAME; public static MethodHandle WICKRA_ADVANCE_DECLINE_RESET; public static MethodHandle WICKRA_ADVANCE_DECLINE_FREE; public static MethodHandle WICKRA_ADVANCE_DECLINE_RATIO_NEW; public static MethodHandle WICKRA_ADVANCE_DECLINE_RATIO_UPDATE; public static MethodHandle WICKRA_ADVANCE_DECLINE_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_ADVANCE_DECLINE_RATIO_IS_READY; + public static MethodHandle WICKRA_ADVANCE_DECLINE_RATIO_NAME; public static MethodHandle WICKRA_ADVANCE_DECLINE_RATIO_RESET; public static MethodHandle WICKRA_ADVANCE_DECLINE_RATIO_FREE; public static MethodHandle WICKRA_BREADTH_THRUST_NEW; public static MethodHandle WICKRA_BREADTH_THRUST_UPDATE; public static MethodHandle WICKRA_BREADTH_THRUST_WARMUP_PERIOD; public static MethodHandle WICKRA_BREADTH_THRUST_IS_READY; + public static MethodHandle WICKRA_BREADTH_THRUST_NAME; public static MethodHandle WICKRA_BREADTH_THRUST_RESET; public static MethodHandle WICKRA_BREADTH_THRUST_FREE; public static MethodHandle WICKRA_BULLISH_PERCENT_INDEX_NEW; public static MethodHandle WICKRA_BULLISH_PERCENT_INDEX_UPDATE; public static MethodHandle WICKRA_BULLISH_PERCENT_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_BULLISH_PERCENT_INDEX_IS_READY; + public static MethodHandle WICKRA_BULLISH_PERCENT_INDEX_NAME; public static MethodHandle WICKRA_BULLISH_PERCENT_INDEX_RESET; public static MethodHandle WICKRA_BULLISH_PERCENT_INDEX_FREE; public static MethodHandle WICKRA_CUMULATIVE_VOLUME_INDEX_NEW; public static MethodHandle WICKRA_CUMULATIVE_VOLUME_INDEX_UPDATE; public static MethodHandle WICKRA_CUMULATIVE_VOLUME_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_CUMULATIVE_VOLUME_INDEX_IS_READY; + public static MethodHandle WICKRA_CUMULATIVE_VOLUME_INDEX_NAME; public static MethodHandle WICKRA_CUMULATIVE_VOLUME_INDEX_RESET; public static MethodHandle WICKRA_CUMULATIVE_VOLUME_INDEX_FREE; public static MethodHandle WICKRA_HIGH_LOW_INDEX_NEW; public static MethodHandle WICKRA_HIGH_LOW_INDEX_UPDATE; public static MethodHandle WICKRA_HIGH_LOW_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_HIGH_LOW_INDEX_IS_READY; + public static MethodHandle WICKRA_HIGH_LOW_INDEX_NAME; public static MethodHandle WICKRA_HIGH_LOW_INDEX_RESET; public static MethodHandle WICKRA_HIGH_LOW_INDEX_FREE; public static MethodHandle WICKRA_MC_CLELLAN_OSCILLATOR_NEW; public static MethodHandle WICKRA_MC_CLELLAN_OSCILLATOR_UPDATE; public static MethodHandle WICKRA_MC_CLELLAN_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_MC_CLELLAN_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_MC_CLELLAN_OSCILLATOR_NAME; public static MethodHandle WICKRA_MC_CLELLAN_OSCILLATOR_RESET; public static MethodHandle WICKRA_MC_CLELLAN_OSCILLATOR_FREE; public static MethodHandle WICKRA_MC_CLELLAN_SUMMATION_INDEX_NEW; public static MethodHandle WICKRA_MC_CLELLAN_SUMMATION_INDEX_UPDATE; public static MethodHandle WICKRA_MC_CLELLAN_SUMMATION_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_MC_CLELLAN_SUMMATION_INDEX_IS_READY; + public static MethodHandle WICKRA_MC_CLELLAN_SUMMATION_INDEX_NAME; public static MethodHandle WICKRA_MC_CLELLAN_SUMMATION_INDEX_RESET; public static MethodHandle WICKRA_MC_CLELLAN_SUMMATION_INDEX_FREE; public static MethodHandle WICKRA_NEW_HIGHS_NEW_LOWS_NEW; public static MethodHandle WICKRA_NEW_HIGHS_NEW_LOWS_UPDATE; public static MethodHandle WICKRA_NEW_HIGHS_NEW_LOWS_WARMUP_PERIOD; public static MethodHandle WICKRA_NEW_HIGHS_NEW_LOWS_IS_READY; + public static MethodHandle WICKRA_NEW_HIGHS_NEW_LOWS_NAME; public static MethodHandle WICKRA_NEW_HIGHS_NEW_LOWS_RESET; public static MethodHandle WICKRA_NEW_HIGHS_NEW_LOWS_FREE; public static MethodHandle WICKRA_PERCENT_ABOVE_MA_NEW; public static MethodHandle WICKRA_PERCENT_ABOVE_MA_UPDATE; public static MethodHandle WICKRA_PERCENT_ABOVE_MA_WARMUP_PERIOD; public static MethodHandle WICKRA_PERCENT_ABOVE_MA_IS_READY; + public static MethodHandle WICKRA_PERCENT_ABOVE_MA_NAME; public static MethodHandle WICKRA_PERCENT_ABOVE_MA_RESET; public static MethodHandle WICKRA_PERCENT_ABOVE_MA_FREE; public static MethodHandle WICKRA_TICK_INDEX_NEW; public static MethodHandle WICKRA_TICK_INDEX_UPDATE; public static MethodHandle WICKRA_TICK_INDEX_WARMUP_PERIOD; public static MethodHandle WICKRA_TICK_INDEX_IS_READY; + public static MethodHandle WICKRA_TICK_INDEX_NAME; public static MethodHandle WICKRA_TICK_INDEX_RESET; public static MethodHandle WICKRA_TICK_INDEX_FREE; public static MethodHandle WICKRA_TRIN_NEW; public static MethodHandle WICKRA_TRIN_UPDATE; public static MethodHandle WICKRA_TRIN_WARMUP_PERIOD; public static MethodHandle WICKRA_TRIN_IS_READY; + public static MethodHandle WICKRA_TRIN_NAME; public static MethodHandle WICKRA_TRIN_RESET; public static MethodHandle WICKRA_TRIN_FREE; public static MethodHandle WICKRA_UP_DOWN_VOLUME_RATIO_NEW; public static MethodHandle WICKRA_UP_DOWN_VOLUME_RATIO_UPDATE; public static MethodHandle WICKRA_UP_DOWN_VOLUME_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_UP_DOWN_VOLUME_RATIO_IS_READY; + public static MethodHandle WICKRA_UP_DOWN_VOLUME_RATIO_NAME; public static MethodHandle WICKRA_UP_DOWN_VOLUME_RATIO_RESET; public static MethodHandle WICKRA_UP_DOWN_VOLUME_RATIO_FREE; public static MethodHandle WICKRA_ACCELERATION_BANDS_NEW; public static MethodHandle WICKRA_ACCELERATION_BANDS_UPDATE; public static MethodHandle WICKRA_ACCELERATION_BANDS_WARMUP_PERIOD; public static MethodHandle WICKRA_ACCELERATION_BANDS_IS_READY; + public static MethodHandle WICKRA_ACCELERATION_BANDS_NAME; public static MethodHandle WICKRA_ACCELERATION_BANDS_RESET; public static MethodHandle WICKRA_ACCELERATION_BANDS_FREE; public static MethodHandle WICKRA_ADX_NEW; public static MethodHandle WICKRA_ADX_UPDATE; public static MethodHandle WICKRA_ADX_WARMUP_PERIOD; public static MethodHandle WICKRA_ADX_IS_READY; + public static MethodHandle WICKRA_ADX_NAME; public static MethodHandle WICKRA_ADX_RESET; public static MethodHandle WICKRA_ADX_FREE; public static MethodHandle WICKRA_ALLIGATOR_NEW; public static MethodHandle WICKRA_ALLIGATOR_UPDATE; public static MethodHandle WICKRA_ALLIGATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_ALLIGATOR_IS_READY; + public static MethodHandle WICKRA_ALLIGATOR_NAME; public static MethodHandle WICKRA_ALLIGATOR_RESET; public static MethodHandle WICKRA_ALLIGATOR_FREE; public static MethodHandle WICKRA_ANDREWS_PITCHFORK_NEW; public static MethodHandle WICKRA_ANDREWS_PITCHFORK_UPDATE; public static MethodHandle WICKRA_ANDREWS_PITCHFORK_WARMUP_PERIOD; public static MethodHandle WICKRA_ANDREWS_PITCHFORK_IS_READY; + public static MethodHandle WICKRA_ANDREWS_PITCHFORK_NAME; public static MethodHandle WICKRA_ANDREWS_PITCHFORK_RESET; public static MethodHandle WICKRA_ANDREWS_PITCHFORK_FREE; public static MethodHandle WICKRA_AROON_NEW; public static MethodHandle WICKRA_AROON_UPDATE; public static MethodHandle WICKRA_AROON_WARMUP_PERIOD; public static MethodHandle WICKRA_AROON_IS_READY; + public static MethodHandle WICKRA_AROON_NAME; public static MethodHandle WICKRA_AROON_RESET; public static MethodHandle WICKRA_AROON_FREE; public static MethodHandle WICKRA_ATR_BANDS_NEW; public static MethodHandle WICKRA_ATR_BANDS_UPDATE; public static MethodHandle WICKRA_ATR_BANDS_WARMUP_PERIOD; public static MethodHandle WICKRA_ATR_BANDS_IS_READY; + public static MethodHandle WICKRA_ATR_BANDS_NAME; public static MethodHandle WICKRA_ATR_BANDS_RESET; public static MethodHandle WICKRA_ATR_BANDS_FREE; public static MethodHandle WICKRA_ATR_RATCHET_NEW; public static MethodHandle WICKRA_ATR_RATCHET_UPDATE; public static MethodHandle WICKRA_ATR_RATCHET_WARMUP_PERIOD; public static MethodHandle WICKRA_ATR_RATCHET_IS_READY; + public static MethodHandle WICKRA_ATR_RATCHET_NAME; public static MethodHandle WICKRA_ATR_RATCHET_RESET; public static MethodHandle WICKRA_ATR_RATCHET_FREE; public static MethodHandle WICKRA_AUTO_FIB_NEW; public static MethodHandle WICKRA_AUTO_FIB_UPDATE; public static MethodHandle WICKRA_AUTO_FIB_WARMUP_PERIOD; public static MethodHandle WICKRA_AUTO_FIB_IS_READY; + public static MethodHandle WICKRA_AUTO_FIB_NAME; public static MethodHandle WICKRA_AUTO_FIB_RESET; public static MethodHandle WICKRA_AUTO_FIB_FREE; public static MethodHandle WICKRA_BOLLINGER_BANDS_NEW; public static MethodHandle WICKRA_BOLLINGER_BANDS_UPDATE; public static MethodHandle WICKRA_BOLLINGER_BANDS_WARMUP_PERIOD; public static MethodHandle WICKRA_BOLLINGER_BANDS_IS_READY; + public static MethodHandle WICKRA_BOLLINGER_BANDS_NAME; public static MethodHandle WICKRA_BOLLINGER_BANDS_RESET; public static MethodHandle WICKRA_BOLLINGER_BANDS_FREE; public static MethodHandle WICKRA_BOMAR_BANDS_NEW; public static MethodHandle WICKRA_BOMAR_BANDS_UPDATE; public static MethodHandle WICKRA_BOMAR_BANDS_WARMUP_PERIOD; public static MethodHandle WICKRA_BOMAR_BANDS_IS_READY; + public static MethodHandle WICKRA_BOMAR_BANDS_NAME; public static MethodHandle WICKRA_BOMAR_BANDS_RESET; public static MethodHandle WICKRA_BOMAR_BANDS_FREE; public static MethodHandle WICKRA_CAMARILLA_NEW; public static MethodHandle WICKRA_CAMARILLA_UPDATE; public static MethodHandle WICKRA_CAMARILLA_WARMUP_PERIOD; public static MethodHandle WICKRA_CAMARILLA_IS_READY; + public static MethodHandle WICKRA_CAMARILLA_NAME; public static MethodHandle WICKRA_CAMARILLA_RESET; public static MethodHandle WICKRA_CAMARILLA_FREE; public static MethodHandle WICKRA_CANDLE_VOLUME_NEW; public static MethodHandle WICKRA_CANDLE_VOLUME_UPDATE; public static MethodHandle WICKRA_CANDLE_VOLUME_WARMUP_PERIOD; public static MethodHandle WICKRA_CANDLE_VOLUME_IS_READY; + public static MethodHandle WICKRA_CANDLE_VOLUME_NAME; public static MethodHandle WICKRA_CANDLE_VOLUME_RESET; public static MethodHandle WICKRA_CANDLE_VOLUME_FREE; public static MethodHandle WICKRA_CENTRAL_PIVOT_RANGE_NEW; public static MethodHandle WICKRA_CENTRAL_PIVOT_RANGE_UPDATE; public static MethodHandle WICKRA_CENTRAL_PIVOT_RANGE_WARMUP_PERIOD; public static MethodHandle WICKRA_CENTRAL_PIVOT_RANGE_IS_READY; + public static MethodHandle WICKRA_CENTRAL_PIVOT_RANGE_NAME; public static MethodHandle WICKRA_CENTRAL_PIVOT_RANGE_RESET; public static MethodHandle WICKRA_CENTRAL_PIVOT_RANGE_FREE; public static MethodHandle WICKRA_CHANDE_KROLL_STOP_NEW; public static MethodHandle WICKRA_CHANDE_KROLL_STOP_UPDATE; public static MethodHandle WICKRA_CHANDE_KROLL_STOP_WARMUP_PERIOD; public static MethodHandle WICKRA_CHANDE_KROLL_STOP_IS_READY; + public static MethodHandle WICKRA_CHANDE_KROLL_STOP_NAME; public static MethodHandle WICKRA_CHANDE_KROLL_STOP_RESET; public static MethodHandle WICKRA_CHANDE_KROLL_STOP_FREE; public static MethodHandle WICKRA_CHANDELIER_EXIT_NEW; public static MethodHandle WICKRA_CHANDELIER_EXIT_UPDATE; public static MethodHandle WICKRA_CHANDELIER_EXIT_WARMUP_PERIOD; public static MethodHandle WICKRA_CHANDELIER_EXIT_IS_READY; + public static MethodHandle WICKRA_CHANDELIER_EXIT_NAME; public static MethodHandle WICKRA_CHANDELIER_EXIT_RESET; public static MethodHandle WICKRA_CHANDELIER_EXIT_FREE; public static MethodHandle WICKRA_CLASSIC_PIVOTS_NEW; public static MethodHandle WICKRA_CLASSIC_PIVOTS_UPDATE; public static MethodHandle WICKRA_CLASSIC_PIVOTS_WARMUP_PERIOD; public static MethodHandle WICKRA_CLASSIC_PIVOTS_IS_READY; + public static MethodHandle WICKRA_CLASSIC_PIVOTS_NAME; public static MethodHandle WICKRA_CLASSIC_PIVOTS_RESET; public static MethodHandle WICKRA_CLASSIC_PIVOTS_FREE; public static MethodHandle WICKRA_COINTEGRATION_NEW; public static MethodHandle WICKRA_COINTEGRATION_UPDATE; public static MethodHandle WICKRA_COINTEGRATION_WARMUP_PERIOD; public static MethodHandle WICKRA_COINTEGRATION_IS_READY; + public static MethodHandle WICKRA_COINTEGRATION_NAME; public static MethodHandle WICKRA_COINTEGRATION_RESET; public static MethodHandle WICKRA_COINTEGRATION_FREE; public static MethodHandle WICKRA_COMPOSITE_PROFILE_NEW; public static MethodHandle WICKRA_COMPOSITE_PROFILE_UPDATE; public static MethodHandle WICKRA_COMPOSITE_PROFILE_WARMUP_PERIOD; public static MethodHandle WICKRA_COMPOSITE_PROFILE_IS_READY; + public static MethodHandle WICKRA_COMPOSITE_PROFILE_NAME; public static MethodHandle WICKRA_COMPOSITE_PROFILE_RESET; public static MethodHandle WICKRA_COMPOSITE_PROFILE_FREE; public static MethodHandle WICKRA_DEMARK_PIVOTS_NEW; public static MethodHandle WICKRA_DEMARK_PIVOTS_UPDATE; public static MethodHandle WICKRA_DEMARK_PIVOTS_WARMUP_PERIOD; public static MethodHandle WICKRA_DEMARK_PIVOTS_IS_READY; + public static MethodHandle WICKRA_DEMARK_PIVOTS_NAME; public static MethodHandle WICKRA_DEMARK_PIVOTS_RESET; public static MethodHandle WICKRA_DEMARK_PIVOTS_FREE; public static MethodHandle WICKRA_DONCHIAN_NEW; public static MethodHandle WICKRA_DONCHIAN_UPDATE; public static MethodHandle WICKRA_DONCHIAN_WARMUP_PERIOD; public static MethodHandle WICKRA_DONCHIAN_IS_READY; + public static MethodHandle WICKRA_DONCHIAN_NAME; public static MethodHandle WICKRA_DONCHIAN_RESET; public static MethodHandle WICKRA_DONCHIAN_FREE; public static MethodHandle WICKRA_DONCHIAN_STOP_NEW; public static MethodHandle WICKRA_DONCHIAN_STOP_UPDATE; public static MethodHandle WICKRA_DONCHIAN_STOP_WARMUP_PERIOD; public static MethodHandle WICKRA_DONCHIAN_STOP_IS_READY; + public static MethodHandle WICKRA_DONCHIAN_STOP_NAME; public static MethodHandle WICKRA_DONCHIAN_STOP_RESET; public static MethodHandle WICKRA_DONCHIAN_STOP_FREE; public static MethodHandle WICKRA_DOUBLE_BOLLINGER_NEW; public static MethodHandle WICKRA_DOUBLE_BOLLINGER_UPDATE; public static MethodHandle WICKRA_DOUBLE_BOLLINGER_WARMUP_PERIOD; public static MethodHandle WICKRA_DOUBLE_BOLLINGER_IS_READY; + public static MethodHandle WICKRA_DOUBLE_BOLLINGER_NAME; public static MethodHandle WICKRA_DOUBLE_BOLLINGER_RESET; public static MethodHandle WICKRA_DOUBLE_BOLLINGER_FREE; public static MethodHandle WICKRA_ELDER_RAY_NEW; public static MethodHandle WICKRA_ELDER_RAY_UPDATE; public static MethodHandle WICKRA_ELDER_RAY_WARMUP_PERIOD; public static MethodHandle WICKRA_ELDER_RAY_IS_READY; + public static MethodHandle WICKRA_ELDER_RAY_NAME; public static MethodHandle WICKRA_ELDER_RAY_RESET; public static MethodHandle WICKRA_ELDER_RAY_FREE; public static MethodHandle WICKRA_ELDER_SAFE_ZONE_NEW; public static MethodHandle WICKRA_ELDER_SAFE_ZONE_UPDATE; public static MethodHandle WICKRA_ELDER_SAFE_ZONE_WARMUP_PERIOD; public static MethodHandle WICKRA_ELDER_SAFE_ZONE_IS_READY; + public static MethodHandle WICKRA_ELDER_SAFE_ZONE_NAME; public static MethodHandle WICKRA_ELDER_SAFE_ZONE_RESET; public static MethodHandle WICKRA_ELDER_SAFE_ZONE_FREE; public static MethodHandle WICKRA_EQUIVOLUME_NEW; public static MethodHandle WICKRA_EQUIVOLUME_UPDATE; public static MethodHandle WICKRA_EQUIVOLUME_WARMUP_PERIOD; public static MethodHandle WICKRA_EQUIVOLUME_IS_READY; + public static MethodHandle WICKRA_EQUIVOLUME_NAME; public static MethodHandle WICKRA_EQUIVOLUME_RESET; public static MethodHandle WICKRA_EQUIVOLUME_FREE; public static MethodHandle WICKRA_FIB_ARCS_NEW; public static MethodHandle WICKRA_FIB_ARCS_UPDATE; public static MethodHandle WICKRA_FIB_ARCS_WARMUP_PERIOD; public static MethodHandle WICKRA_FIB_ARCS_IS_READY; + public static MethodHandle WICKRA_FIB_ARCS_NAME; public static MethodHandle WICKRA_FIB_ARCS_RESET; public static MethodHandle WICKRA_FIB_ARCS_FREE; public static MethodHandle WICKRA_FIB_CHANNEL_NEW; public static MethodHandle WICKRA_FIB_CHANNEL_UPDATE; public static MethodHandle WICKRA_FIB_CHANNEL_WARMUP_PERIOD; public static MethodHandle WICKRA_FIB_CHANNEL_IS_READY; + public static MethodHandle WICKRA_FIB_CHANNEL_NAME; public static MethodHandle WICKRA_FIB_CHANNEL_RESET; public static MethodHandle WICKRA_FIB_CHANNEL_FREE; public static MethodHandle WICKRA_FIB_CONFLUENCE_NEW; public static MethodHandle WICKRA_FIB_CONFLUENCE_UPDATE; public static MethodHandle WICKRA_FIB_CONFLUENCE_WARMUP_PERIOD; public static MethodHandle WICKRA_FIB_CONFLUENCE_IS_READY; + public static MethodHandle WICKRA_FIB_CONFLUENCE_NAME; public static MethodHandle WICKRA_FIB_CONFLUENCE_RESET; public static MethodHandle WICKRA_FIB_CONFLUENCE_FREE; public static MethodHandle WICKRA_FIB_EXTENSION_NEW; public static MethodHandle WICKRA_FIB_EXTENSION_UPDATE; public static MethodHandle WICKRA_FIB_EXTENSION_WARMUP_PERIOD; public static MethodHandle WICKRA_FIB_EXTENSION_IS_READY; + public static MethodHandle WICKRA_FIB_EXTENSION_NAME; public static MethodHandle WICKRA_FIB_EXTENSION_RESET; public static MethodHandle WICKRA_FIB_EXTENSION_FREE; public static MethodHandle WICKRA_FIB_FAN_NEW; public static MethodHandle WICKRA_FIB_FAN_UPDATE; public static MethodHandle WICKRA_FIB_FAN_WARMUP_PERIOD; public static MethodHandle WICKRA_FIB_FAN_IS_READY; + public static MethodHandle WICKRA_FIB_FAN_NAME; public static MethodHandle WICKRA_FIB_FAN_RESET; public static MethodHandle WICKRA_FIB_FAN_FREE; public static MethodHandle WICKRA_FIB_PROJECTION_NEW; public static MethodHandle WICKRA_FIB_PROJECTION_UPDATE; public static MethodHandle WICKRA_FIB_PROJECTION_WARMUP_PERIOD; public static MethodHandle WICKRA_FIB_PROJECTION_IS_READY; + public static MethodHandle WICKRA_FIB_PROJECTION_NAME; public static MethodHandle WICKRA_FIB_PROJECTION_RESET; public static MethodHandle WICKRA_FIB_PROJECTION_FREE; public static MethodHandle WICKRA_FIB_RETRACEMENT_NEW; public static MethodHandle WICKRA_FIB_RETRACEMENT_UPDATE; public static MethodHandle WICKRA_FIB_RETRACEMENT_WARMUP_PERIOD; public static MethodHandle WICKRA_FIB_RETRACEMENT_IS_READY; + public static MethodHandle WICKRA_FIB_RETRACEMENT_NAME; public static MethodHandle WICKRA_FIB_RETRACEMENT_RESET; public static MethodHandle WICKRA_FIB_RETRACEMENT_FREE; public static MethodHandle WICKRA_FIB_TIME_ZONES_NEW; public static MethodHandle WICKRA_FIB_TIME_ZONES_UPDATE; public static MethodHandle WICKRA_FIB_TIME_ZONES_WARMUP_PERIOD; public static MethodHandle WICKRA_FIB_TIME_ZONES_IS_READY; + public static MethodHandle WICKRA_FIB_TIME_ZONES_NAME; public static MethodHandle WICKRA_FIB_TIME_ZONES_RESET; public static MethodHandle WICKRA_FIB_TIME_ZONES_FREE; public static MethodHandle WICKRA_FIBONACCI_PIVOTS_NEW; public static MethodHandle WICKRA_FIBONACCI_PIVOTS_UPDATE; public static MethodHandle WICKRA_FIBONACCI_PIVOTS_WARMUP_PERIOD; public static MethodHandle WICKRA_FIBONACCI_PIVOTS_IS_READY; + public static MethodHandle WICKRA_FIBONACCI_PIVOTS_NAME; public static MethodHandle WICKRA_FIBONACCI_PIVOTS_RESET; public static MethodHandle WICKRA_FIBONACCI_PIVOTS_FREE; public static MethodHandle WICKRA_FRACTAL_CHAOS_BANDS_NEW; public static MethodHandle WICKRA_FRACTAL_CHAOS_BANDS_UPDATE; public static MethodHandle WICKRA_FRACTAL_CHAOS_BANDS_WARMUP_PERIOD; public static MethodHandle WICKRA_FRACTAL_CHAOS_BANDS_IS_READY; + public static MethodHandle WICKRA_FRACTAL_CHAOS_BANDS_NAME; public static MethodHandle WICKRA_FRACTAL_CHAOS_BANDS_RESET; public static MethodHandle WICKRA_FRACTAL_CHAOS_BANDS_FREE; public static MethodHandle WICKRA_GATOR_OSCILLATOR_NEW; public static MethodHandle WICKRA_GATOR_OSCILLATOR_UPDATE; public static MethodHandle WICKRA_GATOR_OSCILLATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_GATOR_OSCILLATOR_IS_READY; + public static MethodHandle WICKRA_GATOR_OSCILLATOR_NAME; public static MethodHandle WICKRA_GATOR_OSCILLATOR_RESET; public static MethodHandle WICKRA_GATOR_OSCILLATOR_FREE; public static MethodHandle WICKRA_GOLDEN_POCKET_NEW; public static MethodHandle WICKRA_GOLDEN_POCKET_UPDATE; public static MethodHandle WICKRA_GOLDEN_POCKET_WARMUP_PERIOD; public static MethodHandle WICKRA_GOLDEN_POCKET_IS_READY; + public static MethodHandle WICKRA_GOLDEN_POCKET_NAME; public static MethodHandle WICKRA_GOLDEN_POCKET_RESET; public static MethodHandle WICKRA_GOLDEN_POCKET_FREE; public static MethodHandle WICKRA_HEIKIN_ASHI_NEW; public static MethodHandle WICKRA_HEIKIN_ASHI_UPDATE; public static MethodHandle WICKRA_HEIKIN_ASHI_WARMUP_PERIOD; public static MethodHandle WICKRA_HEIKIN_ASHI_IS_READY; + public static MethodHandle WICKRA_HEIKIN_ASHI_NAME; public static MethodHandle WICKRA_HEIKIN_ASHI_RESET; public static MethodHandle WICKRA_HEIKIN_ASHI_FREE; public static MethodHandle WICKRA_HIGH_LOW_VOLUME_NODES_NEW; public static MethodHandle WICKRA_HIGH_LOW_VOLUME_NODES_UPDATE; public static MethodHandle WICKRA_HIGH_LOW_VOLUME_NODES_WARMUP_PERIOD; public static MethodHandle WICKRA_HIGH_LOW_VOLUME_NODES_IS_READY; + public static MethodHandle WICKRA_HIGH_LOW_VOLUME_NODES_NAME; public static MethodHandle WICKRA_HIGH_LOW_VOLUME_NODES_RESET; public static MethodHandle WICKRA_HIGH_LOW_VOLUME_NODES_FREE; public static MethodHandle WICKRA_HT_PHASOR_NEW; public static MethodHandle WICKRA_HT_PHASOR_UPDATE; public static MethodHandle WICKRA_HT_PHASOR_WARMUP_PERIOD; public static MethodHandle WICKRA_HT_PHASOR_IS_READY; + public static MethodHandle WICKRA_HT_PHASOR_NAME; public static MethodHandle WICKRA_HT_PHASOR_RESET; public static MethodHandle WICKRA_HT_PHASOR_FREE; public static MethodHandle WICKRA_HURST_CHANNEL_NEW; public static MethodHandle WICKRA_HURST_CHANNEL_UPDATE; public static MethodHandle WICKRA_HURST_CHANNEL_WARMUP_PERIOD; public static MethodHandle WICKRA_HURST_CHANNEL_IS_READY; + public static MethodHandle WICKRA_HURST_CHANNEL_NAME; public static MethodHandle WICKRA_HURST_CHANNEL_RESET; public static MethodHandle WICKRA_HURST_CHANNEL_FREE; public static MethodHandle WICKRA_ICHIMOKU_NEW; public static MethodHandle WICKRA_ICHIMOKU_UPDATE; public static MethodHandle WICKRA_ICHIMOKU_WARMUP_PERIOD; public static MethodHandle WICKRA_ICHIMOKU_IS_READY; + public static MethodHandle WICKRA_ICHIMOKU_NAME; public static MethodHandle WICKRA_ICHIMOKU_RESET; public static MethodHandle WICKRA_ICHIMOKU_FREE; public static MethodHandle WICKRA_INITIAL_BALANCE_NEW; public static MethodHandle WICKRA_INITIAL_BALANCE_UPDATE; public static MethodHandle WICKRA_INITIAL_BALANCE_WARMUP_PERIOD; public static MethodHandle WICKRA_INITIAL_BALANCE_IS_READY; + public static MethodHandle WICKRA_INITIAL_BALANCE_NAME; public static MethodHandle WICKRA_INITIAL_BALANCE_RESET; public static MethodHandle WICKRA_INITIAL_BALANCE_FREE; public static MethodHandle WICKRA_KALMAN_HEDGE_RATIO_NEW; public static MethodHandle WICKRA_KALMAN_HEDGE_RATIO_UPDATE; public static MethodHandle WICKRA_KALMAN_HEDGE_RATIO_WARMUP_PERIOD; public static MethodHandle WICKRA_KALMAN_HEDGE_RATIO_IS_READY; + public static MethodHandle WICKRA_KALMAN_HEDGE_RATIO_NAME; public static MethodHandle WICKRA_KALMAN_HEDGE_RATIO_RESET; public static MethodHandle WICKRA_KALMAN_HEDGE_RATIO_FREE; public static MethodHandle WICKRA_KASE_DEV_STOP_NEW; public static MethodHandle WICKRA_KASE_DEV_STOP_UPDATE; public static MethodHandle WICKRA_KASE_DEV_STOP_WARMUP_PERIOD; public static MethodHandle WICKRA_KASE_DEV_STOP_IS_READY; + public static MethodHandle WICKRA_KASE_DEV_STOP_NAME; public static MethodHandle WICKRA_KASE_DEV_STOP_RESET; public static MethodHandle WICKRA_KASE_DEV_STOP_FREE; public static MethodHandle WICKRA_KASE_PERMISSION_STOCHASTIC_NEW; public static MethodHandle WICKRA_KASE_PERMISSION_STOCHASTIC_UPDATE; public static MethodHandle WICKRA_KASE_PERMISSION_STOCHASTIC_WARMUP_PERIOD; public static MethodHandle WICKRA_KASE_PERMISSION_STOCHASTIC_IS_READY; + public static MethodHandle WICKRA_KASE_PERMISSION_STOCHASTIC_NAME; public static MethodHandle WICKRA_KASE_PERMISSION_STOCHASTIC_RESET; public static MethodHandle WICKRA_KASE_PERMISSION_STOCHASTIC_FREE; public static MethodHandle WICKRA_KELTNER_NEW; public static MethodHandle WICKRA_KELTNER_UPDATE; public static MethodHandle WICKRA_KELTNER_WARMUP_PERIOD; public static MethodHandle WICKRA_KELTNER_IS_READY; + public static MethodHandle WICKRA_KELTNER_NAME; public static MethodHandle WICKRA_KELTNER_RESET; public static MethodHandle WICKRA_KELTNER_FREE; public static MethodHandle WICKRA_KST_NEW; public static MethodHandle WICKRA_KST_UPDATE; public static MethodHandle WICKRA_KST_WARMUP_PERIOD; public static MethodHandle WICKRA_KST_IS_READY; + public static MethodHandle WICKRA_KST_NAME; public static MethodHandle WICKRA_KST_RESET; public static MethodHandle WICKRA_KST_FREE; public static MethodHandle WICKRA_LEAD_LAG_CROSS_CORRELATION_NEW; public static MethodHandle WICKRA_LEAD_LAG_CROSS_CORRELATION_UPDATE; public static MethodHandle WICKRA_LEAD_LAG_CROSS_CORRELATION_WARMUP_PERIOD; public static MethodHandle WICKRA_LEAD_LAG_CROSS_CORRELATION_IS_READY; + public static MethodHandle WICKRA_LEAD_LAG_CROSS_CORRELATION_NAME; public static MethodHandle WICKRA_LEAD_LAG_CROSS_CORRELATION_RESET; public static MethodHandle WICKRA_LEAD_LAG_CROSS_CORRELATION_FREE; public static MethodHandle WICKRA_LIN_REG_CHANNEL_NEW; public static MethodHandle WICKRA_LIN_REG_CHANNEL_UPDATE; public static MethodHandle WICKRA_LIN_REG_CHANNEL_WARMUP_PERIOD; public static MethodHandle WICKRA_LIN_REG_CHANNEL_IS_READY; + public static MethodHandle WICKRA_LIN_REG_CHANNEL_NAME; public static MethodHandle WICKRA_LIN_REG_CHANNEL_RESET; public static MethodHandle WICKRA_LIN_REG_CHANNEL_FREE; public static MethodHandle WICKRA_LIQUIDATION_FEATURES_NEW; public static MethodHandle WICKRA_LIQUIDATION_FEATURES_UPDATE; public static MethodHandle WICKRA_LIQUIDATION_FEATURES_WARMUP_PERIOD; public static MethodHandle WICKRA_LIQUIDATION_FEATURES_IS_READY; + public static MethodHandle WICKRA_LIQUIDATION_FEATURES_NAME; public static MethodHandle WICKRA_LIQUIDATION_FEATURES_RESET; public static MethodHandle WICKRA_LIQUIDATION_FEATURES_FREE; public static MethodHandle WICKRA_MA_ENVELOPE_NEW; public static MethodHandle WICKRA_MA_ENVELOPE_UPDATE; public static MethodHandle WICKRA_MA_ENVELOPE_WARMUP_PERIOD; public static MethodHandle WICKRA_MA_ENVELOPE_IS_READY; + public static MethodHandle WICKRA_MA_ENVELOPE_NAME; public static MethodHandle WICKRA_MA_ENVELOPE_RESET; public static MethodHandle WICKRA_MA_ENVELOPE_FREE; public static MethodHandle WICKRA_MACD_INDICATOR_NEW; public static MethodHandle WICKRA_MACD_INDICATOR_UPDATE; public static MethodHandle WICKRA_MACD_INDICATOR_WARMUP_PERIOD; public static MethodHandle WICKRA_MACD_INDICATOR_IS_READY; + public static MethodHandle WICKRA_MACD_INDICATOR_NAME; public static MethodHandle WICKRA_MACD_INDICATOR_RESET; public static MethodHandle WICKRA_MACD_INDICATOR_FREE; public static MethodHandle WICKRA_MACD_FIX_NEW; public static MethodHandle WICKRA_MACD_FIX_UPDATE; public static MethodHandle WICKRA_MACD_FIX_WARMUP_PERIOD; public static MethodHandle WICKRA_MACD_FIX_IS_READY; + public static MethodHandle WICKRA_MACD_FIX_NAME; public static MethodHandle WICKRA_MACD_FIX_RESET; public static MethodHandle WICKRA_MACD_FIX_FREE; public static MethodHandle WICKRA_MAMA_NEW; public static MethodHandle WICKRA_MAMA_UPDATE; public static MethodHandle WICKRA_MAMA_WARMUP_PERIOD; public static MethodHandle WICKRA_MAMA_IS_READY; + public static MethodHandle WICKRA_MAMA_NAME; public static MethodHandle WICKRA_MAMA_RESET; public static MethodHandle WICKRA_MAMA_FREE; public static MethodHandle WICKRA_MEDIAN_CHANNEL_NEW; public static MethodHandle WICKRA_MEDIAN_CHANNEL_UPDATE; public static MethodHandle WICKRA_MEDIAN_CHANNEL_WARMUP_PERIOD; public static MethodHandle WICKRA_MEDIAN_CHANNEL_IS_READY; + public static MethodHandle WICKRA_MEDIAN_CHANNEL_NAME; public static MethodHandle WICKRA_MEDIAN_CHANNEL_RESET; public static MethodHandle WICKRA_MEDIAN_CHANNEL_FREE; public static MethodHandle WICKRA_MODIFIED_MA_STOP_NEW; public static MethodHandle WICKRA_MODIFIED_MA_STOP_UPDATE; public static MethodHandle WICKRA_MODIFIED_MA_STOP_WARMUP_PERIOD; public static MethodHandle WICKRA_MODIFIED_MA_STOP_IS_READY; + public static MethodHandle WICKRA_MODIFIED_MA_STOP_NAME; public static MethodHandle WICKRA_MODIFIED_MA_STOP_RESET; public static MethodHandle WICKRA_MODIFIED_MA_STOP_FREE; public static MethodHandle WICKRA_MURREY_MATH_LINES_NEW; public static MethodHandle WICKRA_MURREY_MATH_LINES_UPDATE; public static MethodHandle WICKRA_MURREY_MATH_LINES_WARMUP_PERIOD; public static MethodHandle WICKRA_MURREY_MATH_LINES_IS_READY; + public static MethodHandle WICKRA_MURREY_MATH_LINES_NAME; public static MethodHandle WICKRA_MURREY_MATH_LINES_RESET; public static MethodHandle WICKRA_MURREY_MATH_LINES_FREE; public static MethodHandle WICKRA_NRTR_NEW; public static MethodHandle WICKRA_NRTR_UPDATE; public static MethodHandle WICKRA_NRTR_WARMUP_PERIOD; public static MethodHandle WICKRA_NRTR_IS_READY; + public static MethodHandle WICKRA_NRTR_NAME; public static MethodHandle WICKRA_NRTR_RESET; public static MethodHandle WICKRA_NRTR_FREE; public static MethodHandle WICKRA_OPENING_RANGE_NEW; public static MethodHandle WICKRA_OPENING_RANGE_UPDATE; public static MethodHandle WICKRA_OPENING_RANGE_WARMUP_PERIOD; public static MethodHandle WICKRA_OPENING_RANGE_IS_READY; + public static MethodHandle WICKRA_OPENING_RANGE_NAME; public static MethodHandle WICKRA_OPENING_RANGE_RESET; public static MethodHandle WICKRA_OPENING_RANGE_FREE; public static MethodHandle WICKRA_OVERNIGHT_INTRADAY_RETURN_NEW; public static MethodHandle WICKRA_OVERNIGHT_INTRADAY_RETURN_UPDATE; public static MethodHandle WICKRA_OVERNIGHT_INTRADAY_RETURN_WARMUP_PERIOD; public static MethodHandle WICKRA_OVERNIGHT_INTRADAY_RETURN_IS_READY; + public static MethodHandle WICKRA_OVERNIGHT_INTRADAY_RETURN_NAME; public static MethodHandle WICKRA_OVERNIGHT_INTRADAY_RETURN_RESET; public static MethodHandle WICKRA_OVERNIGHT_INTRADAY_RETURN_FREE; public static MethodHandle WICKRA_PROJECTION_BANDS_NEW; public static MethodHandle WICKRA_PROJECTION_BANDS_UPDATE; public static MethodHandle WICKRA_PROJECTION_BANDS_WARMUP_PERIOD; public static MethodHandle WICKRA_PROJECTION_BANDS_IS_READY; + public static MethodHandle WICKRA_PROJECTION_BANDS_NAME; public static MethodHandle WICKRA_PROJECTION_BANDS_RESET; public static MethodHandle WICKRA_PROJECTION_BANDS_FREE; public static MethodHandle WICKRA_QQE_NEW; public static MethodHandle WICKRA_QQE_UPDATE; public static MethodHandle WICKRA_QQE_WARMUP_PERIOD; public static MethodHandle WICKRA_QQE_IS_READY; + public static MethodHandle WICKRA_QQE_NAME; public static MethodHandle WICKRA_QQE_RESET; public static MethodHandle WICKRA_QQE_FREE; public static MethodHandle WICKRA_QUARTILE_BANDS_NEW; public static MethodHandle WICKRA_QUARTILE_BANDS_UPDATE; public static MethodHandle WICKRA_QUARTILE_BANDS_WARMUP_PERIOD; public static MethodHandle WICKRA_QUARTILE_BANDS_IS_READY; + public static MethodHandle WICKRA_QUARTILE_BANDS_NAME; public static MethodHandle WICKRA_QUARTILE_BANDS_RESET; public static MethodHandle WICKRA_QUARTILE_BANDS_FREE; public static MethodHandle WICKRA_RELATIVE_STRENGTH_AB_NEW; public static MethodHandle WICKRA_RELATIVE_STRENGTH_AB_UPDATE; public static MethodHandle WICKRA_RELATIVE_STRENGTH_AB_WARMUP_PERIOD; public static MethodHandle WICKRA_RELATIVE_STRENGTH_AB_IS_READY; + public static MethodHandle WICKRA_RELATIVE_STRENGTH_AB_NAME; public static MethodHandle WICKRA_RELATIVE_STRENGTH_AB_RESET; public static MethodHandle WICKRA_RELATIVE_STRENGTH_AB_FREE; public static MethodHandle WICKRA_RWI_NEW; public static MethodHandle WICKRA_RWI_UPDATE; public static MethodHandle WICKRA_RWI_WARMUP_PERIOD; public static MethodHandle WICKRA_RWI_IS_READY; + public static MethodHandle WICKRA_RWI_NAME; public static MethodHandle WICKRA_RWI_RESET; public static MethodHandle WICKRA_RWI_FREE; public static MethodHandle WICKRA_SESSION_HIGH_LOW_NEW; public static MethodHandle WICKRA_SESSION_HIGH_LOW_UPDATE; public static MethodHandle WICKRA_SESSION_HIGH_LOW_WARMUP_PERIOD; public static MethodHandle WICKRA_SESSION_HIGH_LOW_IS_READY; + public static MethodHandle WICKRA_SESSION_HIGH_LOW_NAME; public static MethodHandle WICKRA_SESSION_HIGH_LOW_RESET; public static MethodHandle WICKRA_SESSION_HIGH_LOW_FREE; public static MethodHandle WICKRA_SESSION_RANGE_NEW; public static MethodHandle WICKRA_SESSION_RANGE_UPDATE; public static MethodHandle WICKRA_SESSION_RANGE_WARMUP_PERIOD; public static MethodHandle WICKRA_SESSION_RANGE_IS_READY; + public static MethodHandle WICKRA_SESSION_RANGE_NAME; public static MethodHandle WICKRA_SESSION_RANGE_RESET; public static MethodHandle WICKRA_SESSION_RANGE_FREE; public static MethodHandle WICKRA_SMOOTHED_HEIKIN_ASHI_NEW; public static MethodHandle WICKRA_SMOOTHED_HEIKIN_ASHI_UPDATE; public static MethodHandle WICKRA_SMOOTHED_HEIKIN_ASHI_WARMUP_PERIOD; public static MethodHandle WICKRA_SMOOTHED_HEIKIN_ASHI_IS_READY; + public static MethodHandle WICKRA_SMOOTHED_HEIKIN_ASHI_NAME; public static MethodHandle WICKRA_SMOOTHED_HEIKIN_ASHI_RESET; public static MethodHandle WICKRA_SMOOTHED_HEIKIN_ASHI_FREE; public static MethodHandle WICKRA_SPREAD_BOLLINGER_BANDS_NEW; public static MethodHandle WICKRA_SPREAD_BOLLINGER_BANDS_UPDATE; public static MethodHandle WICKRA_SPREAD_BOLLINGER_BANDS_WARMUP_PERIOD; public static MethodHandle WICKRA_SPREAD_BOLLINGER_BANDS_IS_READY; + public static MethodHandle WICKRA_SPREAD_BOLLINGER_BANDS_NAME; public static MethodHandle WICKRA_SPREAD_BOLLINGER_BANDS_RESET; public static MethodHandle WICKRA_SPREAD_BOLLINGER_BANDS_FREE; public static MethodHandle WICKRA_STANDARD_ERROR_BANDS_NEW; public static MethodHandle WICKRA_STANDARD_ERROR_BANDS_UPDATE; public static MethodHandle WICKRA_STANDARD_ERROR_BANDS_WARMUP_PERIOD; public static MethodHandle WICKRA_STANDARD_ERROR_BANDS_IS_READY; + public static MethodHandle WICKRA_STANDARD_ERROR_BANDS_NAME; public static MethodHandle WICKRA_STANDARD_ERROR_BANDS_RESET; public static MethodHandle WICKRA_STANDARD_ERROR_BANDS_FREE; public static MethodHandle WICKRA_STARC_BANDS_NEW; public static MethodHandle WICKRA_STARC_BANDS_UPDATE; public static MethodHandle WICKRA_STARC_BANDS_WARMUP_PERIOD; public static MethodHandle WICKRA_STARC_BANDS_IS_READY; + public static MethodHandle WICKRA_STARC_BANDS_NAME; public static MethodHandle WICKRA_STARC_BANDS_RESET; public static MethodHandle WICKRA_STARC_BANDS_FREE; public static MethodHandle WICKRA_STOCHASTIC_NEW; public static MethodHandle WICKRA_STOCHASTIC_UPDATE; public static MethodHandle WICKRA_STOCHASTIC_WARMUP_PERIOD; public static MethodHandle WICKRA_STOCHASTIC_IS_READY; + public static MethodHandle WICKRA_STOCHASTIC_NAME; public static MethodHandle WICKRA_STOCHASTIC_RESET; public static MethodHandle WICKRA_STOCHASTIC_FREE; public static MethodHandle WICKRA_SUPER_TREND_NEW; public static MethodHandle WICKRA_SUPER_TREND_UPDATE; public static MethodHandle WICKRA_SUPER_TREND_WARMUP_PERIOD; public static MethodHandle WICKRA_SUPER_TREND_IS_READY; + public static MethodHandle WICKRA_SUPER_TREND_NAME; public static MethodHandle WICKRA_SUPER_TREND_RESET; public static MethodHandle WICKRA_SUPER_TREND_FREE; public static MethodHandle WICKRA_TD_LINES_NEW; public static MethodHandle WICKRA_TD_LINES_UPDATE; public static MethodHandle WICKRA_TD_LINES_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_LINES_IS_READY; + public static MethodHandle WICKRA_TD_LINES_NAME; public static MethodHandle WICKRA_TD_LINES_RESET; public static MethodHandle WICKRA_TD_LINES_FREE; public static MethodHandle WICKRA_TD_MOVING_AVERAGE_NEW; public static MethodHandle WICKRA_TD_MOVING_AVERAGE_UPDATE; public static MethodHandle WICKRA_TD_MOVING_AVERAGE_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_MOVING_AVERAGE_IS_READY; + public static MethodHandle WICKRA_TD_MOVING_AVERAGE_NAME; public static MethodHandle WICKRA_TD_MOVING_AVERAGE_RESET; public static MethodHandle WICKRA_TD_MOVING_AVERAGE_FREE; public static MethodHandle WICKRA_TD_RANGE_PROJECTION_NEW; public static MethodHandle WICKRA_TD_RANGE_PROJECTION_UPDATE; public static MethodHandle WICKRA_TD_RANGE_PROJECTION_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_RANGE_PROJECTION_IS_READY; + public static MethodHandle WICKRA_TD_RANGE_PROJECTION_NAME; public static MethodHandle WICKRA_TD_RANGE_PROJECTION_RESET; public static MethodHandle WICKRA_TD_RANGE_PROJECTION_FREE; public static MethodHandle WICKRA_TD_RISK_LEVEL_NEW; public static MethodHandle WICKRA_TD_RISK_LEVEL_UPDATE; public static MethodHandle WICKRA_TD_RISK_LEVEL_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_RISK_LEVEL_IS_READY; + public static MethodHandle WICKRA_TD_RISK_LEVEL_NAME; public static MethodHandle WICKRA_TD_RISK_LEVEL_RESET; public static MethodHandle WICKRA_TD_RISK_LEVEL_FREE; public static MethodHandle WICKRA_TD_SEQUENTIAL_NEW; public static MethodHandle WICKRA_TD_SEQUENTIAL_UPDATE; public static MethodHandle WICKRA_TD_SEQUENTIAL_WARMUP_PERIOD; public static MethodHandle WICKRA_TD_SEQUENTIAL_IS_READY; + public static MethodHandle WICKRA_TD_SEQUENTIAL_NAME; public static MethodHandle WICKRA_TD_SEQUENTIAL_RESET; public static MethodHandle WICKRA_TD_SEQUENTIAL_FREE; public static MethodHandle WICKRA_TTM_SQUEEZE_NEW; public static MethodHandle WICKRA_TTM_SQUEEZE_UPDATE; public static MethodHandle WICKRA_TTM_SQUEEZE_WARMUP_PERIOD; public static MethodHandle WICKRA_TTM_SQUEEZE_IS_READY; + public static MethodHandle WICKRA_TTM_SQUEEZE_NAME; public static MethodHandle WICKRA_TTM_SQUEEZE_RESET; public static MethodHandle WICKRA_TTM_SQUEEZE_FREE; public static MethodHandle WICKRA_VALUE_AREA_NEW; public static MethodHandle WICKRA_VALUE_AREA_UPDATE; public static MethodHandle WICKRA_VALUE_AREA_WARMUP_PERIOD; public static MethodHandle WICKRA_VALUE_AREA_IS_READY; + public static MethodHandle WICKRA_VALUE_AREA_NAME; public static MethodHandle WICKRA_VALUE_AREA_RESET; public static MethodHandle WICKRA_VALUE_AREA_FREE; public static MethodHandle WICKRA_VOLATILITY_CONE_NEW; public static MethodHandle WICKRA_VOLATILITY_CONE_UPDATE; public static MethodHandle WICKRA_VOLATILITY_CONE_WARMUP_PERIOD; public static MethodHandle WICKRA_VOLATILITY_CONE_IS_READY; + public static MethodHandle WICKRA_VOLATILITY_CONE_NAME; public static MethodHandle WICKRA_VOLATILITY_CONE_RESET; public static MethodHandle WICKRA_VOLATILITY_CONE_FREE; public static MethodHandle WICKRA_VOLUME_WEIGHTED_MACD_NEW; public static MethodHandle WICKRA_VOLUME_WEIGHTED_MACD_UPDATE; public static MethodHandle WICKRA_VOLUME_WEIGHTED_MACD_WARMUP_PERIOD; public static MethodHandle WICKRA_VOLUME_WEIGHTED_MACD_IS_READY; + public static MethodHandle WICKRA_VOLUME_WEIGHTED_MACD_NAME; public static MethodHandle WICKRA_VOLUME_WEIGHTED_MACD_RESET; public static MethodHandle WICKRA_VOLUME_WEIGHTED_MACD_FREE; public static MethodHandle WICKRA_VOLUME_WEIGHTED_SR_NEW; public static MethodHandle WICKRA_VOLUME_WEIGHTED_SR_UPDATE; public static MethodHandle WICKRA_VOLUME_WEIGHTED_SR_WARMUP_PERIOD; public static MethodHandle WICKRA_VOLUME_WEIGHTED_SR_IS_READY; + public static MethodHandle WICKRA_VOLUME_WEIGHTED_SR_NAME; public static MethodHandle WICKRA_VOLUME_WEIGHTED_SR_RESET; public static MethodHandle WICKRA_VOLUME_WEIGHTED_SR_FREE; public static MethodHandle WICKRA_VORTEX_NEW; public static MethodHandle WICKRA_VORTEX_UPDATE; public static MethodHandle WICKRA_VORTEX_WARMUP_PERIOD; public static MethodHandle WICKRA_VORTEX_IS_READY; + public static MethodHandle WICKRA_VORTEX_NAME; public static MethodHandle WICKRA_VORTEX_RESET; public static MethodHandle WICKRA_VORTEX_FREE; public static MethodHandle WICKRA_VWAP_STD_DEV_BANDS_NEW; public static MethodHandle WICKRA_VWAP_STD_DEV_BANDS_UPDATE; public static MethodHandle WICKRA_VWAP_STD_DEV_BANDS_WARMUP_PERIOD; public static MethodHandle WICKRA_VWAP_STD_DEV_BANDS_IS_READY; + public static MethodHandle WICKRA_VWAP_STD_DEV_BANDS_NAME; public static MethodHandle WICKRA_VWAP_STD_DEV_BANDS_RESET; public static MethodHandle WICKRA_VWAP_STD_DEV_BANDS_FREE; public static MethodHandle WICKRA_WAVE_TREND_NEW; public static MethodHandle WICKRA_WAVE_TREND_UPDATE; public static MethodHandle WICKRA_WAVE_TREND_WARMUP_PERIOD; public static MethodHandle WICKRA_WAVE_TREND_IS_READY; + public static MethodHandle WICKRA_WAVE_TREND_NAME; public static MethodHandle WICKRA_WAVE_TREND_RESET; public static MethodHandle WICKRA_WAVE_TREND_FREE; public static MethodHandle WICKRA_WILLIAMS_FRACTALS_NEW; public static MethodHandle WICKRA_WILLIAMS_FRACTALS_UPDATE; public static MethodHandle WICKRA_WILLIAMS_FRACTALS_WARMUP_PERIOD; public static MethodHandle WICKRA_WILLIAMS_FRACTALS_IS_READY; + public static MethodHandle WICKRA_WILLIAMS_FRACTALS_NAME; public static MethodHandle WICKRA_WILLIAMS_FRACTALS_RESET; public static MethodHandle WICKRA_WILLIAMS_FRACTALS_FREE; public static MethodHandle WICKRA_WOODIE_PIVOTS_NEW; public static MethodHandle WICKRA_WOODIE_PIVOTS_UPDATE; public static MethodHandle WICKRA_WOODIE_PIVOTS_WARMUP_PERIOD; public static MethodHandle WICKRA_WOODIE_PIVOTS_IS_READY; + public static MethodHandle WICKRA_WOODIE_PIVOTS_NAME; public static MethodHandle WICKRA_WOODIE_PIVOTS_RESET; public static MethodHandle WICKRA_WOODIE_PIVOTS_FREE; public static MethodHandle WICKRA_ZERO_LAG_MACD_NEW; public static MethodHandle WICKRA_ZERO_LAG_MACD_UPDATE; public static MethodHandle WICKRA_ZERO_LAG_MACD_WARMUP_PERIOD; public static MethodHandle WICKRA_ZERO_LAG_MACD_IS_READY; + public static MethodHandle WICKRA_ZERO_LAG_MACD_NAME; public static MethodHandle WICKRA_ZERO_LAG_MACD_RESET; public static MethodHandle WICKRA_ZERO_LAG_MACD_FREE; public static MethodHandle WICKRA_ZIG_ZAG_NEW; public static MethodHandle WICKRA_ZIG_ZAG_UPDATE; public static MethodHandle WICKRA_ZIG_ZAG_WARMUP_PERIOD; public static MethodHandle WICKRA_ZIG_ZAG_IS_READY; + public static MethodHandle WICKRA_ZIG_ZAG_NAME; public static MethodHandle WICKRA_ZIG_ZAG_RESET; public static MethodHandle WICKRA_ZIG_ZAG_FREE; public static MethodHandle WICKRA_DAY_OF_WEEK_PROFILE_NEW; public static MethodHandle WICKRA_DAY_OF_WEEK_PROFILE_UPDATE; public static MethodHandle WICKRA_DAY_OF_WEEK_PROFILE_WARMUP_PERIOD; public static MethodHandle WICKRA_DAY_OF_WEEK_PROFILE_IS_READY; + public static MethodHandle WICKRA_DAY_OF_WEEK_PROFILE_NAME; public static MethodHandle WICKRA_DAY_OF_WEEK_PROFILE_RESET; public static MethodHandle WICKRA_DAY_OF_WEEK_PROFILE_FREE; public static MethodHandle WICKRA_INTRADAY_VOLATILITY_PROFILE_NEW; public static MethodHandle WICKRA_INTRADAY_VOLATILITY_PROFILE_UPDATE; public static MethodHandle WICKRA_INTRADAY_VOLATILITY_PROFILE_WARMUP_PERIOD; public static MethodHandle WICKRA_INTRADAY_VOLATILITY_PROFILE_IS_READY; + public static MethodHandle WICKRA_INTRADAY_VOLATILITY_PROFILE_NAME; public static MethodHandle WICKRA_INTRADAY_VOLATILITY_PROFILE_RESET; public static MethodHandle WICKRA_INTRADAY_VOLATILITY_PROFILE_FREE; public static MethodHandle WICKRA_TIME_OF_DAY_RETURN_PROFILE_NEW; public static MethodHandle WICKRA_TIME_OF_DAY_RETURN_PROFILE_UPDATE; public static MethodHandle WICKRA_TIME_OF_DAY_RETURN_PROFILE_WARMUP_PERIOD; public static MethodHandle WICKRA_TIME_OF_DAY_RETURN_PROFILE_IS_READY; + public static MethodHandle WICKRA_TIME_OF_DAY_RETURN_PROFILE_NAME; public static MethodHandle WICKRA_TIME_OF_DAY_RETURN_PROFILE_RESET; public static MethodHandle WICKRA_TIME_OF_DAY_RETURN_PROFILE_FREE; public static MethodHandle WICKRA_TPO_PROFILE_NEW; public static MethodHandle WICKRA_TPO_PROFILE_UPDATE; public static MethodHandle WICKRA_TPO_PROFILE_WARMUP_PERIOD; public static MethodHandle WICKRA_TPO_PROFILE_IS_READY; + public static MethodHandle WICKRA_TPO_PROFILE_NAME; public static MethodHandle WICKRA_TPO_PROFILE_RESET; public static MethodHandle WICKRA_TPO_PROFILE_FREE; public static MethodHandle WICKRA_VOLUME_BY_TIME_PROFILE_NEW; public static MethodHandle WICKRA_VOLUME_BY_TIME_PROFILE_UPDATE; public static MethodHandle WICKRA_VOLUME_BY_TIME_PROFILE_WARMUP_PERIOD; public static MethodHandle WICKRA_VOLUME_BY_TIME_PROFILE_IS_READY; + public static MethodHandle WICKRA_VOLUME_BY_TIME_PROFILE_NAME; public static MethodHandle WICKRA_VOLUME_BY_TIME_PROFILE_RESET; public static MethodHandle WICKRA_VOLUME_BY_TIME_PROFILE_FREE; public static MethodHandle WICKRA_VOLUME_PROFILE_NEW; public static MethodHandle WICKRA_VOLUME_PROFILE_UPDATE; public static MethodHandle WICKRA_VOLUME_PROFILE_WARMUP_PERIOD; public static MethodHandle WICKRA_VOLUME_PROFILE_IS_READY; + public static MethodHandle WICKRA_VOLUME_PROFILE_NAME; public static MethodHandle WICKRA_VOLUME_PROFILE_RESET; public static MethodHandle WICKRA_VOLUME_PROFILE_FREE; public static MethodHandle WICKRA_DOLLAR_BARS_NEW; public static MethodHandle WICKRA_DOLLAR_BARS_UPDATE; + public static MethodHandle WICKRA_DOLLAR_BARS_NAME; public static MethodHandle WICKRA_DOLLAR_BARS_RESET; public static MethodHandle WICKRA_DOLLAR_BARS_FREE; public static MethodHandle WICKRA_IMBALANCE_BARS_NEW; public static MethodHandle WICKRA_IMBALANCE_BARS_UPDATE; + public static MethodHandle WICKRA_IMBALANCE_BARS_NAME; public static MethodHandle WICKRA_IMBALANCE_BARS_RESET; public static MethodHandle WICKRA_IMBALANCE_BARS_FREE; public static MethodHandle WICKRA_KAGI_BARS_NEW; public static MethodHandle WICKRA_KAGI_BARS_UPDATE; + public static MethodHandle WICKRA_KAGI_BARS_NAME; public static MethodHandle WICKRA_KAGI_BARS_RESET; public static MethodHandle WICKRA_KAGI_BARS_FREE; public static MethodHandle WICKRA_POINT_AND_FIGURE_BARS_NEW; public static MethodHandle WICKRA_POINT_AND_FIGURE_BARS_UPDATE; + public static MethodHandle WICKRA_POINT_AND_FIGURE_BARS_NAME; public static MethodHandle WICKRA_POINT_AND_FIGURE_BARS_RESET; public static MethodHandle WICKRA_POINT_AND_FIGURE_BARS_FREE; public static MethodHandle WICKRA_RANGE_BARS_NEW; public static MethodHandle WICKRA_RANGE_BARS_UPDATE; + public static MethodHandle WICKRA_RANGE_BARS_NAME; public static MethodHandle WICKRA_RANGE_BARS_RESET; public static MethodHandle WICKRA_RANGE_BARS_FREE; public static MethodHandle WICKRA_RENKO_BARS_NEW; public static MethodHandle WICKRA_RENKO_BARS_UPDATE; + public static MethodHandle WICKRA_RENKO_BARS_NAME; public static MethodHandle WICKRA_RENKO_BARS_RESET; public static MethodHandle WICKRA_RENKO_BARS_FREE; public static MethodHandle WICKRA_RUN_BARS_NEW; public static MethodHandle WICKRA_RUN_BARS_UPDATE; + public static MethodHandle WICKRA_RUN_BARS_NAME; public static MethodHandle WICKRA_RUN_BARS_RESET; public static MethodHandle WICKRA_RUN_BARS_FREE; public static MethodHandle WICKRA_THREE_LINE_BREAK_BARS_NEW; public static MethodHandle WICKRA_THREE_LINE_BREAK_BARS_UPDATE; + public static MethodHandle WICKRA_THREE_LINE_BREAK_BARS_NAME; public static MethodHandle WICKRA_THREE_LINE_BREAK_BARS_RESET; public static MethodHandle WICKRA_THREE_LINE_BREAK_BARS_FREE; public static MethodHandle WICKRA_TICK_BARS_NEW; public static MethodHandle WICKRA_TICK_BARS_UPDATE; + public static MethodHandle WICKRA_TICK_BARS_NAME; public static MethodHandle WICKRA_TICK_BARS_RESET; public static MethodHandle WICKRA_TICK_BARS_FREE; public static MethodHandle WICKRA_VOLUME_BARS_NEW; public static MethodHandle WICKRA_VOLUME_BARS_UPDATE; + public static MethodHandle WICKRA_VOLUME_BARS_NAME; public static MethodHandle WICKRA_VOLUME_BARS_RESET; public static MethodHandle WICKRA_VOLUME_BARS_FREE; public static MethodHandle WICKRA_MACD_EXT_NEW; public static MethodHandle WICKRA_MACD_EXT_UPDATE; public static MethodHandle WICKRA_MACD_EXT_WARMUP_PERIOD; public static MethodHandle WICKRA_MACD_EXT_IS_READY; + public static MethodHandle WICKRA_MACD_EXT_NAME; public static MethodHandle WICKRA_MACD_EXT_RESET; public static MethodHandle WICKRA_MACD_EXT_FREE; public static MethodHandle WICKRA_FOOTPRINT_NEW; public static MethodHandle WICKRA_FOOTPRINT_UPDATE; public static MethodHandle WICKRA_FOOTPRINT_WARMUP_PERIOD; public static MethodHandle WICKRA_FOOTPRINT_IS_READY; + public static MethodHandle WICKRA_FOOTPRINT_NAME; public static MethodHandle WICKRA_FOOTPRINT_RESET; public static MethodHandle WICKRA_FOOTPRINT_FREE; @@ -3464,6 +3978,10 @@ public final class NativeMethods { init26(); init27(); init28(); + init29(); + init30(); + init31(); + init32(); } private static void init0() { @@ -3472,6 +3990,7 @@ public final class NativeMethods { WICKRA_ADAPTIVE_CYCLE_BATCH = h("wickra_adaptive_cycle_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ADAPTIVE_CYCLE_WARMUP_PERIOD = h("wickra_adaptive_cycle_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ADAPTIVE_CYCLE_IS_READY = h("wickra_adaptive_cycle_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ADAPTIVE_CYCLE_NAME = h("wickra_adaptive_cycle_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ADAPTIVE_CYCLE_RESET = h("wickra_adaptive_cycle_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADAPTIVE_CYCLE_FREE = h("wickra_adaptive_cycle_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADAPTIVE_LAGUERRE_FILTER_NEW = h("wickra_adaptive_laguerre_filter_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3479,6 +3998,7 @@ public final class NativeMethods { WICKRA_ADAPTIVE_LAGUERRE_FILTER_BATCH = h("wickra_adaptive_laguerre_filter_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ADAPTIVE_LAGUERRE_FILTER_WARMUP_PERIOD = h("wickra_adaptive_laguerre_filter_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ADAPTIVE_LAGUERRE_FILTER_IS_READY = h("wickra_adaptive_laguerre_filter_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ADAPTIVE_LAGUERRE_FILTER_NAME = h("wickra_adaptive_laguerre_filter_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ADAPTIVE_LAGUERRE_FILTER_RESET = h("wickra_adaptive_laguerre_filter_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADAPTIVE_LAGUERRE_FILTER_FREE = h("wickra_adaptive_laguerre_filter_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADAPTIVE_RSI_NEW = h("wickra_adaptive_rsi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3486,6 +4006,7 @@ public final class NativeMethods { WICKRA_ADAPTIVE_RSI_BATCH = h("wickra_adaptive_rsi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ADAPTIVE_RSI_WARMUP_PERIOD = h("wickra_adaptive_rsi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ADAPTIVE_RSI_IS_READY = h("wickra_adaptive_rsi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ADAPTIVE_RSI_NAME = h("wickra_adaptive_rsi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ADAPTIVE_RSI_RESET = h("wickra_adaptive_rsi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADAPTIVE_RSI_FREE = h("wickra_adaptive_rsi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ALMA_NEW = h("wickra_alma_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE, JAVA_DOUBLE)); @@ -3493,6 +4014,7 @@ public final class NativeMethods { WICKRA_ALMA_BATCH = h("wickra_alma_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ALMA_WARMUP_PERIOD = h("wickra_alma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ALMA_IS_READY = h("wickra_alma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ALMA_NAME = h("wickra_alma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ALMA_RESET = h("wickra_alma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ALMA_FREE = h("wickra_alma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ANCHORED_RSI_NEW = h("wickra_anchored_rsi_new", FunctionDescriptor.of(ADDRESS)); @@ -3500,6 +4022,7 @@ public final class NativeMethods { WICKRA_ANCHORED_RSI_BATCH = h("wickra_anchored_rsi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ANCHORED_RSI_WARMUP_PERIOD = h("wickra_anchored_rsi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ANCHORED_RSI_IS_READY = h("wickra_anchored_rsi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ANCHORED_RSI_NAME = h("wickra_anchored_rsi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ANCHORED_RSI_RESET = h("wickra_anchored_rsi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ANCHORED_RSI_FREE = h("wickra_anchored_rsi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_APO_NEW = h("wickra_apo_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -3507,6 +4030,7 @@ public final class NativeMethods { WICKRA_APO_BATCH = h("wickra_apo_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_APO_WARMUP_PERIOD = h("wickra_apo_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_APO_IS_READY = h("wickra_apo_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_APO_NAME = h("wickra_apo_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_APO_RESET = h("wickra_apo_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_APO_FREE = h("wickra_apo_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AUTOCORRELATION_NEW = h("wickra_autocorrelation_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -3514,6 +4038,7 @@ public final class NativeMethods { WICKRA_AUTOCORRELATION_BATCH = h("wickra_autocorrelation_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_AUTOCORRELATION_WARMUP_PERIOD = h("wickra_autocorrelation_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AUTOCORRELATION_IS_READY = h("wickra_autocorrelation_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AUTOCORRELATION_NAME = h("wickra_autocorrelation_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AUTOCORRELATION_RESET = h("wickra_autocorrelation_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AUTOCORRELATION_FREE = h("wickra_autocorrelation_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AUTOCORRELATION_PERIODOGRAM_NEW = h("wickra_autocorrelation_periodogram_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -3521,6 +4046,7 @@ public final class NativeMethods { WICKRA_AUTOCORRELATION_PERIODOGRAM_BATCH = h("wickra_autocorrelation_periodogram_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_AUTOCORRELATION_PERIODOGRAM_WARMUP_PERIOD = h("wickra_autocorrelation_periodogram_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AUTOCORRELATION_PERIODOGRAM_IS_READY = h("wickra_autocorrelation_periodogram_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AUTOCORRELATION_PERIODOGRAM_NAME = h("wickra_autocorrelation_periodogram_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AUTOCORRELATION_PERIODOGRAM_RESET = h("wickra_autocorrelation_periodogram_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AUTOCORRELATION_PERIODOGRAM_FREE = h("wickra_autocorrelation_periodogram_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AVERAGE_DRAWDOWN_NEW = h("wickra_average_drawdown_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3528,6 +4054,7 @@ public final class NativeMethods { WICKRA_AVERAGE_DRAWDOWN_BATCH = h("wickra_average_drawdown_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_AVERAGE_DRAWDOWN_WARMUP_PERIOD = h("wickra_average_drawdown_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AVERAGE_DRAWDOWN_IS_READY = h("wickra_average_drawdown_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AVERAGE_DRAWDOWN_NAME = h("wickra_average_drawdown_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AVERAGE_DRAWDOWN_RESET = h("wickra_average_drawdown_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AVERAGE_DRAWDOWN_FREE = h("wickra_average_drawdown_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BANDPASS_FILTER_NEW = h("wickra_bandpass_filter_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -3535,6 +4062,7 @@ public final class NativeMethods { WICKRA_BANDPASS_FILTER_BATCH = h("wickra_bandpass_filter_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BANDPASS_FILTER_WARMUP_PERIOD = h("wickra_bandpass_filter_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BANDPASS_FILTER_IS_READY = h("wickra_bandpass_filter_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BANDPASS_FILTER_NAME = h("wickra_bandpass_filter_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BANDPASS_FILTER_RESET = h("wickra_bandpass_filter_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BANDPASS_FILTER_FREE = h("wickra_bandpass_filter_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BIPOWER_VARIATION_NEW = h("wickra_bipower_variation_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3542,6 +4070,7 @@ public final class NativeMethods { WICKRA_BIPOWER_VARIATION_BATCH = h("wickra_bipower_variation_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BIPOWER_VARIATION_WARMUP_PERIOD = h("wickra_bipower_variation_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BIPOWER_VARIATION_IS_READY = h("wickra_bipower_variation_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BIPOWER_VARIATION_NAME = h("wickra_bipower_variation_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BIPOWER_VARIATION_RESET = h("wickra_bipower_variation_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BIPOWER_VARIATION_FREE = h("wickra_bipower_variation_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BOLLINGER_BANDWIDTH_NEW = h("wickra_bollinger_bandwidth_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -3549,6 +4078,7 @@ public final class NativeMethods { WICKRA_BOLLINGER_BANDWIDTH_BATCH = h("wickra_bollinger_bandwidth_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BOLLINGER_BANDWIDTH_WARMUP_PERIOD = h("wickra_bollinger_bandwidth_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BOLLINGER_BANDWIDTH_IS_READY = h("wickra_bollinger_bandwidth_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BOLLINGER_BANDWIDTH_NAME = h("wickra_bollinger_bandwidth_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BOLLINGER_BANDWIDTH_RESET = h("wickra_bollinger_bandwidth_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BOLLINGER_BANDWIDTH_FREE = h("wickra_bollinger_bandwidth_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BURKE_RATIO_NEW = h("wickra_burke_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3556,6 +4086,7 @@ public final class NativeMethods { WICKRA_BURKE_RATIO_BATCH = h("wickra_burke_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BURKE_RATIO_WARMUP_PERIOD = h("wickra_burke_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BURKE_RATIO_IS_READY = h("wickra_burke_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BURKE_RATIO_NAME = h("wickra_burke_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BURKE_RATIO_RESET = h("wickra_burke_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BURKE_RATIO_FREE = h("wickra_burke_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CALMAR_RATIO_NEW = h("wickra_calmar_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3563,6 +4094,7 @@ public final class NativeMethods { WICKRA_CALMAR_RATIO_BATCH = h("wickra_calmar_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CALMAR_RATIO_WARMUP_PERIOD = h("wickra_calmar_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CALMAR_RATIO_IS_READY = h("wickra_calmar_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CALMAR_RATIO_NAME = h("wickra_calmar_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CALMAR_RATIO_RESET = h("wickra_calmar_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CALMAR_RATIO_FREE = h("wickra_calmar_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CENTER_OF_GRAVITY_NEW = h("wickra_center_of_gravity_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3570,13 +4102,18 @@ public final class NativeMethods { WICKRA_CENTER_OF_GRAVITY_BATCH = h("wickra_center_of_gravity_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CENTER_OF_GRAVITY_WARMUP_PERIOD = h("wickra_center_of_gravity_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CENTER_OF_GRAVITY_IS_READY = h("wickra_center_of_gravity_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CENTER_OF_GRAVITY_NAME = h("wickra_center_of_gravity_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CENTER_OF_GRAVITY_RESET = h("wickra_center_of_gravity_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CENTER_OF_GRAVITY_FREE = h("wickra_center_of_gravity_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init1() { WICKRA_CFO_NEW = h("wickra_cfo_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_CFO_UPDATE = h("wickra_cfo_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_CFO_BATCH = h("wickra_cfo_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CFO_WARMUP_PERIOD = h("wickra_cfo_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CFO_IS_READY = h("wickra_cfo_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CFO_NAME = h("wickra_cfo_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CFO_RESET = h("wickra_cfo_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CFO_FREE = h("wickra_cfo_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CMO_NEW = h("wickra_cmo_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3584,16 +4121,15 @@ public final class NativeMethods { WICKRA_CMO_BATCH = h("wickra_cmo_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CMO_WARMUP_PERIOD = h("wickra_cmo_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CMO_IS_READY = h("wickra_cmo_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CMO_NAME = h("wickra_cmo_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CMO_RESET = h("wickra_cmo_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CMO_FREE = h("wickra_cmo_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_COEFFICIENT_OF_VARIATION_NEW = h("wickra_coefficient_of_variation_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); - } - - private static void init1() { WICKRA_COEFFICIENT_OF_VARIATION_UPDATE = h("wickra_coefficient_of_variation_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_COEFFICIENT_OF_VARIATION_BATCH = h("wickra_coefficient_of_variation_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_COEFFICIENT_OF_VARIATION_WARMUP_PERIOD = h("wickra_coefficient_of_variation_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_COEFFICIENT_OF_VARIATION_IS_READY = h("wickra_coefficient_of_variation_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_COEFFICIENT_OF_VARIATION_NAME = h("wickra_coefficient_of_variation_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_COEFFICIENT_OF_VARIATION_RESET = h("wickra_coefficient_of_variation_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_COEFFICIENT_OF_VARIATION_FREE = h("wickra_coefficient_of_variation_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_COMMON_SENSE_RATIO_NEW = h("wickra_common_sense_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3601,6 +4137,7 @@ public final class NativeMethods { WICKRA_COMMON_SENSE_RATIO_BATCH = h("wickra_common_sense_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_COMMON_SENSE_RATIO_WARMUP_PERIOD = h("wickra_common_sense_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_COMMON_SENSE_RATIO_IS_READY = h("wickra_common_sense_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_COMMON_SENSE_RATIO_NAME = h("wickra_common_sense_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_COMMON_SENSE_RATIO_RESET = h("wickra_common_sense_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_COMMON_SENSE_RATIO_FREE = h("wickra_common_sense_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CONDITIONAL_VALUE_AT_RISK_NEW = h("wickra_conditional_value_at_risk_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -3608,6 +4145,7 @@ public final class NativeMethods { WICKRA_CONDITIONAL_VALUE_AT_RISK_BATCH = h("wickra_conditional_value_at_risk_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CONDITIONAL_VALUE_AT_RISK_WARMUP_PERIOD = h("wickra_conditional_value_at_risk_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CONDITIONAL_VALUE_AT_RISK_IS_READY = h("wickra_conditional_value_at_risk_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CONDITIONAL_VALUE_AT_RISK_NAME = h("wickra_conditional_value_at_risk_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CONDITIONAL_VALUE_AT_RISK_RESET = h("wickra_conditional_value_at_risk_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CONDITIONAL_VALUE_AT_RISK_FREE = h("wickra_conditional_value_at_risk_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CONNORS_RSI_NEW = h("wickra_connors_rsi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -3615,6 +4153,7 @@ public final class NativeMethods { WICKRA_CONNORS_RSI_BATCH = h("wickra_connors_rsi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CONNORS_RSI_WARMUP_PERIOD = h("wickra_connors_rsi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CONNORS_RSI_IS_READY = h("wickra_connors_rsi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CONNORS_RSI_NAME = h("wickra_connors_rsi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CONNORS_RSI_RESET = h("wickra_connors_rsi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CONNORS_RSI_FREE = h("wickra_connors_rsi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_COPPOCK_NEW = h("wickra_coppock_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -3622,6 +4161,7 @@ public final class NativeMethods { WICKRA_COPPOCK_BATCH = h("wickra_coppock_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_COPPOCK_WARMUP_PERIOD = h("wickra_coppock_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_COPPOCK_IS_READY = h("wickra_coppock_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_COPPOCK_NAME = h("wickra_coppock_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_COPPOCK_RESET = h("wickra_coppock_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_COPPOCK_FREE = h("wickra_coppock_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CORRELATION_TREND_INDICATOR_NEW = h("wickra_correlation_trend_indicator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3629,6 +4169,7 @@ public final class NativeMethods { WICKRA_CORRELATION_TREND_INDICATOR_BATCH = h("wickra_correlation_trend_indicator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CORRELATION_TREND_INDICATOR_WARMUP_PERIOD = h("wickra_correlation_trend_indicator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CORRELATION_TREND_INDICATOR_IS_READY = h("wickra_correlation_trend_indicator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CORRELATION_TREND_INDICATOR_NAME = h("wickra_correlation_trend_indicator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CORRELATION_TREND_INDICATOR_RESET = h("wickra_correlation_trend_indicator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CORRELATION_TREND_INDICATOR_FREE = h("wickra_correlation_trend_indicator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CYBERNETIC_CYCLE_NEW = h("wickra_cybernetic_cycle_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3636,6 +4177,7 @@ public final class NativeMethods { WICKRA_CYBERNETIC_CYCLE_BATCH = h("wickra_cybernetic_cycle_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CYBERNETIC_CYCLE_WARMUP_PERIOD = h("wickra_cybernetic_cycle_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CYBERNETIC_CYCLE_IS_READY = h("wickra_cybernetic_cycle_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CYBERNETIC_CYCLE_NAME = h("wickra_cybernetic_cycle_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CYBERNETIC_CYCLE_RESET = h("wickra_cybernetic_cycle_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CYBERNETIC_CYCLE_FREE = h("wickra_cybernetic_cycle_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DECYCLER_NEW = h("wickra_decycler_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3643,6 +4185,7 @@ public final class NativeMethods { WICKRA_DECYCLER_BATCH = h("wickra_decycler_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DECYCLER_WARMUP_PERIOD = h("wickra_decycler_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DECYCLER_IS_READY = h("wickra_decycler_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DECYCLER_NAME = h("wickra_decycler_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DECYCLER_RESET = h("wickra_decycler_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DECYCLER_FREE = h("wickra_decycler_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DECYCLER_OSCILLATOR_NEW = h("wickra_decycler_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -3650,6 +4193,7 @@ public final class NativeMethods { WICKRA_DECYCLER_OSCILLATOR_BATCH = h("wickra_decycler_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DECYCLER_OSCILLATOR_WARMUP_PERIOD = h("wickra_decycler_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DECYCLER_OSCILLATOR_IS_READY = h("wickra_decycler_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DECYCLER_OSCILLATOR_NAME = h("wickra_decycler_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DECYCLER_OSCILLATOR_RESET = h("wickra_decycler_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DECYCLER_OSCILLATOR_FREE = h("wickra_decycler_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DEMA_NEW = h("wickra_dema_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3657,6 +4201,7 @@ public final class NativeMethods { WICKRA_DEMA_BATCH = h("wickra_dema_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DEMA_WARMUP_PERIOD = h("wickra_dema_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DEMA_IS_READY = h("wickra_dema_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DEMA_NAME = h("wickra_dema_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DEMA_RESET = h("wickra_dema_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DEMA_FREE = h("wickra_dema_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DERIVATIVE_OSCILLATOR_NEW = h("wickra_derivative_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -3664,6 +4209,7 @@ public final class NativeMethods { WICKRA_DERIVATIVE_OSCILLATOR_BATCH = h("wickra_derivative_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DERIVATIVE_OSCILLATOR_WARMUP_PERIOD = h("wickra_derivative_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DERIVATIVE_OSCILLATOR_IS_READY = h("wickra_derivative_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DERIVATIVE_OSCILLATOR_NAME = h("wickra_derivative_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DERIVATIVE_OSCILLATOR_RESET = h("wickra_derivative_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DERIVATIVE_OSCILLATOR_FREE = h("wickra_derivative_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DETRENDED_STD_DEV_NEW = h("wickra_detrended_std_dev_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3671,6 +4217,7 @@ public final class NativeMethods { WICKRA_DETRENDED_STD_DEV_BATCH = h("wickra_detrended_std_dev_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DETRENDED_STD_DEV_WARMUP_PERIOD = h("wickra_detrended_std_dev_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DETRENDED_STD_DEV_IS_READY = h("wickra_detrended_std_dev_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DETRENDED_STD_DEV_NAME = h("wickra_detrended_std_dev_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DETRENDED_STD_DEV_RESET = h("wickra_detrended_std_dev_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DETRENDED_STD_DEV_FREE = h("wickra_detrended_std_dev_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DISPARITY_INDEX_NEW = h("wickra_disparity_index_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3678,13 +4225,18 @@ public final class NativeMethods { WICKRA_DISPARITY_INDEX_BATCH = h("wickra_disparity_index_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DISPARITY_INDEX_WARMUP_PERIOD = h("wickra_disparity_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DISPARITY_INDEX_IS_READY = h("wickra_disparity_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DISPARITY_INDEX_NAME = h("wickra_disparity_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DISPARITY_INDEX_RESET = h("wickra_disparity_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DISPARITY_INDEX_FREE = h("wickra_disparity_index_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init2() { WICKRA_DPO_NEW = h("wickra_dpo_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_DPO_UPDATE = h("wickra_dpo_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_DPO_BATCH = h("wickra_dpo_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DPO_WARMUP_PERIOD = h("wickra_dpo_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DPO_IS_READY = h("wickra_dpo_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DPO_NAME = h("wickra_dpo_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DPO_RESET = h("wickra_dpo_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DPO_FREE = h("wickra_dpo_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DRAWDOWN_DURATION_NEW = h("wickra_drawdown_duration_new", FunctionDescriptor.of(ADDRESS)); @@ -3692,6 +4244,7 @@ public final class NativeMethods { WICKRA_DRAWDOWN_DURATION_BATCH = h("wickra_drawdown_duration_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DRAWDOWN_DURATION_WARMUP_PERIOD = h("wickra_drawdown_duration_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DRAWDOWN_DURATION_IS_READY = h("wickra_drawdown_duration_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DRAWDOWN_DURATION_NAME = h("wickra_drawdown_duration_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DRAWDOWN_DURATION_RESET = h("wickra_drawdown_duration_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DRAWDOWN_DURATION_FREE = h("wickra_drawdown_duration_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DYNAMIC_MOMENTUM_INDEX_NEW = h("wickra_dynamic_momentum_index_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3699,6 +4252,7 @@ public final class NativeMethods { WICKRA_DYNAMIC_MOMENTUM_INDEX_BATCH = h("wickra_dynamic_momentum_index_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DYNAMIC_MOMENTUM_INDEX_WARMUP_PERIOD = h("wickra_dynamic_momentum_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DYNAMIC_MOMENTUM_INDEX_IS_READY = h("wickra_dynamic_momentum_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DYNAMIC_MOMENTUM_INDEX_NAME = h("wickra_dynamic_momentum_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DYNAMIC_MOMENTUM_INDEX_RESET = h("wickra_dynamic_momentum_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DYNAMIC_MOMENTUM_INDEX_FREE = h("wickra_dynamic_momentum_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EHLERS_STOCHASTIC_NEW = h("wickra_ehlers_stochastic_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3706,16 +4260,15 @@ public final class NativeMethods { WICKRA_EHLERS_STOCHASTIC_BATCH = h("wickra_ehlers_stochastic_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_EHLERS_STOCHASTIC_WARMUP_PERIOD = h("wickra_ehlers_stochastic_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_EHLERS_STOCHASTIC_IS_READY = h("wickra_ehlers_stochastic_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_EHLERS_STOCHASTIC_NAME = h("wickra_ehlers_stochastic_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_EHLERS_STOCHASTIC_RESET = h("wickra_ehlers_stochastic_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EHLERS_STOCHASTIC_FREE = h("wickra_ehlers_stochastic_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EHMA_NEW = h("wickra_ehma_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_EHMA_UPDATE = h("wickra_ehma_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); - } - - private static void init2() { WICKRA_EHMA_BATCH = h("wickra_ehma_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_EHMA_WARMUP_PERIOD = h("wickra_ehma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_EHMA_IS_READY = h("wickra_ehma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_EHMA_NAME = h("wickra_ehma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_EHMA_RESET = h("wickra_ehma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EHMA_FREE = h("wickra_ehma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ELDER_IMPULSE_NEW = h("wickra_elder_impulse_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -3723,6 +4276,7 @@ public final class NativeMethods { WICKRA_ELDER_IMPULSE_BATCH = h("wickra_elder_impulse_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ELDER_IMPULSE_WARMUP_PERIOD = h("wickra_elder_impulse_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ELDER_IMPULSE_IS_READY = h("wickra_elder_impulse_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ELDER_IMPULSE_NAME = h("wickra_elder_impulse_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ELDER_IMPULSE_RESET = h("wickra_elder_impulse_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ELDER_IMPULSE_FREE = h("wickra_elder_impulse_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EMA_NEW = h("wickra_ema_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3730,6 +4284,7 @@ public final class NativeMethods { WICKRA_EMA_BATCH = h("wickra_ema_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_EMA_WARMUP_PERIOD = h("wickra_ema_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_EMA_IS_READY = h("wickra_ema_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_EMA_NAME = h("wickra_ema_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_EMA_RESET = h("wickra_ema_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EMA_FREE = h("wickra_ema_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EMPIRICAL_MODE_DECOMPOSITION_NEW = h("wickra_empirical_mode_decomposition_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -3737,6 +4292,7 @@ public final class NativeMethods { WICKRA_EMPIRICAL_MODE_DECOMPOSITION_BATCH = h("wickra_empirical_mode_decomposition_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_EMPIRICAL_MODE_DECOMPOSITION_WARMUP_PERIOD = h("wickra_empirical_mode_decomposition_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_EMPIRICAL_MODE_DECOMPOSITION_IS_READY = h("wickra_empirical_mode_decomposition_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_EMPIRICAL_MODE_DECOMPOSITION_NAME = h("wickra_empirical_mode_decomposition_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_EMPIRICAL_MODE_DECOMPOSITION_RESET = h("wickra_empirical_mode_decomposition_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EMPIRICAL_MODE_DECOMPOSITION_FREE = h("wickra_empirical_mode_decomposition_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EVEN_BETTER_SINEWAVE_NEW = h("wickra_even_better_sinewave_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -3744,6 +4300,7 @@ public final class NativeMethods { WICKRA_EVEN_BETTER_SINEWAVE_BATCH = h("wickra_even_better_sinewave_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_EVEN_BETTER_SINEWAVE_WARMUP_PERIOD = h("wickra_even_better_sinewave_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_EVEN_BETTER_SINEWAVE_IS_READY = h("wickra_even_better_sinewave_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_EVEN_BETTER_SINEWAVE_NAME = h("wickra_even_better_sinewave_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_EVEN_BETTER_SINEWAVE_RESET = h("wickra_even_better_sinewave_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EVEN_BETTER_SINEWAVE_FREE = h("wickra_even_better_sinewave_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EWMA_VOLATILITY_NEW = h("wickra_ewma_volatility_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); @@ -3751,6 +4308,7 @@ public final class NativeMethods { WICKRA_EWMA_VOLATILITY_BATCH = h("wickra_ewma_volatility_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_EWMA_VOLATILITY_WARMUP_PERIOD = h("wickra_ewma_volatility_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_EWMA_VOLATILITY_IS_READY = h("wickra_ewma_volatility_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_EWMA_VOLATILITY_NAME = h("wickra_ewma_volatility_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_EWMA_VOLATILITY_RESET = h("wickra_ewma_volatility_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EWMA_VOLATILITY_FREE = h("wickra_ewma_volatility_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EXPECTANCY_NEW = h("wickra_expectancy_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3758,6 +4316,7 @@ public final class NativeMethods { WICKRA_EXPECTANCY_BATCH = h("wickra_expectancy_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_EXPECTANCY_WARMUP_PERIOD = h("wickra_expectancy_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_EXPECTANCY_IS_READY = h("wickra_expectancy_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_EXPECTANCY_NAME = h("wickra_expectancy_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_EXPECTANCY_RESET = h("wickra_expectancy_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EXPECTANCY_FREE = h("wickra_expectancy_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FAMA_NEW = h("wickra_fama_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE)); @@ -3765,6 +4324,7 @@ public final class NativeMethods { WICKRA_FAMA_BATCH = h("wickra_fama_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_FAMA_WARMUP_PERIOD = h("wickra_fama_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FAMA_IS_READY = h("wickra_fama_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FAMA_NAME = h("wickra_fama_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FAMA_RESET = h("wickra_fama_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FAMA_FREE = h("wickra_fama_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FISHER_RSI_NEW = h("wickra_fisher_rsi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3772,6 +4332,7 @@ public final class NativeMethods { WICKRA_FISHER_RSI_BATCH = h("wickra_fisher_rsi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_FISHER_RSI_WARMUP_PERIOD = h("wickra_fisher_rsi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FISHER_RSI_IS_READY = h("wickra_fisher_rsi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FISHER_RSI_NAME = h("wickra_fisher_rsi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FISHER_RSI_RESET = h("wickra_fisher_rsi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FISHER_RSI_FREE = h("wickra_fisher_rsi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FISHER_TRANSFORM_NEW = h("wickra_fisher_transform_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3779,6 +4340,7 @@ public final class NativeMethods { WICKRA_FISHER_TRANSFORM_BATCH = h("wickra_fisher_transform_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_FISHER_TRANSFORM_WARMUP_PERIOD = h("wickra_fisher_transform_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FISHER_TRANSFORM_IS_READY = h("wickra_fisher_transform_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FISHER_TRANSFORM_NAME = h("wickra_fisher_transform_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FISHER_TRANSFORM_RESET = h("wickra_fisher_transform_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FISHER_TRANSFORM_FREE = h("wickra_fisher_transform_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FRAMA_NEW = h("wickra_frama_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3786,13 +4348,18 @@ public final class NativeMethods { WICKRA_FRAMA_BATCH = h("wickra_frama_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_FRAMA_WARMUP_PERIOD = h("wickra_frama_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FRAMA_IS_READY = h("wickra_frama_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FRAMA_NAME = h("wickra_frama_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FRAMA_RESET = h("wickra_frama_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FRAMA_FREE = h("wickra_frama_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init3() { WICKRA_GAIN_LOSS_RATIO_NEW = h("wickra_gain_loss_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_GAIN_LOSS_RATIO_UPDATE = h("wickra_gain_loss_ratio_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_GAIN_LOSS_RATIO_BATCH = h("wickra_gain_loss_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_GAIN_LOSS_RATIO_WARMUP_PERIOD = h("wickra_gain_loss_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_GAIN_LOSS_RATIO_IS_READY = h("wickra_gain_loss_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_GAIN_LOSS_RATIO_NAME = h("wickra_gain_loss_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_GAIN_LOSS_RATIO_RESET = h("wickra_gain_loss_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GAIN_LOSS_RATIO_FREE = h("wickra_gain_loss_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GAIN_TO_PAIN_RATIO_NEW = h("wickra_gain_to_pain_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3800,6 +4367,7 @@ public final class NativeMethods { WICKRA_GAIN_TO_PAIN_RATIO_BATCH = h("wickra_gain_to_pain_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_GAIN_TO_PAIN_RATIO_WARMUP_PERIOD = h("wickra_gain_to_pain_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_GAIN_TO_PAIN_RATIO_IS_READY = h("wickra_gain_to_pain_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_GAIN_TO_PAIN_RATIO_NAME = h("wickra_gain_to_pain_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_GAIN_TO_PAIN_RATIO_RESET = h("wickra_gain_to_pain_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GAIN_TO_PAIN_RATIO_FREE = h("wickra_gain_to_pain_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GARCH11_NEW = h("wickra_garch11_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); @@ -3807,6 +4375,7 @@ public final class NativeMethods { WICKRA_GARCH11_BATCH = h("wickra_garch11_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_GARCH11_WARMUP_PERIOD = h("wickra_garch11_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_GARCH11_IS_READY = h("wickra_garch11_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_GARCH11_NAME = h("wickra_garch11_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_GARCH11_RESET = h("wickra_garch11_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GARCH11_FREE = h("wickra_garch11_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GENERALIZED_DEMA_NEW = h("wickra_generalized_dema_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -3814,6 +4383,7 @@ public final class NativeMethods { WICKRA_GENERALIZED_DEMA_BATCH = h("wickra_generalized_dema_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_GENERALIZED_DEMA_WARMUP_PERIOD = h("wickra_generalized_dema_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_GENERALIZED_DEMA_IS_READY = h("wickra_generalized_dema_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_GENERALIZED_DEMA_NAME = h("wickra_generalized_dema_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_GENERALIZED_DEMA_RESET = h("wickra_generalized_dema_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GENERALIZED_DEMA_FREE = h("wickra_generalized_dema_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GEOMETRIC_MA_NEW = h("wickra_geometric_ma_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3821,6 +4391,7 @@ public final class NativeMethods { WICKRA_GEOMETRIC_MA_BATCH = h("wickra_geometric_ma_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_GEOMETRIC_MA_WARMUP_PERIOD = h("wickra_geometric_ma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_GEOMETRIC_MA_IS_READY = h("wickra_geometric_ma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_GEOMETRIC_MA_NAME = h("wickra_geometric_ma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_GEOMETRIC_MA_RESET = h("wickra_geometric_ma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GEOMETRIC_MA_FREE = h("wickra_geometric_ma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIGHPASS_FILTER_NEW = h("wickra_highpass_filter_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3828,16 +4399,15 @@ public final class NativeMethods { WICKRA_HIGHPASS_FILTER_BATCH = h("wickra_highpass_filter_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HIGHPASS_FILTER_WARMUP_PERIOD = h("wickra_highpass_filter_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HIGHPASS_FILTER_IS_READY = h("wickra_highpass_filter_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HIGHPASS_FILTER_NAME = h("wickra_highpass_filter_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HIGHPASS_FILTER_RESET = h("wickra_highpass_filter_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIGHPASS_FILTER_FREE = h("wickra_highpass_filter_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HILBERT_DOMINANT_CYCLE_NEW = h("wickra_hilbert_dominant_cycle_new", FunctionDescriptor.of(ADDRESS)); WICKRA_HILBERT_DOMINANT_CYCLE_UPDATE = h("wickra_hilbert_dominant_cycle_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_HILBERT_DOMINANT_CYCLE_BATCH = h("wickra_hilbert_dominant_cycle_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); - } - - private static void init3() { WICKRA_HILBERT_DOMINANT_CYCLE_WARMUP_PERIOD = h("wickra_hilbert_dominant_cycle_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HILBERT_DOMINANT_CYCLE_IS_READY = h("wickra_hilbert_dominant_cycle_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HILBERT_DOMINANT_CYCLE_NAME = h("wickra_hilbert_dominant_cycle_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HILBERT_DOMINANT_CYCLE_RESET = h("wickra_hilbert_dominant_cycle_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HILBERT_DOMINANT_CYCLE_FREE = h("wickra_hilbert_dominant_cycle_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HISTORICAL_VOLATILITY_NEW = h("wickra_historical_volatility_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -3845,6 +4415,7 @@ public final class NativeMethods { WICKRA_HISTORICAL_VOLATILITY_BATCH = h("wickra_historical_volatility_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HISTORICAL_VOLATILITY_WARMUP_PERIOD = h("wickra_historical_volatility_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HISTORICAL_VOLATILITY_IS_READY = h("wickra_historical_volatility_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HISTORICAL_VOLATILITY_NAME = h("wickra_historical_volatility_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HISTORICAL_VOLATILITY_RESET = h("wickra_historical_volatility_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HISTORICAL_VOLATILITY_FREE = h("wickra_historical_volatility_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HMA_NEW = h("wickra_hma_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3852,6 +4423,7 @@ public final class NativeMethods { WICKRA_HMA_BATCH = h("wickra_hma_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HMA_WARMUP_PERIOD = h("wickra_hma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HMA_IS_READY = h("wickra_hma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HMA_NAME = h("wickra_hma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HMA_RESET = h("wickra_hma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HMA_FREE = h("wickra_hma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HOLT_WINTERS_NEW = h("wickra_holt_winters_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE)); @@ -3859,6 +4431,7 @@ public final class NativeMethods { WICKRA_HOLT_WINTERS_BATCH = h("wickra_holt_winters_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HOLT_WINTERS_WARMUP_PERIOD = h("wickra_holt_winters_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HOLT_WINTERS_IS_READY = h("wickra_holt_winters_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HOLT_WINTERS_NAME = h("wickra_holt_winters_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HOLT_WINTERS_RESET = h("wickra_holt_winters_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HOLT_WINTERS_FREE = h("wickra_holt_winters_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HT_DC_PHASE_NEW = h("wickra_ht_dc_phase_new", FunctionDescriptor.of(ADDRESS)); @@ -3866,6 +4439,7 @@ public final class NativeMethods { WICKRA_HT_DC_PHASE_BATCH = h("wickra_ht_dc_phase_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HT_DC_PHASE_WARMUP_PERIOD = h("wickra_ht_dc_phase_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HT_DC_PHASE_IS_READY = h("wickra_ht_dc_phase_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HT_DC_PHASE_NAME = h("wickra_ht_dc_phase_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HT_DC_PHASE_RESET = h("wickra_ht_dc_phase_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HT_DC_PHASE_FREE = h("wickra_ht_dc_phase_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HT_TREND_MODE_NEW = h("wickra_ht_trend_mode_new", FunctionDescriptor.of(ADDRESS)); @@ -3873,6 +4447,7 @@ public final class NativeMethods { WICKRA_HT_TREND_MODE_BATCH = h("wickra_ht_trend_mode_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HT_TREND_MODE_WARMUP_PERIOD = h("wickra_ht_trend_mode_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HT_TREND_MODE_IS_READY = h("wickra_ht_trend_mode_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HT_TREND_MODE_NAME = h("wickra_ht_trend_mode_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HT_TREND_MODE_RESET = h("wickra_ht_trend_mode_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HT_TREND_MODE_FREE = h("wickra_ht_trend_mode_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HURST_EXPONENT_NEW = h("wickra_hurst_exponent_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -3880,6 +4455,7 @@ public final class NativeMethods { WICKRA_HURST_EXPONENT_BATCH = h("wickra_hurst_exponent_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HURST_EXPONENT_WARMUP_PERIOD = h("wickra_hurst_exponent_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HURST_EXPONENT_IS_READY = h("wickra_hurst_exponent_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HURST_EXPONENT_NAME = h("wickra_hurst_exponent_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HURST_EXPONENT_RESET = h("wickra_hurst_exponent_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HURST_EXPONENT_FREE = h("wickra_hurst_exponent_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INSTANTANEOUS_TRENDLINE_NEW = h("wickra_instantaneous_trendline_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3887,6 +4463,7 @@ public final class NativeMethods { WICKRA_INSTANTANEOUS_TRENDLINE_BATCH = h("wickra_instantaneous_trendline_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_INSTANTANEOUS_TRENDLINE_WARMUP_PERIOD = h("wickra_instantaneous_trendline_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_INSTANTANEOUS_TRENDLINE_IS_READY = h("wickra_instantaneous_trendline_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_INSTANTANEOUS_TRENDLINE_NAME = h("wickra_instantaneous_trendline_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_INSTANTANEOUS_TRENDLINE_RESET = h("wickra_instantaneous_trendline_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INSTANTANEOUS_TRENDLINE_FREE = h("wickra_instantaneous_trendline_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INVERSE_FISHER_TRANSFORM_NEW = h("wickra_inverse_fisher_transform_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); @@ -3894,13 +4471,18 @@ public final class NativeMethods { WICKRA_INVERSE_FISHER_TRANSFORM_BATCH = h("wickra_inverse_fisher_transform_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_INVERSE_FISHER_TRANSFORM_WARMUP_PERIOD = h("wickra_inverse_fisher_transform_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_INVERSE_FISHER_TRANSFORM_IS_READY = h("wickra_inverse_fisher_transform_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_INVERSE_FISHER_TRANSFORM_NAME = h("wickra_inverse_fisher_transform_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_INVERSE_FISHER_TRANSFORM_RESET = h("wickra_inverse_fisher_transform_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INVERSE_FISHER_TRANSFORM_FREE = h("wickra_inverse_fisher_transform_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init4() { WICKRA_JARQUE_BERA_NEW = h("wickra_jarque_bera_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_JARQUE_BERA_UPDATE = h("wickra_jarque_bera_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_JARQUE_BERA_BATCH = h("wickra_jarque_bera_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_JARQUE_BERA_WARMUP_PERIOD = h("wickra_jarque_bera_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_JARQUE_BERA_IS_READY = h("wickra_jarque_bera_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_JARQUE_BERA_NAME = h("wickra_jarque_bera_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_JARQUE_BERA_RESET = h("wickra_jarque_bera_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_JARQUE_BERA_FREE = h("wickra_jarque_bera_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_JMA_NEW = h("wickra_jma_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE, JAVA_INT)); @@ -3908,6 +4490,7 @@ public final class NativeMethods { WICKRA_JMA_BATCH = h("wickra_jma_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_JMA_WARMUP_PERIOD = h("wickra_jma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_JMA_IS_READY = h("wickra_jma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_JMA_NAME = h("wickra_jma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_JMA_RESET = h("wickra_jma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_JMA_FREE = h("wickra_jma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_JUMP_INDICATOR_NEW = h("wickra_jump_indicator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -3915,6 +4498,7 @@ public final class NativeMethods { WICKRA_JUMP_INDICATOR_BATCH = h("wickra_jump_indicator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_JUMP_INDICATOR_WARMUP_PERIOD = h("wickra_jump_indicator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_JUMP_INDICATOR_IS_READY = h("wickra_jump_indicator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_JUMP_INDICATOR_NAME = h("wickra_jump_indicator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_JUMP_INDICATOR_RESET = h("wickra_jump_indicator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_JUMP_INDICATOR_FREE = h("wickra_jump_indicator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_K_RATIO_NEW = h("wickra_k_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3922,6 +4506,7 @@ public final class NativeMethods { WICKRA_K_RATIO_BATCH = h("wickra_k_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_K_RATIO_WARMUP_PERIOD = h("wickra_k_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_K_RATIO_IS_READY = h("wickra_k_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_K_RATIO_NAME = h("wickra_k_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_K_RATIO_RESET = h("wickra_k_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_K_RATIO_FREE = h("wickra_k_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KAMA_NEW = h("wickra_kama_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -3929,6 +4514,7 @@ public final class NativeMethods { WICKRA_KAMA_BATCH = h("wickra_kama_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_KAMA_WARMUP_PERIOD = h("wickra_kama_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KAMA_IS_READY = h("wickra_kama_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KAMA_NAME = h("wickra_kama_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KAMA_RESET = h("wickra_kama_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KAMA_FREE = h("wickra_kama_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KELLY_CRITERION_NEW = h("wickra_kelly_criterion_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3936,6 +4522,7 @@ public final class NativeMethods { WICKRA_KELLY_CRITERION_BATCH = h("wickra_kelly_criterion_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_KELLY_CRITERION_WARMUP_PERIOD = h("wickra_kelly_criterion_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KELLY_CRITERION_IS_READY = h("wickra_kelly_criterion_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KELLY_CRITERION_NAME = h("wickra_kelly_criterion_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KELLY_CRITERION_RESET = h("wickra_kelly_criterion_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KELLY_CRITERION_FREE = h("wickra_kelly_criterion_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KURTOSIS_NEW = h("wickra_kurtosis_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3943,6 +4530,7 @@ public final class NativeMethods { WICKRA_KURTOSIS_BATCH = h("wickra_kurtosis_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_KURTOSIS_WARMUP_PERIOD = h("wickra_kurtosis_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KURTOSIS_IS_READY = h("wickra_kurtosis_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KURTOSIS_NAME = h("wickra_kurtosis_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KURTOSIS_RESET = h("wickra_kurtosis_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KURTOSIS_FREE = h("wickra_kurtosis_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LAGUERRE_RSI_NEW = h("wickra_laguerre_rsi_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); @@ -3950,16 +4538,15 @@ public final class NativeMethods { WICKRA_LAGUERRE_RSI_BATCH = h("wickra_laguerre_rsi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_LAGUERRE_RSI_WARMUP_PERIOD = h("wickra_laguerre_rsi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_LAGUERRE_RSI_IS_READY = h("wickra_laguerre_rsi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LAGUERRE_RSI_NAME = h("wickra_laguerre_rsi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LAGUERRE_RSI_RESET = h("wickra_laguerre_rsi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LAGUERRE_RSI_FREE = h("wickra_laguerre_rsi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LINEAR_REGRESSION_NEW = h("wickra_linear_regression_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_LINEAR_REGRESSION_UPDATE = h("wickra_linear_regression_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_LINEAR_REGRESSION_BATCH = h("wickra_linear_regression_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_LINEAR_REGRESSION_WARMUP_PERIOD = h("wickra_linear_regression_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); - } - - private static void init4() { WICKRA_LINEAR_REGRESSION_IS_READY = h("wickra_linear_regression_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LINEAR_REGRESSION_NAME = h("wickra_linear_regression_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LINEAR_REGRESSION_RESET = h("wickra_linear_regression_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LINEAR_REGRESSION_FREE = h("wickra_linear_regression_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LIN_REG_ANGLE_NEW = h("wickra_lin_reg_angle_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3967,6 +4554,7 @@ public final class NativeMethods { WICKRA_LIN_REG_ANGLE_BATCH = h("wickra_lin_reg_angle_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_LIN_REG_ANGLE_WARMUP_PERIOD = h("wickra_lin_reg_angle_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_LIN_REG_ANGLE_IS_READY = h("wickra_lin_reg_angle_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LIN_REG_ANGLE_NAME = h("wickra_lin_reg_angle_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LIN_REG_ANGLE_RESET = h("wickra_lin_reg_angle_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LIN_REG_ANGLE_FREE = h("wickra_lin_reg_angle_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LIN_REG_INTERCEPT_NEW = h("wickra_lin_reg_intercept_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3974,6 +4562,7 @@ public final class NativeMethods { WICKRA_LIN_REG_INTERCEPT_BATCH = h("wickra_lin_reg_intercept_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_LIN_REG_INTERCEPT_WARMUP_PERIOD = h("wickra_lin_reg_intercept_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_LIN_REG_INTERCEPT_IS_READY = h("wickra_lin_reg_intercept_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LIN_REG_INTERCEPT_NAME = h("wickra_lin_reg_intercept_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LIN_REG_INTERCEPT_RESET = h("wickra_lin_reg_intercept_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LIN_REG_INTERCEPT_FREE = h("wickra_lin_reg_intercept_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LIN_REG_SLOPE_NEW = h("wickra_lin_reg_slope_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3981,6 +4570,7 @@ public final class NativeMethods { WICKRA_LIN_REG_SLOPE_BATCH = h("wickra_lin_reg_slope_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_LIN_REG_SLOPE_WARMUP_PERIOD = h("wickra_lin_reg_slope_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_LIN_REG_SLOPE_IS_READY = h("wickra_lin_reg_slope_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LIN_REG_SLOPE_NAME = h("wickra_lin_reg_slope_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LIN_REG_SLOPE_RESET = h("wickra_lin_reg_slope_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LIN_REG_SLOPE_FREE = h("wickra_lin_reg_slope_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LOG_RETURN_NEW = h("wickra_log_return_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -3988,6 +4578,7 @@ public final class NativeMethods { WICKRA_LOG_RETURN_BATCH = h("wickra_log_return_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_LOG_RETURN_WARMUP_PERIOD = h("wickra_log_return_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_LOG_RETURN_IS_READY = h("wickra_log_return_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LOG_RETURN_NAME = h("wickra_log_return_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LOG_RETURN_RESET = h("wickra_log_return_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LOG_RETURN_FREE = h("wickra_log_return_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_M2_MEASURE_NEW = h("wickra_m2_measure_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE, JAVA_DOUBLE)); @@ -3995,6 +4586,7 @@ public final class NativeMethods { WICKRA_M2_MEASURE_BATCH = h("wickra_m2_measure_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_M2_MEASURE_WARMUP_PERIOD = h("wickra_m2_measure_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_M2_MEASURE_IS_READY = h("wickra_m2_measure_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_M2_MEASURE_NAME = h("wickra_m2_measure_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_M2_MEASURE_RESET = h("wickra_m2_measure_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_M2_MEASURE_FREE = h("wickra_m2_measure_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MACD_HISTOGRAM_NEW = h("wickra_macd_histogram_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -4002,13 +4594,18 @@ public final class NativeMethods { WICKRA_MACD_HISTOGRAM_BATCH = h("wickra_macd_histogram_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MACD_HISTOGRAM_WARMUP_PERIOD = h("wickra_macd_histogram_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MACD_HISTOGRAM_IS_READY = h("wickra_macd_histogram_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MACD_HISTOGRAM_NAME = h("wickra_macd_histogram_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MACD_HISTOGRAM_RESET = h("wickra_macd_histogram_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MACD_HISTOGRAM_FREE = h("wickra_macd_histogram_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init5() { WICKRA_MARTIN_RATIO_NEW = h("wickra_martin_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_MARTIN_RATIO_UPDATE = h("wickra_martin_ratio_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_MARTIN_RATIO_BATCH = h("wickra_martin_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MARTIN_RATIO_WARMUP_PERIOD = h("wickra_martin_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MARTIN_RATIO_IS_READY = h("wickra_martin_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MARTIN_RATIO_NAME = h("wickra_martin_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MARTIN_RATIO_RESET = h("wickra_martin_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MARTIN_RATIO_FREE = h("wickra_martin_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MAX_DRAWDOWN_NEW = h("wickra_max_drawdown_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4016,6 +4613,7 @@ public final class NativeMethods { WICKRA_MAX_DRAWDOWN_BATCH = h("wickra_max_drawdown_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MAX_DRAWDOWN_WARMUP_PERIOD = h("wickra_max_drawdown_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MAX_DRAWDOWN_IS_READY = h("wickra_max_drawdown_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MAX_DRAWDOWN_NAME = h("wickra_max_drawdown_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MAX_DRAWDOWN_RESET = h("wickra_max_drawdown_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MAX_DRAWDOWN_FREE = h("wickra_max_drawdown_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MC_GINLEY_DYNAMIC_NEW = h("wickra_mc_ginley_dynamic_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4023,6 +4621,7 @@ public final class NativeMethods { WICKRA_MC_GINLEY_DYNAMIC_BATCH = h("wickra_mc_ginley_dynamic_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MC_GINLEY_DYNAMIC_WARMUP_PERIOD = h("wickra_mc_ginley_dynamic_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MC_GINLEY_DYNAMIC_IS_READY = h("wickra_mc_ginley_dynamic_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MC_GINLEY_DYNAMIC_NAME = h("wickra_mc_ginley_dynamic_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MC_GINLEY_DYNAMIC_RESET = h("wickra_mc_ginley_dynamic_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MC_GINLEY_DYNAMIC_FREE = h("wickra_mc_ginley_dynamic_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MEDIAN_ABSOLUTE_DEVIATION_NEW = h("wickra_median_absolute_deviation_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4030,6 +4629,7 @@ public final class NativeMethods { WICKRA_MEDIAN_ABSOLUTE_DEVIATION_BATCH = h("wickra_median_absolute_deviation_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MEDIAN_ABSOLUTE_DEVIATION_WARMUP_PERIOD = h("wickra_median_absolute_deviation_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MEDIAN_ABSOLUTE_DEVIATION_IS_READY = h("wickra_median_absolute_deviation_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MEDIAN_ABSOLUTE_DEVIATION_NAME = h("wickra_median_absolute_deviation_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MEDIAN_ABSOLUTE_DEVIATION_RESET = h("wickra_median_absolute_deviation_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MEDIAN_ABSOLUTE_DEVIATION_FREE = h("wickra_median_absolute_deviation_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MEDIAN_MA_NEW = h("wickra_median_ma_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4037,6 +4637,7 @@ public final class NativeMethods { WICKRA_MEDIAN_MA_BATCH = h("wickra_median_ma_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MEDIAN_MA_WARMUP_PERIOD = h("wickra_median_ma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MEDIAN_MA_IS_READY = h("wickra_median_ma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MEDIAN_MA_NAME = h("wickra_median_ma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MEDIAN_MA_RESET = h("wickra_median_ma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MEDIAN_MA_FREE = h("wickra_median_ma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MID_POINT_NEW = h("wickra_mid_point_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4044,6 +4645,7 @@ public final class NativeMethods { WICKRA_MID_POINT_BATCH = h("wickra_mid_point_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MID_POINT_WARMUP_PERIOD = h("wickra_mid_point_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MID_POINT_IS_READY = h("wickra_mid_point_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MID_POINT_NAME = h("wickra_mid_point_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MID_POINT_RESET = h("wickra_mid_point_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MID_POINT_FREE = h("wickra_mid_point_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MOM_NEW = h("wickra_mom_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4051,6 +4653,7 @@ public final class NativeMethods { WICKRA_MOM_BATCH = h("wickra_mom_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MOM_WARMUP_PERIOD = h("wickra_mom_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MOM_IS_READY = h("wickra_mom_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MOM_NAME = h("wickra_mom_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MOM_RESET = h("wickra_mom_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MOM_FREE = h("wickra_mom_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OMEGA_RATIO_NEW = h("wickra_omega_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -4058,6 +4661,7 @@ public final class NativeMethods { WICKRA_OMEGA_RATIO_BATCH = h("wickra_omega_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_OMEGA_RATIO_WARMUP_PERIOD = h("wickra_omega_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_OMEGA_RATIO_IS_READY = h("wickra_omega_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_OMEGA_RATIO_NAME = h("wickra_omega_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_OMEGA_RATIO_RESET = h("wickra_omega_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OMEGA_RATIO_FREE = h("wickra_omega_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PAIN_INDEX_NEW = h("wickra_pain_index_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4065,6 +4669,7 @@ public final class NativeMethods { WICKRA_PAIN_INDEX_BATCH = h("wickra_pain_index_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PAIN_INDEX_WARMUP_PERIOD = h("wickra_pain_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PAIN_INDEX_IS_READY = h("wickra_pain_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PAIN_INDEX_NAME = h("wickra_pain_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PAIN_INDEX_RESET = h("wickra_pain_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PAIN_INDEX_FREE = h("wickra_pain_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PERCENT_B_NEW = h("wickra_percent_b_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -4072,6 +4677,7 @@ public final class NativeMethods { WICKRA_PERCENT_B_BATCH = h("wickra_percent_b_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PERCENT_B_WARMUP_PERIOD = h("wickra_percent_b_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PERCENT_B_IS_READY = h("wickra_percent_b_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PERCENT_B_NAME = h("wickra_percent_b_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PERCENT_B_RESET = h("wickra_percent_b_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PERCENT_B_FREE = h("wickra_percent_b_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PERCENTAGE_TRAILING_STOP_NEW = h("wickra_percentage_trailing_stop_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); @@ -4079,9 +4685,7 @@ public final class NativeMethods { WICKRA_PERCENTAGE_TRAILING_STOP_BATCH = h("wickra_percentage_trailing_stop_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PERCENTAGE_TRAILING_STOP_WARMUP_PERIOD = h("wickra_percentage_trailing_stop_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PERCENTAGE_TRAILING_STOP_IS_READY = h("wickra_percentage_trailing_stop_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); - } - - private static void init5() { + WICKRA_PERCENTAGE_TRAILING_STOP_NAME = h("wickra_percentage_trailing_stop_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PERCENTAGE_TRAILING_STOP_RESET = h("wickra_percentage_trailing_stop_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PERCENTAGE_TRAILING_STOP_FREE = h("wickra_percentage_trailing_stop_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PMO_NEW = h("wickra_pmo_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4089,6 +4693,7 @@ public final class NativeMethods { WICKRA_PMO_BATCH = h("wickra_pmo_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PMO_WARMUP_PERIOD = h("wickra_pmo_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PMO_IS_READY = h("wickra_pmo_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PMO_NAME = h("wickra_pmo_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PMO_RESET = h("wickra_pmo_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PMO_FREE = h("wickra_pmo_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_POLARIZED_FRACTAL_EFFICIENCY_NEW = h("wickra_polarized_fractal_efficiency_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4096,6 +4701,7 @@ public final class NativeMethods { WICKRA_POLARIZED_FRACTAL_EFFICIENCY_BATCH = h("wickra_polarized_fractal_efficiency_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_POLARIZED_FRACTAL_EFFICIENCY_WARMUP_PERIOD = h("wickra_polarized_fractal_efficiency_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_POLARIZED_FRACTAL_EFFICIENCY_IS_READY = h("wickra_polarized_fractal_efficiency_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_POLARIZED_FRACTAL_EFFICIENCY_NAME = h("wickra_polarized_fractal_efficiency_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_POLARIZED_FRACTAL_EFFICIENCY_RESET = h("wickra_polarized_fractal_efficiency_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_POLARIZED_FRACTAL_EFFICIENCY_FREE = h("wickra_polarized_fractal_efficiency_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PPO_NEW = h("wickra_ppo_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4103,6 +4709,7 @@ public final class NativeMethods { WICKRA_PPO_BATCH = h("wickra_ppo_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PPO_WARMUP_PERIOD = h("wickra_ppo_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PPO_IS_READY = h("wickra_ppo_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PPO_NAME = h("wickra_ppo_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PPO_RESET = h("wickra_ppo_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PPO_FREE = h("wickra_ppo_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PPO_HISTOGRAM_NEW = h("wickra_ppo_histogram_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -4110,13 +4717,18 @@ public final class NativeMethods { WICKRA_PPO_HISTOGRAM_BATCH = h("wickra_ppo_histogram_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PPO_HISTOGRAM_WARMUP_PERIOD = h("wickra_ppo_histogram_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PPO_HISTOGRAM_IS_READY = h("wickra_ppo_histogram_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PPO_HISTOGRAM_NAME = h("wickra_ppo_histogram_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PPO_HISTOGRAM_RESET = h("wickra_ppo_histogram_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PPO_HISTOGRAM_FREE = h("wickra_ppo_histogram_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init6() { WICKRA_PROFIT_FACTOR_NEW = h("wickra_profit_factor_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_PROFIT_FACTOR_UPDATE = h("wickra_profit_factor_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_PROFIT_FACTOR_BATCH = h("wickra_profit_factor_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PROFIT_FACTOR_WARMUP_PERIOD = h("wickra_profit_factor_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PROFIT_FACTOR_IS_READY = h("wickra_profit_factor_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PROFIT_FACTOR_NAME = h("wickra_profit_factor_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PROFIT_FACTOR_RESET = h("wickra_profit_factor_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PROFIT_FACTOR_FREE = h("wickra_profit_factor_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_R_SQUARED_NEW = h("wickra_r_squared_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4124,6 +4736,7 @@ public final class NativeMethods { WICKRA_R_SQUARED_BATCH = h("wickra_r_squared_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_R_SQUARED_WARMUP_PERIOD = h("wickra_r_squared_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_R_SQUARED_IS_READY = h("wickra_r_squared_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_R_SQUARED_NAME = h("wickra_r_squared_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_R_SQUARED_RESET = h("wickra_r_squared_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_R_SQUARED_FREE = h("wickra_r_squared_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_REALIZED_VOLATILITY_NEW = h("wickra_realized_volatility_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4131,6 +4744,7 @@ public final class NativeMethods { WICKRA_REALIZED_VOLATILITY_BATCH = h("wickra_realized_volatility_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_REALIZED_VOLATILITY_WARMUP_PERIOD = h("wickra_realized_volatility_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_REALIZED_VOLATILITY_IS_READY = h("wickra_realized_volatility_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_REALIZED_VOLATILITY_NAME = h("wickra_realized_volatility_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_REALIZED_VOLATILITY_RESET = h("wickra_realized_volatility_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_REALIZED_VOLATILITY_FREE = h("wickra_realized_volatility_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RECOVERY_FACTOR_NEW = h("wickra_recovery_factor_new", FunctionDescriptor.of(ADDRESS)); @@ -4138,6 +4752,7 @@ public final class NativeMethods { WICKRA_RECOVERY_FACTOR_BATCH = h("wickra_recovery_factor_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_RECOVERY_FACTOR_WARMUP_PERIOD = h("wickra_recovery_factor_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_RECOVERY_FACTOR_IS_READY = h("wickra_recovery_factor_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_RECOVERY_FACTOR_NAME = h("wickra_recovery_factor_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RECOVERY_FACTOR_RESET = h("wickra_recovery_factor_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RECOVERY_FACTOR_FREE = h("wickra_recovery_factor_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_REFLEX_NEW = h("wickra_reflex_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4145,6 +4760,7 @@ public final class NativeMethods { WICKRA_REFLEX_BATCH = h("wickra_reflex_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_REFLEX_WARMUP_PERIOD = h("wickra_reflex_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_REFLEX_IS_READY = h("wickra_reflex_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_REFLEX_NAME = h("wickra_reflex_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_REFLEX_RESET = h("wickra_reflex_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_REFLEX_FREE = h("wickra_reflex_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_REGIME_LABEL_NEW = h("wickra_regime_label_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4152,6 +4768,7 @@ public final class NativeMethods { WICKRA_REGIME_LABEL_BATCH = h("wickra_regime_label_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_REGIME_LABEL_WARMUP_PERIOD = h("wickra_regime_label_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_REGIME_LABEL_IS_READY = h("wickra_regime_label_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_REGIME_LABEL_NAME = h("wickra_regime_label_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_REGIME_LABEL_RESET = h("wickra_regime_label_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_REGIME_LABEL_FREE = h("wickra_regime_label_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RENKO_TRAILING_STOP_NEW = h("wickra_renko_trailing_stop_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); @@ -4159,6 +4776,7 @@ public final class NativeMethods { WICKRA_RENKO_TRAILING_STOP_BATCH = h("wickra_renko_trailing_stop_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_RENKO_TRAILING_STOP_WARMUP_PERIOD = h("wickra_renko_trailing_stop_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_RENKO_TRAILING_STOP_IS_READY = h("wickra_renko_trailing_stop_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_RENKO_TRAILING_STOP_NAME = h("wickra_renko_trailing_stop_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RENKO_TRAILING_STOP_RESET = h("wickra_renko_trailing_stop_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RENKO_TRAILING_STOP_FREE = h("wickra_renko_trailing_stop_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RMI_NEW = h("wickra_rmi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4166,6 +4784,7 @@ public final class NativeMethods { WICKRA_RMI_BATCH = h("wickra_rmi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_RMI_WARMUP_PERIOD = h("wickra_rmi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_RMI_IS_READY = h("wickra_rmi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_RMI_NAME = h("wickra_rmi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RMI_RESET = h("wickra_rmi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RMI_FREE = h("wickra_rmi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROC_NEW = h("wickra_roc_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4173,6 +4792,7 @@ public final class NativeMethods { WICKRA_ROC_BATCH = h("wickra_roc_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROC_WARMUP_PERIOD = h("wickra_roc_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROC_IS_READY = h("wickra_roc_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROC_NAME = h("wickra_roc_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROC_RESET = h("wickra_roc_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROC_FREE = h("wickra_roc_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROCP_NEW = h("wickra_rocp_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4180,6 +4800,7 @@ public final class NativeMethods { WICKRA_ROCP_BATCH = h("wickra_rocp_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROCP_WARMUP_PERIOD = h("wickra_rocp_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROCP_IS_READY = h("wickra_rocp_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROCP_NAME = h("wickra_rocp_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROCP_RESET = h("wickra_rocp_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROCP_FREE = h("wickra_rocp_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROCR_NEW = h("wickra_rocr_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4187,6 +4808,7 @@ public final class NativeMethods { WICKRA_ROCR_BATCH = h("wickra_rocr_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROCR_WARMUP_PERIOD = h("wickra_rocr_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROCR_IS_READY = h("wickra_rocr_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROCR_NAME = h("wickra_rocr_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROCR_RESET = h("wickra_rocr_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROCR_FREE = h("wickra_rocr_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROCR100_NEW = h("wickra_rocr100_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4194,6 +4816,7 @@ public final class NativeMethods { WICKRA_ROCR100_BATCH = h("wickra_rocr100_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROCR100_WARMUP_PERIOD = h("wickra_rocr100_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROCR100_IS_READY = h("wickra_rocr100_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROCR100_NAME = h("wickra_rocr100_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROCR100_RESET = h("wickra_rocr100_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROCR100_FREE = h("wickra_rocr100_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLLING_IQR_NEW = h("wickra_rolling_iqr_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4201,16 +4824,15 @@ public final class NativeMethods { WICKRA_ROLLING_IQR_BATCH = h("wickra_rolling_iqr_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROLLING_IQR_WARMUP_PERIOD = h("wickra_rolling_iqr_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROLLING_IQR_IS_READY = h("wickra_rolling_iqr_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROLLING_IQR_NAME = h("wickra_rolling_iqr_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROLLING_IQR_RESET = h("wickra_rolling_iqr_reset", FunctionDescriptor.ofVoid(ADDRESS)); - } - - private static void init6() { WICKRA_ROLLING_IQR_FREE = h("wickra_rolling_iqr_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLLING_MIN_MAX_SCALER_NEW = h("wickra_rolling_min_max_scaler_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_ROLLING_MIN_MAX_SCALER_UPDATE = h("wickra_rolling_min_max_scaler_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_ROLLING_MIN_MAX_SCALER_BATCH = h("wickra_rolling_min_max_scaler_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROLLING_MIN_MAX_SCALER_WARMUP_PERIOD = h("wickra_rolling_min_max_scaler_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROLLING_MIN_MAX_SCALER_IS_READY = h("wickra_rolling_min_max_scaler_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROLLING_MIN_MAX_SCALER_NAME = h("wickra_rolling_min_max_scaler_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROLLING_MIN_MAX_SCALER_RESET = h("wickra_rolling_min_max_scaler_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLLING_MIN_MAX_SCALER_FREE = h("wickra_rolling_min_max_scaler_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLLING_PERCENTILE_RANK_NEW = h("wickra_rolling_percentile_rank_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4218,13 +4840,18 @@ public final class NativeMethods { WICKRA_ROLLING_PERCENTILE_RANK_BATCH = h("wickra_rolling_percentile_rank_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROLLING_PERCENTILE_RANK_WARMUP_PERIOD = h("wickra_rolling_percentile_rank_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROLLING_PERCENTILE_RANK_IS_READY = h("wickra_rolling_percentile_rank_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROLLING_PERCENTILE_RANK_NAME = h("wickra_rolling_percentile_rank_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROLLING_PERCENTILE_RANK_RESET = h("wickra_rolling_percentile_rank_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLLING_PERCENTILE_RANK_FREE = h("wickra_rolling_percentile_rank_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init7() { WICKRA_ROLLING_QUANTILE_NEW = h("wickra_rolling_quantile_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_ROLLING_QUANTILE_UPDATE = h("wickra_rolling_quantile_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_ROLLING_QUANTILE_BATCH = h("wickra_rolling_quantile_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROLLING_QUANTILE_WARMUP_PERIOD = h("wickra_rolling_quantile_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROLLING_QUANTILE_IS_READY = h("wickra_rolling_quantile_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROLLING_QUANTILE_NAME = h("wickra_rolling_quantile_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROLLING_QUANTILE_RESET = h("wickra_rolling_quantile_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLLING_QUANTILE_FREE = h("wickra_rolling_quantile_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROOFING_FILTER_NEW = h("wickra_roofing_filter_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4232,6 +4859,7 @@ public final class NativeMethods { WICKRA_ROOFING_FILTER_BATCH = h("wickra_roofing_filter_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROOFING_FILTER_WARMUP_PERIOD = h("wickra_roofing_filter_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROOFING_FILTER_IS_READY = h("wickra_roofing_filter_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROOFING_FILTER_NAME = h("wickra_roofing_filter_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROOFING_FILTER_RESET = h("wickra_roofing_filter_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROOFING_FILTER_FREE = h("wickra_roofing_filter_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RSI_NEW = h("wickra_rsi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4239,6 +4867,7 @@ public final class NativeMethods { WICKRA_RSI_BATCH = h("wickra_rsi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_RSI_WARMUP_PERIOD = h("wickra_rsi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_RSI_IS_READY = h("wickra_rsi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_RSI_NAME = h("wickra_rsi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RSI_RESET = h("wickra_rsi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RSI_FREE = h("wickra_rsi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RSX_NEW = h("wickra_rsx_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4246,6 +4875,7 @@ public final class NativeMethods { WICKRA_RSX_BATCH = h("wickra_rsx_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_RSX_WARMUP_PERIOD = h("wickra_rsx_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_RSX_IS_READY = h("wickra_rsx_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_RSX_NAME = h("wickra_rsx_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RSX_RESET = h("wickra_rsx_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RSX_FREE = h("wickra_rsx_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RVI_VOLATILITY_NEW = h("wickra_rvi_volatility_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4253,6 +4883,7 @@ public final class NativeMethods { WICKRA_RVI_VOLATILITY_BATCH = h("wickra_rvi_volatility_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_RVI_VOLATILITY_WARMUP_PERIOD = h("wickra_rvi_volatility_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_RVI_VOLATILITY_IS_READY = h("wickra_rvi_volatility_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_RVI_VOLATILITY_NAME = h("wickra_rvi_volatility_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RVI_VOLATILITY_RESET = h("wickra_rvi_volatility_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RVI_VOLATILITY_FREE = h("wickra_rvi_volatility_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SAMPLE_ENTROPY_NEW = h("wickra_sample_entropy_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_DOUBLE)); @@ -4260,6 +4891,7 @@ public final class NativeMethods { WICKRA_SAMPLE_ENTROPY_BATCH = h("wickra_sample_entropy_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SAMPLE_ENTROPY_WARMUP_PERIOD = h("wickra_sample_entropy_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SAMPLE_ENTROPY_IS_READY = h("wickra_sample_entropy_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SAMPLE_ENTROPY_NAME = h("wickra_sample_entropy_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SAMPLE_ENTROPY_RESET = h("wickra_sample_entropy_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SAMPLE_ENTROPY_FREE = h("wickra_sample_entropy_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SHANNON_ENTROPY_NEW = h("wickra_shannon_entropy_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4267,6 +4899,7 @@ public final class NativeMethods { WICKRA_SHANNON_ENTROPY_BATCH = h("wickra_shannon_entropy_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SHANNON_ENTROPY_WARMUP_PERIOD = h("wickra_shannon_entropy_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SHANNON_ENTROPY_IS_READY = h("wickra_shannon_entropy_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SHANNON_ENTROPY_NAME = h("wickra_shannon_entropy_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SHANNON_ENTROPY_RESET = h("wickra_shannon_entropy_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SHANNON_ENTROPY_FREE = h("wickra_shannon_entropy_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SHARPE_RATIO_NEW = h("wickra_sharpe_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -4274,6 +4907,7 @@ public final class NativeMethods { WICKRA_SHARPE_RATIO_BATCH = h("wickra_sharpe_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SHARPE_RATIO_WARMUP_PERIOD = h("wickra_sharpe_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SHARPE_RATIO_IS_READY = h("wickra_sharpe_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SHARPE_RATIO_NAME = h("wickra_sharpe_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SHARPE_RATIO_RESET = h("wickra_sharpe_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SHARPE_RATIO_FREE = h("wickra_sharpe_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SINE_WAVE_NEW = h("wickra_sine_wave_new", FunctionDescriptor.of(ADDRESS)); @@ -4281,6 +4915,7 @@ public final class NativeMethods { WICKRA_SINE_WAVE_BATCH = h("wickra_sine_wave_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SINE_WAVE_WARMUP_PERIOD = h("wickra_sine_wave_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SINE_WAVE_IS_READY = h("wickra_sine_wave_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SINE_WAVE_NAME = h("wickra_sine_wave_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SINE_WAVE_RESET = h("wickra_sine_wave_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SINE_WAVE_FREE = h("wickra_sine_wave_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SINE_WEIGHTED_MA_NEW = h("wickra_sine_weighted_ma_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4288,6 +4923,7 @@ public final class NativeMethods { WICKRA_SINE_WEIGHTED_MA_BATCH = h("wickra_sine_weighted_ma_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SINE_WEIGHTED_MA_WARMUP_PERIOD = h("wickra_sine_weighted_ma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SINE_WEIGHTED_MA_IS_READY = h("wickra_sine_weighted_ma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SINE_WEIGHTED_MA_NAME = h("wickra_sine_weighted_ma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SINE_WEIGHTED_MA_RESET = h("wickra_sine_weighted_ma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SINE_WEIGHTED_MA_FREE = h("wickra_sine_weighted_ma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SKEWNESS_NEW = h("wickra_skewness_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4295,6 +4931,7 @@ public final class NativeMethods { WICKRA_SKEWNESS_BATCH = h("wickra_skewness_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SKEWNESS_WARMUP_PERIOD = h("wickra_skewness_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SKEWNESS_IS_READY = h("wickra_skewness_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SKEWNESS_NAME = h("wickra_skewness_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SKEWNESS_RESET = h("wickra_skewness_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SKEWNESS_FREE = h("wickra_skewness_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SMA_NEW = h("wickra_sma_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4302,6 +4939,7 @@ public final class NativeMethods { WICKRA_SMA_BATCH = h("wickra_sma_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SMA_WARMUP_PERIOD = h("wickra_sma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SMA_IS_READY = h("wickra_sma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SMA_NAME = h("wickra_sma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SMA_RESET = h("wickra_sma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SMA_FREE = h("wickra_sma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SMMA_NEW = h("wickra_smma_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4309,6 +4947,7 @@ public final class NativeMethods { WICKRA_SMMA_BATCH = h("wickra_smma_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SMMA_WARMUP_PERIOD = h("wickra_smma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SMMA_IS_READY = h("wickra_smma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SMMA_NAME = h("wickra_smma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SMMA_RESET = h("wickra_smma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SMMA_FREE = h("wickra_smma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SORTINO_RATIO_NEW = h("wickra_sortino_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -4316,6 +4955,7 @@ public final class NativeMethods { WICKRA_SORTINO_RATIO_BATCH = h("wickra_sortino_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SORTINO_RATIO_WARMUP_PERIOD = h("wickra_sortino_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SORTINO_RATIO_IS_READY = h("wickra_sortino_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SORTINO_RATIO_NAME = h("wickra_sortino_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SORTINO_RATIO_RESET = h("wickra_sortino_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SORTINO_RATIO_FREE = h("wickra_sortino_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STANDARD_ERROR_NEW = h("wickra_standard_error_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4323,16 +4963,18 @@ public final class NativeMethods { WICKRA_STANDARD_ERROR_BATCH = h("wickra_standard_error_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_STANDARD_ERROR_WARMUP_PERIOD = h("wickra_standard_error_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_STANDARD_ERROR_IS_READY = h("wickra_standard_error_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_STANDARD_ERROR_NAME = h("wickra_standard_error_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_STANDARD_ERROR_RESET = h("wickra_standard_error_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STANDARD_ERROR_FREE = h("wickra_standard_error_free", FunctionDescriptor.ofVoid(ADDRESS)); } - private static void init7() { + private static void init8() { WICKRA_STC_NEW = h("wickra_stc_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_DOUBLE)); WICKRA_STC_UPDATE = h("wickra_stc_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_STC_BATCH = h("wickra_stc_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_STC_WARMUP_PERIOD = h("wickra_stc_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_STC_IS_READY = h("wickra_stc_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_STC_NAME = h("wickra_stc_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_STC_RESET = h("wickra_stc_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STC_FREE = h("wickra_stc_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STD_DEV_NEW = h("wickra_std_dev_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4340,6 +4982,7 @@ public final class NativeMethods { WICKRA_STD_DEV_BATCH = h("wickra_std_dev_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_STD_DEV_WARMUP_PERIOD = h("wickra_std_dev_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_STD_DEV_IS_READY = h("wickra_std_dev_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_STD_DEV_NAME = h("wickra_std_dev_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_STD_DEV_RESET = h("wickra_std_dev_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STD_DEV_FREE = h("wickra_std_dev_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STEP_TRAILING_STOP_NEW = h("wickra_step_trailing_stop_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); @@ -4347,6 +4990,7 @@ public final class NativeMethods { WICKRA_STEP_TRAILING_STOP_BATCH = h("wickra_step_trailing_stop_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_STEP_TRAILING_STOP_WARMUP_PERIOD = h("wickra_step_trailing_stop_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_STEP_TRAILING_STOP_IS_READY = h("wickra_step_trailing_stop_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_STEP_TRAILING_STOP_NAME = h("wickra_step_trailing_stop_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_STEP_TRAILING_STOP_RESET = h("wickra_step_trailing_stop_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STEP_TRAILING_STOP_FREE = h("wickra_step_trailing_stop_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STERLING_RATIO_NEW = h("wickra_sterling_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4354,6 +4998,7 @@ public final class NativeMethods { WICKRA_STERLING_RATIO_BATCH = h("wickra_sterling_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_STERLING_RATIO_WARMUP_PERIOD = h("wickra_sterling_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_STERLING_RATIO_IS_READY = h("wickra_sterling_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_STERLING_RATIO_NAME = h("wickra_sterling_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_STERLING_RATIO_RESET = h("wickra_sterling_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STERLING_RATIO_FREE = h("wickra_sterling_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STOCH_RSI_NEW = h("wickra_stoch_rsi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4361,6 +5006,7 @@ public final class NativeMethods { WICKRA_STOCH_RSI_BATCH = h("wickra_stoch_rsi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_STOCH_RSI_WARMUP_PERIOD = h("wickra_stoch_rsi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_STOCH_RSI_IS_READY = h("wickra_stoch_rsi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_STOCH_RSI_NAME = h("wickra_stoch_rsi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_STOCH_RSI_RESET = h("wickra_stoch_rsi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STOCH_RSI_FREE = h("wickra_stoch_rsi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SUPER_SMOOTHER_NEW = h("wickra_super_smoother_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4368,6 +5014,7 @@ public final class NativeMethods { WICKRA_SUPER_SMOOTHER_BATCH = h("wickra_super_smoother_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SUPER_SMOOTHER_WARMUP_PERIOD = h("wickra_super_smoother_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SUPER_SMOOTHER_IS_READY = h("wickra_super_smoother_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SUPER_SMOOTHER_NAME = h("wickra_super_smoother_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SUPER_SMOOTHER_RESET = h("wickra_super_smoother_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SUPER_SMOOTHER_FREE = h("wickra_super_smoother_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_T3_NEW = h("wickra_t3_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -4375,6 +5022,7 @@ public final class NativeMethods { WICKRA_T3_BATCH = h("wickra_t3_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_T3_WARMUP_PERIOD = h("wickra_t3_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_T3_IS_READY = h("wickra_t3_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_T3_NAME = h("wickra_t3_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_T3_RESET = h("wickra_t3_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_T3_FREE = h("wickra_t3_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TAIL_RATIO_NEW = h("wickra_tail_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4382,6 +5030,7 @@ public final class NativeMethods { WICKRA_TAIL_RATIO_BATCH = h("wickra_tail_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TAIL_RATIO_WARMUP_PERIOD = h("wickra_tail_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TAIL_RATIO_IS_READY = h("wickra_tail_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TAIL_RATIO_NAME = h("wickra_tail_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TAIL_RATIO_RESET = h("wickra_tail_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TAIL_RATIO_FREE = h("wickra_tail_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TEMA_NEW = h("wickra_tema_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4389,6 +5038,7 @@ public final class NativeMethods { WICKRA_TEMA_BATCH = h("wickra_tema_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TEMA_WARMUP_PERIOD = h("wickra_tema_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TEMA_IS_READY = h("wickra_tema_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TEMA_NAME = h("wickra_tema_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TEMA_RESET = h("wickra_tema_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TEMA_FREE = h("wickra_tema_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TII_NEW = h("wickra_tii_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4396,6 +5046,7 @@ public final class NativeMethods { WICKRA_TII_BATCH = h("wickra_tii_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TII_WARMUP_PERIOD = h("wickra_tii_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TII_IS_READY = h("wickra_tii_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TII_NAME = h("wickra_tii_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TII_RESET = h("wickra_tii_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TII_FREE = h("wickra_tii_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TREND_LABEL_NEW = h("wickra_trend_label_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4403,6 +5054,7 @@ public final class NativeMethods { WICKRA_TREND_LABEL_BATCH = h("wickra_trend_label_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TREND_LABEL_WARMUP_PERIOD = h("wickra_trend_label_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TREND_LABEL_IS_READY = h("wickra_trend_label_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TREND_LABEL_NAME = h("wickra_trend_label_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TREND_LABEL_RESET = h("wickra_trend_label_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TREND_LABEL_FREE = h("wickra_trend_label_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TREND_STRENGTH_INDEX_NEW = h("wickra_trend_strength_index_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4410,6 +5062,7 @@ public final class NativeMethods { WICKRA_TREND_STRENGTH_INDEX_BATCH = h("wickra_trend_strength_index_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TREND_STRENGTH_INDEX_WARMUP_PERIOD = h("wickra_trend_strength_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TREND_STRENGTH_INDEX_IS_READY = h("wickra_trend_strength_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TREND_STRENGTH_INDEX_NAME = h("wickra_trend_strength_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TREND_STRENGTH_INDEX_RESET = h("wickra_trend_strength_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TREND_STRENGTH_INDEX_FREE = h("wickra_trend_strength_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRENDFLEX_NEW = h("wickra_trendflex_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4417,6 +5070,7 @@ public final class NativeMethods { WICKRA_TRENDFLEX_BATCH = h("wickra_trendflex_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TRENDFLEX_WARMUP_PERIOD = h("wickra_trendflex_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TRENDFLEX_IS_READY = h("wickra_trendflex_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TRENDFLEX_NAME = h("wickra_trendflex_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TRENDFLEX_RESET = h("wickra_trendflex_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRENDFLEX_FREE = h("wickra_trendflex_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRIMA_NEW = h("wickra_trima_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4424,6 +5078,7 @@ public final class NativeMethods { WICKRA_TRIMA_BATCH = h("wickra_trima_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TRIMA_WARMUP_PERIOD = h("wickra_trima_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TRIMA_IS_READY = h("wickra_trima_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TRIMA_NAME = h("wickra_trima_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TRIMA_RESET = h("wickra_trima_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRIMA_FREE = h("wickra_trima_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRIX_NEW = h("wickra_trix_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4431,13 +5086,18 @@ public final class NativeMethods { WICKRA_TRIX_BATCH = h("wickra_trix_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TRIX_WARMUP_PERIOD = h("wickra_trix_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TRIX_IS_READY = h("wickra_trix_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TRIX_NAME = h("wickra_trix_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TRIX_RESET = h("wickra_trix_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRIX_FREE = h("wickra_trix_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init9() { WICKRA_TSF_NEW = h("wickra_tsf_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_TSF_UPDATE = h("wickra_tsf_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_TSF_BATCH = h("wickra_tsf_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TSF_WARMUP_PERIOD = h("wickra_tsf_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TSF_IS_READY = h("wickra_tsf_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TSF_NAME = h("wickra_tsf_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TSF_RESET = h("wickra_tsf_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TSF_FREE = h("wickra_tsf_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TSF_OSCILLATOR_NEW = h("wickra_tsf_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4445,16 +5105,15 @@ public final class NativeMethods { WICKRA_TSF_OSCILLATOR_BATCH = h("wickra_tsf_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TSF_OSCILLATOR_WARMUP_PERIOD = h("wickra_tsf_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TSF_OSCILLATOR_IS_READY = h("wickra_tsf_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TSF_OSCILLATOR_NAME = h("wickra_tsf_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TSF_OSCILLATOR_RESET = h("wickra_tsf_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TSF_OSCILLATOR_FREE = h("wickra_tsf_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TSI_NEW = h("wickra_tsi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); - } - - private static void init8() { WICKRA_TSI_UPDATE = h("wickra_tsi_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_TSI_BATCH = h("wickra_tsi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TSI_WARMUP_PERIOD = h("wickra_tsi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TSI_IS_READY = h("wickra_tsi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TSI_NAME = h("wickra_tsi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TSI_RESET = h("wickra_tsi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TSI_FREE = h("wickra_tsi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ULCER_INDEX_NEW = h("wickra_ulcer_index_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4462,6 +5121,7 @@ public final class NativeMethods { WICKRA_ULCER_INDEX_BATCH = h("wickra_ulcer_index_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ULCER_INDEX_WARMUP_PERIOD = h("wickra_ulcer_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ULCER_INDEX_IS_READY = h("wickra_ulcer_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ULCER_INDEX_NAME = h("wickra_ulcer_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ULCER_INDEX_RESET = h("wickra_ulcer_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ULCER_INDEX_FREE = h("wickra_ulcer_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_UNIVERSAL_OSCILLATOR_NEW = h("wickra_universal_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4469,6 +5129,7 @@ public final class NativeMethods { WICKRA_UNIVERSAL_OSCILLATOR_BATCH = h("wickra_universal_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_UNIVERSAL_OSCILLATOR_WARMUP_PERIOD = h("wickra_universal_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_UNIVERSAL_OSCILLATOR_IS_READY = h("wickra_universal_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_UNIVERSAL_OSCILLATOR_NAME = h("wickra_universal_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_UNIVERSAL_OSCILLATOR_RESET = h("wickra_universal_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_UNIVERSAL_OSCILLATOR_FREE = h("wickra_universal_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_UPSIDE_POTENTIAL_RATIO_NEW = h("wickra_upside_potential_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -4476,6 +5137,7 @@ public final class NativeMethods { WICKRA_UPSIDE_POTENTIAL_RATIO_BATCH = h("wickra_upside_potential_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_UPSIDE_POTENTIAL_RATIO_WARMUP_PERIOD = h("wickra_upside_potential_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_UPSIDE_POTENTIAL_RATIO_IS_READY = h("wickra_upside_potential_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_UPSIDE_POTENTIAL_RATIO_NAME = h("wickra_upside_potential_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_UPSIDE_POTENTIAL_RATIO_RESET = h("wickra_upside_potential_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_UPSIDE_POTENTIAL_RATIO_FREE = h("wickra_upside_potential_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VALUE_AT_RISK_NEW = h("wickra_value_at_risk_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -4483,6 +5145,7 @@ public final class NativeMethods { WICKRA_VALUE_AT_RISK_BATCH = h("wickra_value_at_risk_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VALUE_AT_RISK_WARMUP_PERIOD = h("wickra_value_at_risk_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VALUE_AT_RISK_IS_READY = h("wickra_value_at_risk_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VALUE_AT_RISK_NAME = h("wickra_value_at_risk_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VALUE_AT_RISK_RESET = h("wickra_value_at_risk_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VALUE_AT_RISK_FREE = h("wickra_value_at_risk_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VARIANCE_NEW = h("wickra_variance_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4490,6 +5153,7 @@ public final class NativeMethods { WICKRA_VARIANCE_BATCH = h("wickra_variance_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VARIANCE_WARMUP_PERIOD = h("wickra_variance_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VARIANCE_IS_READY = h("wickra_variance_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VARIANCE_NAME = h("wickra_variance_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VARIANCE_RESET = h("wickra_variance_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VARIANCE_FREE = h("wickra_variance_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VERTICAL_HORIZONTAL_FILTER_NEW = h("wickra_vertical_horizontal_filter_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4497,6 +5161,7 @@ public final class NativeMethods { WICKRA_VERTICAL_HORIZONTAL_FILTER_BATCH = h("wickra_vertical_horizontal_filter_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VERTICAL_HORIZONTAL_FILTER_WARMUP_PERIOD = h("wickra_vertical_horizontal_filter_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VERTICAL_HORIZONTAL_FILTER_IS_READY = h("wickra_vertical_horizontal_filter_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VERTICAL_HORIZONTAL_FILTER_NAME = h("wickra_vertical_horizontal_filter_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VERTICAL_HORIZONTAL_FILTER_RESET = h("wickra_vertical_horizontal_filter_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VERTICAL_HORIZONTAL_FILTER_FREE = h("wickra_vertical_horizontal_filter_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VIDYA_NEW = h("wickra_vidya_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4504,6 +5169,7 @@ public final class NativeMethods { WICKRA_VIDYA_BATCH = h("wickra_vidya_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VIDYA_WARMUP_PERIOD = h("wickra_vidya_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VIDYA_IS_READY = h("wickra_vidya_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VIDYA_NAME = h("wickra_vidya_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VIDYA_RESET = h("wickra_vidya_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VIDYA_FREE = h("wickra_vidya_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLATILITY_OF_VOLATILITY_NEW = h("wickra_volatility_of_volatility_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4511,6 +5177,7 @@ public final class NativeMethods { WICKRA_VOLATILITY_OF_VOLATILITY_BATCH = h("wickra_volatility_of_volatility_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VOLATILITY_OF_VOLATILITY_WARMUP_PERIOD = h("wickra_volatility_of_volatility_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VOLATILITY_OF_VOLATILITY_IS_READY = h("wickra_volatility_of_volatility_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VOLATILITY_OF_VOLATILITY_NAME = h("wickra_volatility_of_volatility_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VOLATILITY_OF_VOLATILITY_RESET = h("wickra_volatility_of_volatility_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLATILITY_OF_VOLATILITY_FREE = h("wickra_volatility_of_volatility_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WAVE_PM_NEW = h("wickra_wave_pm_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4518,6 +5185,7 @@ public final class NativeMethods { WICKRA_WAVE_PM_BATCH = h("wickra_wave_pm_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_WAVE_PM_WARMUP_PERIOD = h("wickra_wave_pm_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_WAVE_PM_IS_READY = h("wickra_wave_pm_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_WAVE_PM_NAME = h("wickra_wave_pm_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_WAVE_PM_RESET = h("wickra_wave_pm_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WAVE_PM_FREE = h("wickra_wave_pm_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WIN_RATE_NEW = h("wickra_win_rate_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4525,6 +5193,7 @@ public final class NativeMethods { WICKRA_WIN_RATE_BATCH = h("wickra_win_rate_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_WIN_RATE_WARMUP_PERIOD = h("wickra_win_rate_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_WIN_RATE_IS_READY = h("wickra_win_rate_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_WIN_RATE_NAME = h("wickra_win_rate_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_WIN_RATE_RESET = h("wickra_win_rate_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WIN_RATE_FREE = h("wickra_win_rate_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WMA_NEW = h("wickra_wma_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4532,6 +5201,7 @@ public final class NativeMethods { WICKRA_WMA_BATCH = h("wickra_wma_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_WMA_WARMUP_PERIOD = h("wickra_wma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_WMA_IS_READY = h("wickra_wma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_WMA_NAME = h("wickra_wma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_WMA_RESET = h("wickra_wma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WMA_FREE = h("wickra_wma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_Z_SCORE_NEW = h("wickra_z_score_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4539,13 +5209,18 @@ public final class NativeMethods { WICKRA_Z_SCORE_BATCH = h("wickra_z_score_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_Z_SCORE_WARMUP_PERIOD = h("wickra_z_score_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_Z_SCORE_IS_READY = h("wickra_z_score_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_Z_SCORE_NAME = h("wickra_z_score_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_Z_SCORE_RESET = h("wickra_z_score_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_Z_SCORE_FREE = h("wickra_z_score_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init10() { WICKRA_ZLEMA_NEW = h("wickra_zlema_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_ZLEMA_UPDATE = h("wickra_zlema_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE)); WICKRA_ZLEMA_BATCH = h("wickra_zlema_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ZLEMA_WARMUP_PERIOD = h("wickra_zlema_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ZLEMA_IS_READY = h("wickra_zlema_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ZLEMA_NAME = h("wickra_zlema_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ZLEMA_RESET = h("wickra_zlema_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ZLEMA_FREE = h("wickra_zlema_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ALPHA_NEW = h("wickra_alpha_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -4553,6 +5228,7 @@ public final class NativeMethods { WICKRA_ALPHA_BATCH = h("wickra_alpha_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ALPHA_WARMUP_PERIOD = h("wickra_alpha_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ALPHA_IS_READY = h("wickra_alpha_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ALPHA_NAME = h("wickra_alpha_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ALPHA_RESET = h("wickra_alpha_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ALPHA_FREE = h("wickra_alpha_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BETA_NEW = h("wickra_beta_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4560,6 +5236,7 @@ public final class NativeMethods { WICKRA_BETA_BATCH = h("wickra_beta_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BETA_WARMUP_PERIOD = h("wickra_beta_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BETA_IS_READY = h("wickra_beta_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BETA_NAME = h("wickra_beta_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BETA_RESET = h("wickra_beta_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BETA_FREE = h("wickra_beta_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BETA_NEUTRAL_SPREAD_NEW = h("wickra_beta_neutral_spread_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4567,16 +5244,15 @@ public final class NativeMethods { WICKRA_BETA_NEUTRAL_SPREAD_BATCH = h("wickra_beta_neutral_spread_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BETA_NEUTRAL_SPREAD_WARMUP_PERIOD = h("wickra_beta_neutral_spread_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BETA_NEUTRAL_SPREAD_IS_READY = h("wickra_beta_neutral_spread_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BETA_NEUTRAL_SPREAD_NAME = h("wickra_beta_neutral_spread_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BETA_NEUTRAL_SPREAD_RESET = h("wickra_beta_neutral_spread_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BETA_NEUTRAL_SPREAD_FREE = h("wickra_beta_neutral_spread_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DISTANCE_SSD_NEW = h("wickra_distance_ssd_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_DISTANCE_SSD_UPDATE = h("wickra_distance_ssd_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE)); - } - - private static void init9() { WICKRA_DISTANCE_SSD_BATCH = h("wickra_distance_ssd_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DISTANCE_SSD_WARMUP_PERIOD = h("wickra_distance_ssd_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DISTANCE_SSD_IS_READY = h("wickra_distance_ssd_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DISTANCE_SSD_NAME = h("wickra_distance_ssd_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DISTANCE_SSD_RESET = h("wickra_distance_ssd_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DISTANCE_SSD_FREE = h("wickra_distance_ssd_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GRANGER_CAUSALITY_NEW = h("wickra_granger_causality_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4584,6 +5260,7 @@ public final class NativeMethods { WICKRA_GRANGER_CAUSALITY_BATCH = h("wickra_granger_causality_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_GRANGER_CAUSALITY_WARMUP_PERIOD = h("wickra_granger_causality_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_GRANGER_CAUSALITY_IS_READY = h("wickra_granger_causality_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_GRANGER_CAUSALITY_NAME = h("wickra_granger_causality_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_GRANGER_CAUSALITY_RESET = h("wickra_granger_causality_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GRANGER_CAUSALITY_FREE = h("wickra_granger_causality_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HASBROUCK_INFORMATION_SHARE_NEW = h("wickra_hasbrouck_information_share_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4591,6 +5268,7 @@ public final class NativeMethods { WICKRA_HASBROUCK_INFORMATION_SHARE_BATCH = h("wickra_hasbrouck_information_share_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HASBROUCK_INFORMATION_SHARE_WARMUP_PERIOD = h("wickra_hasbrouck_information_share_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HASBROUCK_INFORMATION_SHARE_IS_READY = h("wickra_hasbrouck_information_share_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HASBROUCK_INFORMATION_SHARE_NAME = h("wickra_hasbrouck_information_share_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HASBROUCK_INFORMATION_SHARE_RESET = h("wickra_hasbrouck_information_share_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HASBROUCK_INFORMATION_SHARE_FREE = h("wickra_hasbrouck_information_share_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INFORMATION_RATIO_NEW = h("wickra_information_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4598,6 +5276,7 @@ public final class NativeMethods { WICKRA_INFORMATION_RATIO_BATCH = h("wickra_information_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_INFORMATION_RATIO_WARMUP_PERIOD = h("wickra_information_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_INFORMATION_RATIO_IS_READY = h("wickra_information_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_INFORMATION_RATIO_NAME = h("wickra_information_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_INFORMATION_RATIO_RESET = h("wickra_information_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INFORMATION_RATIO_FREE = h("wickra_information_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KENDALL_TAU_NEW = h("wickra_kendall_tau_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4605,6 +5284,7 @@ public final class NativeMethods { WICKRA_KENDALL_TAU_BATCH = h("wickra_kendall_tau_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_KENDALL_TAU_WARMUP_PERIOD = h("wickra_kendall_tau_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KENDALL_TAU_IS_READY = h("wickra_kendall_tau_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KENDALL_TAU_NAME = h("wickra_kendall_tau_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KENDALL_TAU_RESET = h("wickra_kendall_tau_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KENDALL_TAU_FREE = h("wickra_kendall_tau_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OU_HALF_LIFE_NEW = h("wickra_ou_half_life_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4612,6 +5292,7 @@ public final class NativeMethods { WICKRA_OU_HALF_LIFE_BATCH = h("wickra_ou_half_life_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_OU_HALF_LIFE_WARMUP_PERIOD = h("wickra_ou_half_life_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_OU_HALF_LIFE_IS_READY = h("wickra_ou_half_life_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_OU_HALF_LIFE_NAME = h("wickra_ou_half_life_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_OU_HALF_LIFE_RESET = h("wickra_ou_half_life_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OU_HALF_LIFE_FREE = h("wickra_ou_half_life_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PAIR_SPREAD_Z_SCORE_NEW = h("wickra_pair_spread_z_score_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4619,6 +5300,7 @@ public final class NativeMethods { WICKRA_PAIR_SPREAD_Z_SCORE_BATCH = h("wickra_pair_spread_z_score_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PAIR_SPREAD_Z_SCORE_WARMUP_PERIOD = h("wickra_pair_spread_z_score_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PAIR_SPREAD_Z_SCORE_IS_READY = h("wickra_pair_spread_z_score_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PAIR_SPREAD_Z_SCORE_NAME = h("wickra_pair_spread_z_score_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PAIR_SPREAD_Z_SCORE_RESET = h("wickra_pair_spread_z_score_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PAIR_SPREAD_Z_SCORE_FREE = h("wickra_pair_spread_z_score_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PAIRWISE_BETA_NEW = h("wickra_pairwise_beta_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4626,6 +5308,7 @@ public final class NativeMethods { WICKRA_PAIRWISE_BETA_BATCH = h("wickra_pairwise_beta_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PAIRWISE_BETA_WARMUP_PERIOD = h("wickra_pairwise_beta_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PAIRWISE_BETA_IS_READY = h("wickra_pairwise_beta_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PAIRWISE_BETA_NAME = h("wickra_pairwise_beta_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PAIRWISE_BETA_RESET = h("wickra_pairwise_beta_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PAIRWISE_BETA_FREE = h("wickra_pairwise_beta_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PEARSON_CORRELATION_NEW = h("wickra_pearson_correlation_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4633,6 +5316,7 @@ public final class NativeMethods { WICKRA_PEARSON_CORRELATION_BATCH = h("wickra_pearson_correlation_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PEARSON_CORRELATION_WARMUP_PERIOD = h("wickra_pearson_correlation_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PEARSON_CORRELATION_IS_READY = h("wickra_pearson_correlation_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PEARSON_CORRELATION_NAME = h("wickra_pearson_correlation_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PEARSON_CORRELATION_RESET = h("wickra_pearson_correlation_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PEARSON_CORRELATION_FREE = h("wickra_pearson_correlation_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLLING_CORRELATION_NEW = h("wickra_rolling_correlation_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4640,6 +5324,7 @@ public final class NativeMethods { WICKRA_ROLLING_CORRELATION_BATCH = h("wickra_rolling_correlation_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROLLING_CORRELATION_WARMUP_PERIOD = h("wickra_rolling_correlation_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROLLING_CORRELATION_IS_READY = h("wickra_rolling_correlation_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROLLING_CORRELATION_NAME = h("wickra_rolling_correlation_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROLLING_CORRELATION_RESET = h("wickra_rolling_correlation_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLLING_CORRELATION_FREE = h("wickra_rolling_correlation_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLLING_COVARIANCE_NEW = h("wickra_rolling_covariance_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4647,13 +5332,18 @@ public final class NativeMethods { WICKRA_ROLLING_COVARIANCE_BATCH = h("wickra_rolling_covariance_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROLLING_COVARIANCE_WARMUP_PERIOD = h("wickra_rolling_covariance_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROLLING_COVARIANCE_IS_READY = h("wickra_rolling_covariance_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROLLING_COVARIANCE_NAME = h("wickra_rolling_covariance_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROLLING_COVARIANCE_RESET = h("wickra_rolling_covariance_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLLING_COVARIANCE_FREE = h("wickra_rolling_covariance_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init11() { WICKRA_SPEARMAN_CORRELATION_NEW = h("wickra_spearman_correlation_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_SPEARMAN_CORRELATION_UPDATE = h("wickra_spearman_correlation_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE)); WICKRA_SPEARMAN_CORRELATION_BATCH = h("wickra_spearman_correlation_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SPEARMAN_CORRELATION_WARMUP_PERIOD = h("wickra_spearman_correlation_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SPEARMAN_CORRELATION_IS_READY = h("wickra_spearman_correlation_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SPEARMAN_CORRELATION_NAME = h("wickra_spearman_correlation_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SPEARMAN_CORRELATION_RESET = h("wickra_spearman_correlation_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SPEARMAN_CORRELATION_FREE = h("wickra_spearman_correlation_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SPREAD_AR1_COEFFICIENT_NEW = h("wickra_spread_ar1_coefficient_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4661,6 +5351,7 @@ public final class NativeMethods { WICKRA_SPREAD_AR1_COEFFICIENT_BATCH = h("wickra_spread_ar1_coefficient_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SPREAD_AR1_COEFFICIENT_WARMUP_PERIOD = h("wickra_spread_ar1_coefficient_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SPREAD_AR1_COEFFICIENT_IS_READY = h("wickra_spread_ar1_coefficient_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SPREAD_AR1_COEFFICIENT_NAME = h("wickra_spread_ar1_coefficient_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SPREAD_AR1_COEFFICIENT_RESET = h("wickra_spread_ar1_coefficient_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SPREAD_AR1_COEFFICIENT_FREE = h("wickra_spread_ar1_coefficient_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SPREAD_HURST_NEW = h("wickra_spread_hurst_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4668,6 +5359,7 @@ public final class NativeMethods { WICKRA_SPREAD_HURST_BATCH = h("wickra_spread_hurst_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SPREAD_HURST_WARMUP_PERIOD = h("wickra_spread_hurst_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SPREAD_HURST_IS_READY = h("wickra_spread_hurst_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SPREAD_HURST_NAME = h("wickra_spread_hurst_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SPREAD_HURST_RESET = h("wickra_spread_hurst_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SPREAD_HURST_FREE = h("wickra_spread_hurst_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TREYNOR_RATIO_NEW = h("wickra_treynor_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -4675,6 +5367,7 @@ public final class NativeMethods { WICKRA_TREYNOR_RATIO_BATCH = h("wickra_treynor_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TREYNOR_RATIO_WARMUP_PERIOD = h("wickra_treynor_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TREYNOR_RATIO_IS_READY = h("wickra_treynor_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TREYNOR_RATIO_NAME = h("wickra_treynor_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TREYNOR_RATIO_RESET = h("wickra_treynor_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TREYNOR_RATIO_FREE = h("wickra_treynor_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VARIANCE_RATIO_NEW = h("wickra_variance_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4682,6 +5375,7 @@ public final class NativeMethods { WICKRA_VARIANCE_RATIO_BATCH = h("wickra_variance_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VARIANCE_RATIO_WARMUP_PERIOD = h("wickra_variance_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VARIANCE_RATIO_IS_READY = h("wickra_variance_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VARIANCE_RATIO_NAME = h("wickra_variance_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VARIANCE_RATIO_RESET = h("wickra_variance_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VARIANCE_RATIO_FREE = h("wickra_variance_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ABANDONED_BABY_NEW = h("wickra_abandoned_baby_new", FunctionDescriptor.of(ADDRESS)); @@ -4689,16 +5383,15 @@ public final class NativeMethods { WICKRA_ABANDONED_BABY_BATCH = h("wickra_abandoned_baby_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ABANDONED_BABY_WARMUP_PERIOD = h("wickra_abandoned_baby_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ABANDONED_BABY_IS_READY = h("wickra_abandoned_baby_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ABANDONED_BABY_NAME = h("wickra_abandoned_baby_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ABANDONED_BABY_RESET = h("wickra_abandoned_baby_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ABANDONED_BABY_FREE = h("wickra_abandoned_baby_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ABCD_NEW = h("wickra_abcd_new", FunctionDescriptor.of(ADDRESS)); WICKRA_ABCD_UPDATE = h("wickra_abcd_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_ABCD_BATCH = h("wickra_abcd_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); - } - - private static void init10() { WICKRA_ABCD_WARMUP_PERIOD = h("wickra_abcd_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ABCD_IS_READY = h("wickra_abcd_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ABCD_NAME = h("wickra_abcd_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ABCD_RESET = h("wickra_abcd_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ABCD_FREE = h("wickra_abcd_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ACCELERATOR_OSCILLATOR_NEW = h("wickra_accelerator_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -4706,6 +5399,7 @@ public final class NativeMethods { WICKRA_ACCELERATOR_OSCILLATOR_BATCH = h("wickra_accelerator_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ACCELERATOR_OSCILLATOR_WARMUP_PERIOD = h("wickra_accelerator_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ACCELERATOR_OSCILLATOR_IS_READY = h("wickra_accelerator_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ACCELERATOR_OSCILLATOR_NAME = h("wickra_accelerator_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ACCELERATOR_OSCILLATOR_RESET = h("wickra_accelerator_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ACCELERATOR_OSCILLATOR_FREE = h("wickra_accelerator_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AD_OSCILLATOR_NEW = h("wickra_ad_oscillator_new", FunctionDescriptor.of(ADDRESS)); @@ -4713,6 +5407,7 @@ public final class NativeMethods { WICKRA_AD_OSCILLATOR_BATCH = h("wickra_ad_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_AD_OSCILLATOR_WARMUP_PERIOD = h("wickra_ad_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AD_OSCILLATOR_IS_READY = h("wickra_ad_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AD_OSCILLATOR_NAME = h("wickra_ad_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AD_OSCILLATOR_RESET = h("wickra_ad_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AD_OSCILLATOR_FREE = h("wickra_ad_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADAPTIVE_CCI_NEW = h("wickra_adaptive_cci_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4720,6 +5415,7 @@ public final class NativeMethods { WICKRA_ADAPTIVE_CCI_BATCH = h("wickra_adaptive_cci_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ADAPTIVE_CCI_WARMUP_PERIOD = h("wickra_adaptive_cci_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ADAPTIVE_CCI_IS_READY = h("wickra_adaptive_cci_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ADAPTIVE_CCI_NAME = h("wickra_adaptive_cci_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ADAPTIVE_CCI_RESET = h("wickra_adaptive_cci_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADAPTIVE_CCI_FREE = h("wickra_adaptive_cci_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADL_NEW = h("wickra_adl_new", FunctionDescriptor.of(ADDRESS)); @@ -4727,6 +5423,7 @@ public final class NativeMethods { WICKRA_ADL_BATCH = h("wickra_adl_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ADL_WARMUP_PERIOD = h("wickra_adl_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ADL_IS_READY = h("wickra_adl_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ADL_NAME = h("wickra_adl_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ADL_RESET = h("wickra_adl_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADL_FREE = h("wickra_adl_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADVANCE_BLOCK_NEW = h("wickra_advance_block_new", FunctionDescriptor.of(ADDRESS)); @@ -4734,6 +5431,7 @@ public final class NativeMethods { WICKRA_ADVANCE_BLOCK_BATCH = h("wickra_advance_block_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ADVANCE_BLOCK_WARMUP_PERIOD = h("wickra_advance_block_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ADVANCE_BLOCK_IS_READY = h("wickra_advance_block_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ADVANCE_BLOCK_NAME = h("wickra_advance_block_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ADVANCE_BLOCK_RESET = h("wickra_advance_block_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADVANCE_BLOCK_FREE = h("wickra_advance_block_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADXR_NEW = h("wickra_adxr_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4741,6 +5439,7 @@ public final class NativeMethods { WICKRA_ADXR_BATCH = h("wickra_adxr_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ADXR_WARMUP_PERIOD = h("wickra_adxr_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ADXR_IS_READY = h("wickra_adxr_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ADXR_NAME = h("wickra_adxr_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ADXR_RESET = h("wickra_adxr_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADXR_FREE = h("wickra_adxr_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ANCHORED_VWAP_NEW = h("wickra_anchored_vwap_new", FunctionDescriptor.of(ADDRESS)); @@ -4748,6 +5447,7 @@ public final class NativeMethods { WICKRA_ANCHORED_VWAP_BATCH = h("wickra_anchored_vwap_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ANCHORED_VWAP_WARMUP_PERIOD = h("wickra_anchored_vwap_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ANCHORED_VWAP_IS_READY = h("wickra_anchored_vwap_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ANCHORED_VWAP_NAME = h("wickra_anchored_vwap_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ANCHORED_VWAP_RESET = h("wickra_anchored_vwap_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ANCHORED_VWAP_FREE = h("wickra_anchored_vwap_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AROON_OSCILLATOR_NEW = h("wickra_aroon_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4755,13 +5455,18 @@ public final class NativeMethods { WICKRA_AROON_OSCILLATOR_BATCH = h("wickra_aroon_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_AROON_OSCILLATOR_WARMUP_PERIOD = h("wickra_aroon_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AROON_OSCILLATOR_IS_READY = h("wickra_aroon_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AROON_OSCILLATOR_NAME = h("wickra_aroon_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AROON_OSCILLATOR_RESET = h("wickra_aroon_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AROON_OSCILLATOR_FREE = h("wickra_aroon_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init12() { WICKRA_ATR_NEW = h("wickra_atr_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_ATR_UPDATE = h("wickra_atr_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_ATR_BATCH = h("wickra_atr_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ATR_WARMUP_PERIOD = h("wickra_atr_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ATR_IS_READY = h("wickra_atr_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ATR_NAME = h("wickra_atr_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ATR_RESET = h("wickra_atr_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ATR_FREE = h("wickra_atr_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ATR_TRAILING_STOP_NEW = h("wickra_atr_trailing_stop_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -4769,6 +5474,7 @@ public final class NativeMethods { WICKRA_ATR_TRAILING_STOP_BATCH = h("wickra_atr_trailing_stop_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ATR_TRAILING_STOP_WARMUP_PERIOD = h("wickra_atr_trailing_stop_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ATR_TRAILING_STOP_IS_READY = h("wickra_atr_trailing_stop_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ATR_TRAILING_STOP_NAME = h("wickra_atr_trailing_stop_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ATR_TRAILING_STOP_RESET = h("wickra_atr_trailing_stop_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ATR_TRAILING_STOP_FREE = h("wickra_atr_trailing_stop_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AVERAGE_DAILY_RANGE_NEW = h("wickra_average_daily_range_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_INT)); @@ -4776,6 +5482,7 @@ public final class NativeMethods { WICKRA_AVERAGE_DAILY_RANGE_BATCH = h("wickra_average_daily_range_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_AVERAGE_DAILY_RANGE_WARMUP_PERIOD = h("wickra_average_daily_range_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AVERAGE_DAILY_RANGE_IS_READY = h("wickra_average_daily_range_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AVERAGE_DAILY_RANGE_NAME = h("wickra_average_daily_range_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AVERAGE_DAILY_RANGE_RESET = h("wickra_average_daily_range_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AVERAGE_DAILY_RANGE_FREE = h("wickra_average_daily_range_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AVG_PRICE_NEW = h("wickra_avg_price_new", FunctionDescriptor.of(ADDRESS)); @@ -4783,6 +5490,7 @@ public final class NativeMethods { WICKRA_AVG_PRICE_BATCH = h("wickra_avg_price_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_AVG_PRICE_WARMUP_PERIOD = h("wickra_avg_price_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AVG_PRICE_IS_READY = h("wickra_avg_price_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AVG_PRICE_NAME = h("wickra_avg_price_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AVG_PRICE_RESET = h("wickra_avg_price_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AVG_PRICE_FREE = h("wickra_avg_price_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AWESOME_OSCILLATOR_NEW = h("wickra_awesome_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4790,6 +5498,7 @@ public final class NativeMethods { WICKRA_AWESOME_OSCILLATOR_BATCH = h("wickra_awesome_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_AWESOME_OSCILLATOR_WARMUP_PERIOD = h("wickra_awesome_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AWESOME_OSCILLATOR_IS_READY = h("wickra_awesome_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AWESOME_OSCILLATOR_NAME = h("wickra_awesome_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AWESOME_OSCILLATOR_RESET = h("wickra_awesome_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AWESOME_OSCILLATOR_FREE = h("wickra_awesome_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_NEW = h("wickra_awesome_oscillator_histogram_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -4797,6 +5506,7 @@ public final class NativeMethods { WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_BATCH = h("wickra_awesome_oscillator_histogram_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_WARMUP_PERIOD = h("wickra_awesome_oscillator_histogram_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_IS_READY = h("wickra_awesome_oscillator_histogram_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_NAME = h("wickra_awesome_oscillator_histogram_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_RESET = h("wickra_awesome_oscillator_histogram_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AWESOME_OSCILLATOR_HISTOGRAM_FREE = h("wickra_awesome_oscillator_histogram_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BALANCE_OF_POWER_NEW = h("wickra_balance_of_power_new", FunctionDescriptor.of(ADDRESS)); @@ -4804,6 +5514,7 @@ public final class NativeMethods { WICKRA_BALANCE_OF_POWER_BATCH = h("wickra_balance_of_power_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BALANCE_OF_POWER_WARMUP_PERIOD = h("wickra_balance_of_power_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BALANCE_OF_POWER_IS_READY = h("wickra_balance_of_power_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BALANCE_OF_POWER_NAME = h("wickra_balance_of_power_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BALANCE_OF_POWER_RESET = h("wickra_balance_of_power_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BALANCE_OF_POWER_FREE = h("wickra_balance_of_power_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BAT_NEW = h("wickra_bat_new", FunctionDescriptor.of(ADDRESS)); @@ -4811,16 +5522,15 @@ public final class NativeMethods { WICKRA_BAT_BATCH = h("wickra_bat_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BAT_WARMUP_PERIOD = h("wickra_bat_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BAT_IS_READY = h("wickra_bat_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BAT_NAME = h("wickra_bat_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BAT_RESET = h("wickra_bat_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BAT_FREE = h("wickra_bat_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BELT_HOLD_NEW = h("wickra_belt_hold_new", FunctionDescriptor.of(ADDRESS)); WICKRA_BELT_HOLD_UPDATE = h("wickra_belt_hold_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_BELT_HOLD_BATCH = h("wickra_belt_hold_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BELT_HOLD_WARMUP_PERIOD = h("wickra_belt_hold_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); - } - - private static void init11() { WICKRA_BELT_HOLD_IS_READY = h("wickra_belt_hold_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BELT_HOLD_NAME = h("wickra_belt_hold_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BELT_HOLD_RESET = h("wickra_belt_hold_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BELT_HOLD_FREE = h("wickra_belt_hold_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BETTER_VOLUME_NEW = h("wickra_better_volume_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4828,6 +5538,7 @@ public final class NativeMethods { WICKRA_BETTER_VOLUME_BATCH = h("wickra_better_volume_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BETTER_VOLUME_WARMUP_PERIOD = h("wickra_better_volume_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BETTER_VOLUME_IS_READY = h("wickra_better_volume_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BETTER_VOLUME_NAME = h("wickra_better_volume_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BETTER_VOLUME_RESET = h("wickra_better_volume_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BETTER_VOLUME_FREE = h("wickra_better_volume_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BODY_SIZE_PCT_NEW = h("wickra_body_size_pct_new", FunctionDescriptor.of(ADDRESS)); @@ -4835,6 +5546,7 @@ public final class NativeMethods { WICKRA_BODY_SIZE_PCT_BATCH = h("wickra_body_size_pct_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BODY_SIZE_PCT_WARMUP_PERIOD = h("wickra_body_size_pct_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BODY_SIZE_PCT_IS_READY = h("wickra_body_size_pct_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BODY_SIZE_PCT_NAME = h("wickra_body_size_pct_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BODY_SIZE_PCT_RESET = h("wickra_body_size_pct_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BODY_SIZE_PCT_FREE = h("wickra_body_size_pct_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BREAKAWAY_NEW = h("wickra_breakaway_new", FunctionDescriptor.of(ADDRESS)); @@ -4842,6 +5554,7 @@ public final class NativeMethods { WICKRA_BREAKAWAY_BATCH = h("wickra_breakaway_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BREAKAWAY_WARMUP_PERIOD = h("wickra_breakaway_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BREAKAWAY_IS_READY = h("wickra_breakaway_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BREAKAWAY_NAME = h("wickra_breakaway_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BREAKAWAY_RESET = h("wickra_breakaway_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BREAKAWAY_FREE = h("wickra_breakaway_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BUTTERFLY_NEW = h("wickra_butterfly_new", FunctionDescriptor.of(ADDRESS)); @@ -4849,6 +5562,7 @@ public final class NativeMethods { WICKRA_BUTTERFLY_BATCH = h("wickra_butterfly_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_BUTTERFLY_WARMUP_PERIOD = h("wickra_butterfly_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BUTTERFLY_IS_READY = h("wickra_butterfly_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BUTTERFLY_NAME = h("wickra_butterfly_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BUTTERFLY_RESET = h("wickra_butterfly_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BUTTERFLY_FREE = h("wickra_butterfly_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CCI_NEW = h("wickra_cci_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4856,6 +5570,7 @@ public final class NativeMethods { WICKRA_CCI_BATCH = h("wickra_cci_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CCI_WARMUP_PERIOD = h("wickra_cci_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CCI_IS_READY = h("wickra_cci_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CCI_NAME = h("wickra_cci_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CCI_RESET = h("wickra_cci_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CCI_FREE = h("wickra_cci_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CHAIKIN_OSCILLATOR_NEW = h("wickra_chaikin_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -4863,13 +5578,18 @@ public final class NativeMethods { WICKRA_CHAIKIN_OSCILLATOR_BATCH = h("wickra_chaikin_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CHAIKIN_OSCILLATOR_WARMUP_PERIOD = h("wickra_chaikin_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CHAIKIN_OSCILLATOR_IS_READY = h("wickra_chaikin_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CHAIKIN_OSCILLATOR_NAME = h("wickra_chaikin_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CHAIKIN_OSCILLATOR_RESET = h("wickra_chaikin_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CHAIKIN_OSCILLATOR_FREE = h("wickra_chaikin_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init13() { WICKRA_CHAIKIN_VOLATILITY_NEW = h("wickra_chaikin_volatility_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_CHAIKIN_VOLATILITY_UPDATE = h("wickra_chaikin_volatility_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_CHAIKIN_VOLATILITY_BATCH = h("wickra_chaikin_volatility_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CHAIKIN_VOLATILITY_WARMUP_PERIOD = h("wickra_chaikin_volatility_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CHAIKIN_VOLATILITY_IS_READY = h("wickra_chaikin_volatility_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CHAIKIN_VOLATILITY_NAME = h("wickra_chaikin_volatility_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CHAIKIN_VOLATILITY_RESET = h("wickra_chaikin_volatility_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CHAIKIN_VOLATILITY_FREE = h("wickra_chaikin_volatility_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CHOPPINESS_INDEX_NEW = h("wickra_choppiness_index_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4877,6 +5597,7 @@ public final class NativeMethods { WICKRA_CHOPPINESS_INDEX_BATCH = h("wickra_choppiness_index_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CHOPPINESS_INDEX_WARMUP_PERIOD = h("wickra_choppiness_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CHOPPINESS_INDEX_IS_READY = h("wickra_choppiness_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CHOPPINESS_INDEX_NAME = h("wickra_choppiness_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CHOPPINESS_INDEX_RESET = h("wickra_choppiness_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CHOPPINESS_INDEX_FREE = h("wickra_choppiness_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CLOSE_VS_OPEN_NEW = h("wickra_close_vs_open_new", FunctionDescriptor.of(ADDRESS)); @@ -4884,6 +5605,7 @@ public final class NativeMethods { WICKRA_CLOSE_VS_OPEN_BATCH = h("wickra_close_vs_open_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CLOSE_VS_OPEN_WARMUP_PERIOD = h("wickra_close_vs_open_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CLOSE_VS_OPEN_IS_READY = h("wickra_close_vs_open_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CLOSE_VS_OPEN_NAME = h("wickra_close_vs_open_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CLOSE_VS_OPEN_RESET = h("wickra_close_vs_open_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CLOSE_VS_OPEN_FREE = h("wickra_close_vs_open_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CLOSING_MARUBOZU_NEW = h("wickra_closing_marubozu_new", FunctionDescriptor.of(ADDRESS)); @@ -4891,6 +5613,7 @@ public final class NativeMethods { WICKRA_CLOSING_MARUBOZU_BATCH = h("wickra_closing_marubozu_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CLOSING_MARUBOZU_WARMUP_PERIOD = h("wickra_closing_marubozu_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CLOSING_MARUBOZU_IS_READY = h("wickra_closing_marubozu_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CLOSING_MARUBOZU_NAME = h("wickra_closing_marubozu_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CLOSING_MARUBOZU_RESET = h("wickra_closing_marubozu_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CLOSING_MARUBOZU_FREE = h("wickra_closing_marubozu_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CHAIKIN_MONEY_FLOW_NEW = h("wickra_chaikin_money_flow_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4898,6 +5621,7 @@ public final class NativeMethods { WICKRA_CHAIKIN_MONEY_FLOW_BATCH = h("wickra_chaikin_money_flow_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CHAIKIN_MONEY_FLOW_WARMUP_PERIOD = h("wickra_chaikin_money_flow_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CHAIKIN_MONEY_FLOW_IS_READY = h("wickra_chaikin_money_flow_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CHAIKIN_MONEY_FLOW_NAME = h("wickra_chaikin_money_flow_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CHAIKIN_MONEY_FLOW_RESET = h("wickra_chaikin_money_flow_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CHAIKIN_MONEY_FLOW_FREE = h("wickra_chaikin_money_flow_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CONCEALING_BABY_SWALLOW_NEW = h("wickra_concealing_baby_swallow_new", FunctionDescriptor.of(ADDRESS)); @@ -4905,6 +5629,7 @@ public final class NativeMethods { WICKRA_CONCEALING_BABY_SWALLOW_BATCH = h("wickra_concealing_baby_swallow_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CONCEALING_BABY_SWALLOW_WARMUP_PERIOD = h("wickra_concealing_baby_swallow_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CONCEALING_BABY_SWALLOW_IS_READY = h("wickra_concealing_baby_swallow_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CONCEALING_BABY_SWALLOW_NAME = h("wickra_concealing_baby_swallow_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CONCEALING_BABY_SWALLOW_RESET = h("wickra_concealing_baby_swallow_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CONCEALING_BABY_SWALLOW_FREE = h("wickra_concealing_baby_swallow_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_COUNTERATTACK_NEW = h("wickra_counterattack_new", FunctionDescriptor.of(ADDRESS)); @@ -4912,6 +5637,7 @@ public final class NativeMethods { WICKRA_COUNTERATTACK_BATCH = h("wickra_counterattack_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_COUNTERATTACK_WARMUP_PERIOD = h("wickra_counterattack_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_COUNTERATTACK_IS_READY = h("wickra_counterattack_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_COUNTERATTACK_NAME = h("wickra_counterattack_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_COUNTERATTACK_RESET = h("wickra_counterattack_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_COUNTERATTACK_FREE = h("wickra_counterattack_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CRAB_NEW = h("wickra_crab_new", FunctionDescriptor.of(ADDRESS)); @@ -4919,6 +5645,7 @@ public final class NativeMethods { WICKRA_CRAB_BATCH = h("wickra_crab_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CRAB_WARMUP_PERIOD = h("wickra_crab_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CRAB_IS_READY = h("wickra_crab_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CRAB_NAME = h("wickra_crab_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CRAB_RESET = h("wickra_crab_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CRAB_FREE = h("wickra_crab_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CUP_AND_HANDLE_NEW = h("wickra_cup_and_handle_new", FunctionDescriptor.of(ADDRESS)); @@ -4926,6 +5653,7 @@ public final class NativeMethods { WICKRA_CUP_AND_HANDLE_BATCH = h("wickra_cup_and_handle_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CUP_AND_HANDLE_WARMUP_PERIOD = h("wickra_cup_and_handle_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CUP_AND_HANDLE_IS_READY = h("wickra_cup_and_handle_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CUP_AND_HANDLE_NAME = h("wickra_cup_and_handle_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CUP_AND_HANDLE_RESET = h("wickra_cup_and_handle_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CUP_AND_HANDLE_FREE = h("wickra_cup_and_handle_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CYPHER_NEW = h("wickra_cypher_new", FunctionDescriptor.of(ADDRESS)); @@ -4933,6 +5661,7 @@ public final class NativeMethods { WICKRA_CYPHER_BATCH = h("wickra_cypher_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_CYPHER_WARMUP_PERIOD = h("wickra_cypher_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CYPHER_IS_READY = h("wickra_cypher_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CYPHER_NAME = h("wickra_cypher_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CYPHER_RESET = h("wickra_cypher_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CYPHER_FREE = h("wickra_cypher_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DEMAND_INDEX_NEW = h("wickra_demand_index_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4940,9 +5669,7 @@ public final class NativeMethods { WICKRA_DEMAND_INDEX_BATCH = h("wickra_demand_index_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DEMAND_INDEX_WARMUP_PERIOD = h("wickra_demand_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DEMAND_INDEX_IS_READY = h("wickra_demand_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); - } - - private static void init12() { + WICKRA_DEMAND_INDEX_NAME = h("wickra_demand_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DEMAND_INDEX_RESET = h("wickra_demand_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DEMAND_INDEX_FREE = h("wickra_demand_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DOJI_NEW = h("wickra_doji_new", FunctionDescriptor.of(ADDRESS)); @@ -4950,6 +5677,7 @@ public final class NativeMethods { WICKRA_DOJI_BATCH = h("wickra_doji_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DOJI_WARMUP_PERIOD = h("wickra_doji_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DOJI_IS_READY = h("wickra_doji_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DOJI_NAME = h("wickra_doji_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DOJI_RESET = h("wickra_doji_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DOJI_FREE = h("wickra_doji_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DOJI_STAR_NEW = h("wickra_doji_star_new", FunctionDescriptor.of(ADDRESS)); @@ -4957,6 +5685,7 @@ public final class NativeMethods { WICKRA_DOJI_STAR_BATCH = h("wickra_doji_star_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DOJI_STAR_WARMUP_PERIOD = h("wickra_doji_star_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DOJI_STAR_IS_READY = h("wickra_doji_star_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DOJI_STAR_NAME = h("wickra_doji_star_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DOJI_STAR_RESET = h("wickra_doji_star_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DOJI_STAR_FREE = h("wickra_doji_star_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DOUBLE_TOP_BOTTOM_NEW = h("wickra_double_top_bottom_new", FunctionDescriptor.of(ADDRESS)); @@ -4964,6 +5693,7 @@ public final class NativeMethods { WICKRA_DOUBLE_TOP_BOTTOM_BATCH = h("wickra_double_top_bottom_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DOUBLE_TOP_BOTTOM_WARMUP_PERIOD = h("wickra_double_top_bottom_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DOUBLE_TOP_BOTTOM_IS_READY = h("wickra_double_top_bottom_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DOUBLE_TOP_BOTTOM_NAME = h("wickra_double_top_bottom_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DOUBLE_TOP_BOTTOM_RESET = h("wickra_double_top_bottom_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DOUBLE_TOP_BOTTOM_FREE = h("wickra_double_top_bottom_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DOWNSIDE_GAP_THREE_METHODS_NEW = h("wickra_downside_gap_three_methods_new", FunctionDescriptor.of(ADDRESS)); @@ -4971,13 +5701,18 @@ public final class NativeMethods { WICKRA_DOWNSIDE_GAP_THREE_METHODS_BATCH = h("wickra_downside_gap_three_methods_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DOWNSIDE_GAP_THREE_METHODS_WARMUP_PERIOD = h("wickra_downside_gap_three_methods_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DOWNSIDE_GAP_THREE_METHODS_IS_READY = h("wickra_downside_gap_three_methods_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DOWNSIDE_GAP_THREE_METHODS_NAME = h("wickra_downside_gap_three_methods_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DOWNSIDE_GAP_THREE_METHODS_RESET = h("wickra_downside_gap_three_methods_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DOWNSIDE_GAP_THREE_METHODS_FREE = h("wickra_downside_gap_three_methods_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init14() { WICKRA_DRAGONFLY_DOJI_NEW = h("wickra_dragonfly_doji_new", FunctionDescriptor.of(ADDRESS)); WICKRA_DRAGONFLY_DOJI_UPDATE = h("wickra_dragonfly_doji_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_DRAGONFLY_DOJI_BATCH = h("wickra_dragonfly_doji_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DRAGONFLY_DOJI_WARMUP_PERIOD = h("wickra_dragonfly_doji_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DRAGONFLY_DOJI_IS_READY = h("wickra_dragonfly_doji_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DRAGONFLY_DOJI_NAME = h("wickra_dragonfly_doji_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DRAGONFLY_DOJI_RESET = h("wickra_dragonfly_doji_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DRAGONFLY_DOJI_FREE = h("wickra_dragonfly_doji_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DUMPLING_TOP_NEW = h("wickra_dumpling_top_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4985,6 +5720,7 @@ public final class NativeMethods { WICKRA_DUMPLING_TOP_BATCH = h("wickra_dumpling_top_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DUMPLING_TOP_WARMUP_PERIOD = h("wickra_dumpling_top_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DUMPLING_TOP_IS_READY = h("wickra_dumpling_top_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DUMPLING_TOP_NAME = h("wickra_dumpling_top_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DUMPLING_TOP_RESET = h("wickra_dumpling_top_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DUMPLING_TOP_FREE = h("wickra_dumpling_top_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DX_NEW = h("wickra_dx_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4992,6 +5728,7 @@ public final class NativeMethods { WICKRA_DX_BATCH = h("wickra_dx_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DX_WARMUP_PERIOD = h("wickra_dx_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DX_IS_READY = h("wickra_dx_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DX_NAME = h("wickra_dx_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DX_RESET = h("wickra_dx_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DX_FREE = h("wickra_dx_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EASE_OF_MOVEMENT_NEW = h("wickra_ease_of_movement_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -4999,6 +5736,7 @@ public final class NativeMethods { WICKRA_EASE_OF_MOVEMENT_BATCH = h("wickra_ease_of_movement_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_EASE_OF_MOVEMENT_WARMUP_PERIOD = h("wickra_ease_of_movement_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_EASE_OF_MOVEMENT_IS_READY = h("wickra_ease_of_movement_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_EASE_OF_MOVEMENT_NAME = h("wickra_ease_of_movement_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_EASE_OF_MOVEMENT_RESET = h("wickra_ease_of_movement_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EASE_OF_MOVEMENT_FREE = h("wickra_ease_of_movement_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ENGULFING_NEW = h("wickra_engulfing_new", FunctionDescriptor.of(ADDRESS)); @@ -5006,6 +5744,7 @@ public final class NativeMethods { WICKRA_ENGULFING_BATCH = h("wickra_engulfing_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ENGULFING_WARMUP_PERIOD = h("wickra_engulfing_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ENGULFING_IS_READY = h("wickra_engulfing_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ENGULFING_NAME = h("wickra_engulfing_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ENGULFING_RESET = h("wickra_engulfing_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ENGULFING_FREE = h("wickra_engulfing_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EVENING_DOJI_STAR_NEW = h("wickra_evening_doji_star_new", FunctionDescriptor.of(ADDRESS)); @@ -5013,6 +5752,7 @@ public final class NativeMethods { WICKRA_EVENING_DOJI_STAR_BATCH = h("wickra_evening_doji_star_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_EVENING_DOJI_STAR_WARMUP_PERIOD = h("wickra_evening_doji_star_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_EVENING_DOJI_STAR_IS_READY = h("wickra_evening_doji_star_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_EVENING_DOJI_STAR_NAME = h("wickra_evening_doji_star_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_EVENING_DOJI_STAR_RESET = h("wickra_evening_doji_star_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EVENING_DOJI_STAR_FREE = h("wickra_evening_doji_star_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EVWMA_NEW = h("wickra_evwma_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5020,6 +5760,7 @@ public final class NativeMethods { WICKRA_EVWMA_BATCH = h("wickra_evwma_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_EVWMA_WARMUP_PERIOD = h("wickra_evwma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_EVWMA_IS_READY = h("wickra_evwma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_EVWMA_NAME = h("wickra_evwma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_EVWMA_RESET = h("wickra_evwma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EVWMA_FREE = h("wickra_evwma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FALLING_THREE_METHODS_NEW = h("wickra_falling_three_methods_new", FunctionDescriptor.of(ADDRESS)); @@ -5027,6 +5768,7 @@ public final class NativeMethods { WICKRA_FALLING_THREE_METHODS_BATCH = h("wickra_falling_three_methods_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_FALLING_THREE_METHODS_WARMUP_PERIOD = h("wickra_falling_three_methods_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FALLING_THREE_METHODS_IS_READY = h("wickra_falling_three_methods_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FALLING_THREE_METHODS_NAME = h("wickra_falling_three_methods_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FALLING_THREE_METHODS_RESET = h("wickra_falling_three_methods_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FALLING_THREE_METHODS_FREE = h("wickra_falling_three_methods_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FLAG_PENNANT_NEW = h("wickra_flag_pennant_new", FunctionDescriptor.of(ADDRESS)); @@ -5034,6 +5776,7 @@ public final class NativeMethods { WICKRA_FLAG_PENNANT_BATCH = h("wickra_flag_pennant_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_FLAG_PENNANT_WARMUP_PERIOD = h("wickra_flag_pennant_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FLAG_PENNANT_IS_READY = h("wickra_flag_pennant_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FLAG_PENNANT_NAME = h("wickra_flag_pennant_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FLAG_PENNANT_RESET = h("wickra_flag_pennant_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FLAG_PENNANT_FREE = h("wickra_flag_pennant_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FORCE_INDEX_NEW = h("wickra_force_index_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5041,6 +5784,7 @@ public final class NativeMethods { WICKRA_FORCE_INDEX_BATCH = h("wickra_force_index_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_FORCE_INDEX_WARMUP_PERIOD = h("wickra_force_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FORCE_INDEX_IS_READY = h("wickra_force_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FORCE_INDEX_NAME = h("wickra_force_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FORCE_INDEX_RESET = h("wickra_force_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FORCE_INDEX_FREE = h("wickra_force_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FRY_PAN_BOTTOM_NEW = h("wickra_fry_pan_bottom_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5048,6 +5792,7 @@ public final class NativeMethods { WICKRA_FRY_PAN_BOTTOM_BATCH = h("wickra_fry_pan_bottom_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_FRY_PAN_BOTTOM_WARMUP_PERIOD = h("wickra_fry_pan_bottom_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FRY_PAN_BOTTOM_IS_READY = h("wickra_fry_pan_bottom_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FRY_PAN_BOTTOM_NAME = h("wickra_fry_pan_bottom_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FRY_PAN_BOTTOM_RESET = h("wickra_fry_pan_bottom_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FRY_PAN_BOTTOM_FREE = h("wickra_fry_pan_bottom_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GAP_SIDE_BY_SIDE_WHITE_NEW = h("wickra_gap_side_by_side_white_new", FunctionDescriptor.of(ADDRESS)); @@ -5055,6 +5800,7 @@ public final class NativeMethods { WICKRA_GAP_SIDE_BY_SIDE_WHITE_BATCH = h("wickra_gap_side_by_side_white_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_GAP_SIDE_BY_SIDE_WHITE_WARMUP_PERIOD = h("wickra_gap_side_by_side_white_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_GAP_SIDE_BY_SIDE_WHITE_IS_READY = h("wickra_gap_side_by_side_white_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_GAP_SIDE_BY_SIDE_WHITE_NAME = h("wickra_gap_side_by_side_white_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_GAP_SIDE_BY_SIDE_WHITE_RESET = h("wickra_gap_side_by_side_white_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GAP_SIDE_BY_SIDE_WHITE_FREE = h("wickra_gap_side_by_side_white_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GARMAN_KLASS_VOLATILITY_NEW = h("wickra_garman_klass_volatility_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -5062,16 +5808,15 @@ public final class NativeMethods { WICKRA_GARMAN_KLASS_VOLATILITY_BATCH = h("wickra_garman_klass_volatility_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_GARMAN_KLASS_VOLATILITY_WARMUP_PERIOD = h("wickra_garman_klass_volatility_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_GARMAN_KLASS_VOLATILITY_IS_READY = h("wickra_garman_klass_volatility_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_GARMAN_KLASS_VOLATILITY_NAME = h("wickra_garman_klass_volatility_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_GARMAN_KLASS_VOLATILITY_RESET = h("wickra_garman_klass_volatility_reset", FunctionDescriptor.ofVoid(ADDRESS)); - } - - private static void init13() { WICKRA_GARMAN_KLASS_VOLATILITY_FREE = h("wickra_garman_klass_volatility_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GARTLEY_NEW = h("wickra_gartley_new", FunctionDescriptor.of(ADDRESS)); WICKRA_GARTLEY_UPDATE = h("wickra_gartley_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_GARTLEY_BATCH = h("wickra_gartley_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_GARTLEY_WARMUP_PERIOD = h("wickra_gartley_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_GARTLEY_IS_READY = h("wickra_gartley_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_GARTLEY_NAME = h("wickra_gartley_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_GARTLEY_RESET = h("wickra_gartley_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GARTLEY_FREE = h("wickra_gartley_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GRAVESTONE_DOJI_NEW = h("wickra_gravestone_doji_new", FunctionDescriptor.of(ADDRESS)); @@ -5079,13 +5824,18 @@ public final class NativeMethods { WICKRA_GRAVESTONE_DOJI_BATCH = h("wickra_gravestone_doji_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_GRAVESTONE_DOJI_WARMUP_PERIOD = h("wickra_gravestone_doji_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_GRAVESTONE_DOJI_IS_READY = h("wickra_gravestone_doji_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_GRAVESTONE_DOJI_NAME = h("wickra_gravestone_doji_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_GRAVESTONE_DOJI_RESET = h("wickra_gravestone_doji_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GRAVESTONE_DOJI_FREE = h("wickra_gravestone_doji_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init15() { WICKRA_HAMMER_NEW = h("wickra_hammer_new", FunctionDescriptor.of(ADDRESS)); WICKRA_HAMMER_UPDATE = h("wickra_hammer_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_HAMMER_BATCH = h("wickra_hammer_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HAMMER_WARMUP_PERIOD = h("wickra_hammer_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HAMMER_IS_READY = h("wickra_hammer_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HAMMER_NAME = h("wickra_hammer_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HAMMER_RESET = h("wickra_hammer_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HAMMER_FREE = h("wickra_hammer_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HANGING_MAN_NEW = h("wickra_hanging_man_new", FunctionDescriptor.of(ADDRESS)); @@ -5093,6 +5843,7 @@ public final class NativeMethods { WICKRA_HANGING_MAN_BATCH = h("wickra_hanging_man_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HANGING_MAN_WARMUP_PERIOD = h("wickra_hanging_man_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HANGING_MAN_IS_READY = h("wickra_hanging_man_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HANGING_MAN_NAME = h("wickra_hanging_man_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HANGING_MAN_RESET = h("wickra_hanging_man_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HANGING_MAN_FREE = h("wickra_hanging_man_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HARAMI_NEW = h("wickra_harami_new", FunctionDescriptor.of(ADDRESS)); @@ -5100,6 +5851,7 @@ public final class NativeMethods { WICKRA_HARAMI_BATCH = h("wickra_harami_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HARAMI_WARMUP_PERIOD = h("wickra_harami_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HARAMI_IS_READY = h("wickra_harami_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HARAMI_NAME = h("wickra_harami_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HARAMI_RESET = h("wickra_harami_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HARAMI_FREE = h("wickra_harami_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HARAMI_CROSS_NEW = h("wickra_harami_cross_new", FunctionDescriptor.of(ADDRESS)); @@ -5107,6 +5859,7 @@ public final class NativeMethods { WICKRA_HARAMI_CROSS_BATCH = h("wickra_harami_cross_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HARAMI_CROSS_WARMUP_PERIOD = h("wickra_harami_cross_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HARAMI_CROSS_IS_READY = h("wickra_harami_cross_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HARAMI_CROSS_NAME = h("wickra_harami_cross_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HARAMI_CROSS_RESET = h("wickra_harami_cross_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HARAMI_CROSS_FREE = h("wickra_harami_cross_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HEAD_AND_SHOULDERS_NEW = h("wickra_head_and_shoulders_new", FunctionDescriptor.of(ADDRESS)); @@ -5114,6 +5867,7 @@ public final class NativeMethods { WICKRA_HEAD_AND_SHOULDERS_BATCH = h("wickra_head_and_shoulders_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HEAD_AND_SHOULDERS_WARMUP_PERIOD = h("wickra_head_and_shoulders_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HEAD_AND_SHOULDERS_IS_READY = h("wickra_head_and_shoulders_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HEAD_AND_SHOULDERS_NAME = h("wickra_head_and_shoulders_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HEAD_AND_SHOULDERS_RESET = h("wickra_head_and_shoulders_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HEAD_AND_SHOULDERS_FREE = h("wickra_head_and_shoulders_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HEIKIN_ASHI_OSCILLATOR_NEW = h("wickra_heikin_ashi_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5121,6 +5875,7 @@ public final class NativeMethods { WICKRA_HEIKIN_ASHI_OSCILLATOR_BATCH = h("wickra_heikin_ashi_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HEIKIN_ASHI_OSCILLATOR_WARMUP_PERIOD = h("wickra_heikin_ashi_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HEIKIN_ASHI_OSCILLATOR_IS_READY = h("wickra_heikin_ashi_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HEIKIN_ASHI_OSCILLATOR_NAME = h("wickra_heikin_ashi_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HEIKIN_ASHI_OSCILLATOR_RESET = h("wickra_heikin_ashi_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HEIKIN_ASHI_OSCILLATOR_FREE = h("wickra_heikin_ashi_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIGH_LOW_RANGE_NEW = h("wickra_high_low_range_new", FunctionDescriptor.of(ADDRESS)); @@ -5128,6 +5883,7 @@ public final class NativeMethods { WICKRA_HIGH_LOW_RANGE_BATCH = h("wickra_high_low_range_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HIGH_LOW_RANGE_WARMUP_PERIOD = h("wickra_high_low_range_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HIGH_LOW_RANGE_IS_READY = h("wickra_high_low_range_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HIGH_LOW_RANGE_NAME = h("wickra_high_low_range_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HIGH_LOW_RANGE_RESET = h("wickra_high_low_range_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIGH_LOW_RANGE_FREE = h("wickra_high_low_range_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIGH_WAVE_NEW = h("wickra_high_wave_new", FunctionDescriptor.of(ADDRESS)); @@ -5135,6 +5891,7 @@ public final class NativeMethods { WICKRA_HIGH_WAVE_BATCH = h("wickra_high_wave_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HIGH_WAVE_WARMUP_PERIOD = h("wickra_high_wave_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HIGH_WAVE_IS_READY = h("wickra_high_wave_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HIGH_WAVE_NAME = h("wickra_high_wave_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HIGH_WAVE_RESET = h("wickra_high_wave_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIGH_WAVE_FREE = h("wickra_high_wave_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIKKAKE_NEW = h("wickra_hikkake_new", FunctionDescriptor.of(ADDRESS)); @@ -5142,6 +5899,7 @@ public final class NativeMethods { WICKRA_HIKKAKE_BATCH = h("wickra_hikkake_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HIKKAKE_WARMUP_PERIOD = h("wickra_hikkake_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HIKKAKE_IS_READY = h("wickra_hikkake_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HIKKAKE_NAME = h("wickra_hikkake_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HIKKAKE_RESET = h("wickra_hikkake_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIKKAKE_FREE = h("wickra_hikkake_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIKKAKE_MODIFIED_NEW = h("wickra_hikkake_modified_new", FunctionDescriptor.of(ADDRESS)); @@ -5149,6 +5907,7 @@ public final class NativeMethods { WICKRA_HIKKAKE_MODIFIED_BATCH = h("wickra_hikkake_modified_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HIKKAKE_MODIFIED_WARMUP_PERIOD = h("wickra_hikkake_modified_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HIKKAKE_MODIFIED_IS_READY = h("wickra_hikkake_modified_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HIKKAKE_MODIFIED_NAME = h("wickra_hikkake_modified_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HIKKAKE_MODIFIED_RESET = h("wickra_hikkake_modified_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIKKAKE_MODIFIED_FREE = h("wickra_hikkake_modified_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HI_LO_ACTIVATOR_NEW = h("wickra_hi_lo_activator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5156,6 +5915,7 @@ public final class NativeMethods { WICKRA_HI_LO_ACTIVATOR_BATCH = h("wickra_hi_lo_activator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HI_LO_ACTIVATOR_WARMUP_PERIOD = h("wickra_hi_lo_activator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HI_LO_ACTIVATOR_IS_READY = h("wickra_hi_lo_activator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HI_LO_ACTIVATOR_NAME = h("wickra_hi_lo_activator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HI_LO_ACTIVATOR_RESET = h("wickra_hi_lo_activator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HI_LO_ACTIVATOR_FREE = h("wickra_hi_lo_activator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HOMING_PIGEON_NEW = h("wickra_homing_pigeon_new", FunctionDescriptor.of(ADDRESS)); @@ -5163,6 +5923,7 @@ public final class NativeMethods { WICKRA_HOMING_PIGEON_BATCH = h("wickra_homing_pigeon_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_HOMING_PIGEON_WARMUP_PERIOD = h("wickra_homing_pigeon_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HOMING_PIGEON_IS_READY = h("wickra_homing_pigeon_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HOMING_PIGEON_NAME = h("wickra_homing_pigeon_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HOMING_PIGEON_RESET = h("wickra_homing_pigeon_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HOMING_PIGEON_FREE = h("wickra_homing_pigeon_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_IDENTICAL_THREE_CROWS_NEW = h("wickra_identical_three_crows_new", FunctionDescriptor.of(ADDRESS)); @@ -5170,6 +5931,7 @@ public final class NativeMethods { WICKRA_IDENTICAL_THREE_CROWS_BATCH = h("wickra_identical_three_crows_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_IDENTICAL_THREE_CROWS_WARMUP_PERIOD = h("wickra_identical_three_crows_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_IDENTICAL_THREE_CROWS_IS_READY = h("wickra_identical_three_crows_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_IDENTICAL_THREE_CROWS_NAME = h("wickra_identical_three_crows_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_IDENTICAL_THREE_CROWS_RESET = h("wickra_identical_three_crows_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_IDENTICAL_THREE_CROWS_FREE = h("wickra_identical_three_crows_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_IN_NECK_NEW = h("wickra_in_neck_new", FunctionDescriptor.of(ADDRESS)); @@ -5177,6 +5939,7 @@ public final class NativeMethods { WICKRA_IN_NECK_BATCH = h("wickra_in_neck_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_IN_NECK_WARMUP_PERIOD = h("wickra_in_neck_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_IN_NECK_IS_READY = h("wickra_in_neck_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_IN_NECK_NAME = h("wickra_in_neck_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_IN_NECK_RESET = h("wickra_in_neck_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_IN_NECK_FREE = h("wickra_in_neck_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INERTIA_NEW = h("wickra_inertia_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -5184,16 +5947,18 @@ public final class NativeMethods { WICKRA_INERTIA_BATCH = h("wickra_inertia_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_INERTIA_WARMUP_PERIOD = h("wickra_inertia_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_INERTIA_IS_READY = h("wickra_inertia_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_INERTIA_NAME = h("wickra_inertia_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_INERTIA_RESET = h("wickra_inertia_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INERTIA_FREE = h("wickra_inertia_free", FunctionDescriptor.ofVoid(ADDRESS)); } - private static void init14() { + private static void init16() { WICKRA_INTRADAY_INTENSITY_NEW = h("wickra_intraday_intensity_new", FunctionDescriptor.of(ADDRESS)); WICKRA_INTRADAY_INTENSITY_UPDATE = h("wickra_intraday_intensity_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_INTRADAY_INTENSITY_BATCH = h("wickra_intraday_intensity_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_INTRADAY_INTENSITY_WARMUP_PERIOD = h("wickra_intraday_intensity_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_INTRADAY_INTENSITY_IS_READY = h("wickra_intraday_intensity_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_INTRADAY_INTENSITY_NAME = h("wickra_intraday_intensity_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_INTRADAY_INTENSITY_RESET = h("wickra_intraday_intensity_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INTRADAY_INTENSITY_FREE = h("wickra_intraday_intensity_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INTRADAY_MOMENTUM_INDEX_NEW = h("wickra_intraday_momentum_index_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5201,6 +5966,7 @@ public final class NativeMethods { WICKRA_INTRADAY_MOMENTUM_INDEX_BATCH = h("wickra_intraday_momentum_index_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_INTRADAY_MOMENTUM_INDEX_WARMUP_PERIOD = h("wickra_intraday_momentum_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_INTRADAY_MOMENTUM_INDEX_IS_READY = h("wickra_intraday_momentum_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_INTRADAY_MOMENTUM_INDEX_NAME = h("wickra_intraday_momentum_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_INTRADAY_MOMENTUM_INDEX_RESET = h("wickra_intraday_momentum_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INTRADAY_MOMENTUM_INDEX_FREE = h("wickra_intraday_momentum_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INVERTED_HAMMER_NEW = h("wickra_inverted_hammer_new", FunctionDescriptor.of(ADDRESS)); @@ -5208,6 +5974,7 @@ public final class NativeMethods { WICKRA_INVERTED_HAMMER_BATCH = h("wickra_inverted_hammer_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_INVERTED_HAMMER_WARMUP_PERIOD = h("wickra_inverted_hammer_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_INVERTED_HAMMER_IS_READY = h("wickra_inverted_hammer_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_INVERTED_HAMMER_NAME = h("wickra_inverted_hammer_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_INVERTED_HAMMER_RESET = h("wickra_inverted_hammer_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INVERTED_HAMMER_FREE = h("wickra_inverted_hammer_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KICKING_NEW = h("wickra_kicking_new", FunctionDescriptor.of(ADDRESS)); @@ -5215,6 +5982,7 @@ public final class NativeMethods { WICKRA_KICKING_BATCH = h("wickra_kicking_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_KICKING_WARMUP_PERIOD = h("wickra_kicking_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KICKING_IS_READY = h("wickra_kicking_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KICKING_NAME = h("wickra_kicking_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KICKING_RESET = h("wickra_kicking_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KICKING_FREE = h("wickra_kicking_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KICKING_BY_LENGTH_NEW = h("wickra_kicking_by_length_new", FunctionDescriptor.of(ADDRESS)); @@ -5222,6 +5990,7 @@ public final class NativeMethods { WICKRA_KICKING_BY_LENGTH_BATCH = h("wickra_kicking_by_length_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_KICKING_BY_LENGTH_WARMUP_PERIOD = h("wickra_kicking_by_length_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KICKING_BY_LENGTH_IS_READY = h("wickra_kicking_by_length_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KICKING_BY_LENGTH_NAME = h("wickra_kicking_by_length_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KICKING_BY_LENGTH_RESET = h("wickra_kicking_by_length_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KICKING_BY_LENGTH_FREE = h("wickra_kicking_by_length_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KVO_NEW = h("wickra_kvo_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -5229,6 +5998,7 @@ public final class NativeMethods { WICKRA_KVO_BATCH = h("wickra_kvo_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_KVO_WARMUP_PERIOD = h("wickra_kvo_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KVO_IS_READY = h("wickra_kvo_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KVO_NAME = h("wickra_kvo_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KVO_RESET = h("wickra_kvo_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KVO_FREE = h("wickra_kvo_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LADDER_BOTTOM_NEW = h("wickra_ladder_bottom_new", FunctionDescriptor.of(ADDRESS)); @@ -5236,6 +6006,7 @@ public final class NativeMethods { WICKRA_LADDER_BOTTOM_BATCH = h("wickra_ladder_bottom_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_LADDER_BOTTOM_WARMUP_PERIOD = h("wickra_ladder_bottom_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_LADDER_BOTTOM_IS_READY = h("wickra_ladder_bottom_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LADDER_BOTTOM_NAME = h("wickra_ladder_bottom_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LADDER_BOTTOM_RESET = h("wickra_ladder_bottom_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LADDER_BOTTOM_FREE = h("wickra_ladder_bottom_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LONG_LEGGED_DOJI_NEW = h("wickra_long_legged_doji_new", FunctionDescriptor.of(ADDRESS)); @@ -5243,6 +6014,7 @@ public final class NativeMethods { WICKRA_LONG_LEGGED_DOJI_BATCH = h("wickra_long_legged_doji_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_LONG_LEGGED_DOJI_WARMUP_PERIOD = h("wickra_long_legged_doji_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_LONG_LEGGED_DOJI_IS_READY = h("wickra_long_legged_doji_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LONG_LEGGED_DOJI_NAME = h("wickra_long_legged_doji_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LONG_LEGGED_DOJI_RESET = h("wickra_long_legged_doji_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LONG_LEGGED_DOJI_FREE = h("wickra_long_legged_doji_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LONG_LINE_NEW = h("wickra_long_line_new", FunctionDescriptor.of(ADDRESS)); @@ -5250,6 +6022,7 @@ public final class NativeMethods { WICKRA_LONG_LINE_BATCH = h("wickra_long_line_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_LONG_LINE_WARMUP_PERIOD = h("wickra_long_line_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_LONG_LINE_IS_READY = h("wickra_long_line_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LONG_LINE_NAME = h("wickra_long_line_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LONG_LINE_RESET = h("wickra_long_line_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LONG_LINE_FREE = h("wickra_long_line_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MARKET_FACILITATION_INDEX_NEW = h("wickra_market_facilitation_index_new", FunctionDescriptor.of(ADDRESS)); @@ -5257,6 +6030,7 @@ public final class NativeMethods { WICKRA_MARKET_FACILITATION_INDEX_BATCH = h("wickra_market_facilitation_index_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MARKET_FACILITATION_INDEX_WARMUP_PERIOD = h("wickra_market_facilitation_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MARKET_FACILITATION_INDEX_IS_READY = h("wickra_market_facilitation_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MARKET_FACILITATION_INDEX_NAME = h("wickra_market_facilitation_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MARKET_FACILITATION_INDEX_RESET = h("wickra_market_facilitation_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MARKET_FACILITATION_INDEX_FREE = h("wickra_market_facilitation_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MARUBOZU_NEW = h("wickra_marubozu_new", FunctionDescriptor.of(ADDRESS)); @@ -5264,6 +6038,7 @@ public final class NativeMethods { WICKRA_MARUBOZU_BATCH = h("wickra_marubozu_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MARUBOZU_WARMUP_PERIOD = h("wickra_marubozu_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MARUBOZU_IS_READY = h("wickra_marubozu_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MARUBOZU_NAME = h("wickra_marubozu_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MARUBOZU_RESET = h("wickra_marubozu_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MARUBOZU_FREE = h("wickra_marubozu_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MASS_INDEX_NEW = h("wickra_mass_index_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -5271,6 +6046,7 @@ public final class NativeMethods { WICKRA_MASS_INDEX_BATCH = h("wickra_mass_index_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MASS_INDEX_WARMUP_PERIOD = h("wickra_mass_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MASS_INDEX_IS_READY = h("wickra_mass_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MASS_INDEX_NAME = h("wickra_mass_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MASS_INDEX_RESET = h("wickra_mass_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MASS_INDEX_FREE = h("wickra_mass_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MAT_HOLD_NEW = h("wickra_mat_hold_new", FunctionDescriptor.of(ADDRESS)); @@ -5278,6 +6054,7 @@ public final class NativeMethods { WICKRA_MAT_HOLD_BATCH = h("wickra_mat_hold_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MAT_HOLD_WARMUP_PERIOD = h("wickra_mat_hold_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MAT_HOLD_IS_READY = h("wickra_mat_hold_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MAT_HOLD_NAME = h("wickra_mat_hold_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MAT_HOLD_RESET = h("wickra_mat_hold_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MAT_HOLD_FREE = h("wickra_mat_hold_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MATCHING_LOW_NEW = h("wickra_matching_low_new", FunctionDescriptor.of(ADDRESS)); @@ -5285,6 +6062,7 @@ public final class NativeMethods { WICKRA_MATCHING_LOW_BATCH = h("wickra_matching_low_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MATCHING_LOW_WARMUP_PERIOD = h("wickra_matching_low_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MATCHING_LOW_IS_READY = h("wickra_matching_low_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MATCHING_LOW_NAME = h("wickra_matching_low_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MATCHING_LOW_RESET = h("wickra_matching_low_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MATCHING_LOW_FREE = h("wickra_matching_low_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MEDIAN_PRICE_NEW = h("wickra_median_price_new", FunctionDescriptor.of(ADDRESS)); @@ -5292,13 +6070,18 @@ public final class NativeMethods { WICKRA_MEDIAN_PRICE_BATCH = h("wickra_median_price_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MEDIAN_PRICE_WARMUP_PERIOD = h("wickra_median_price_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MEDIAN_PRICE_IS_READY = h("wickra_median_price_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MEDIAN_PRICE_NAME = h("wickra_median_price_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MEDIAN_PRICE_RESET = h("wickra_median_price_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MEDIAN_PRICE_FREE = h("wickra_median_price_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init17() { WICKRA_MFI_NEW = h("wickra_mfi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_MFI_UPDATE = h("wickra_mfi_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_MFI_BATCH = h("wickra_mfi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MFI_WARMUP_PERIOD = h("wickra_mfi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MFI_IS_READY = h("wickra_mfi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MFI_NAME = h("wickra_mfi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MFI_RESET = h("wickra_mfi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MFI_FREE = h("wickra_mfi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MID_PRICE_NEW = h("wickra_mid_price_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5306,16 +6089,15 @@ public final class NativeMethods { WICKRA_MID_PRICE_BATCH = h("wickra_mid_price_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MID_PRICE_WARMUP_PERIOD = h("wickra_mid_price_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MID_PRICE_IS_READY = h("wickra_mid_price_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MID_PRICE_NAME = h("wickra_mid_price_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MID_PRICE_RESET = h("wickra_mid_price_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MID_PRICE_FREE = h("wickra_mid_price_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MINUS_DI_NEW = h("wickra_minus_di_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); - } - - private static void init15() { WICKRA_MINUS_DI_UPDATE = h("wickra_minus_di_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_MINUS_DI_BATCH = h("wickra_minus_di_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MINUS_DI_WARMUP_PERIOD = h("wickra_minus_di_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MINUS_DI_IS_READY = h("wickra_minus_di_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MINUS_DI_NAME = h("wickra_minus_di_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MINUS_DI_RESET = h("wickra_minus_di_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MINUS_DI_FREE = h("wickra_minus_di_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MINUS_DM_NEW = h("wickra_minus_dm_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5323,6 +6105,7 @@ public final class NativeMethods { WICKRA_MINUS_DM_BATCH = h("wickra_minus_dm_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MINUS_DM_WARMUP_PERIOD = h("wickra_minus_dm_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MINUS_DM_IS_READY = h("wickra_minus_dm_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MINUS_DM_NAME = h("wickra_minus_dm_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MINUS_DM_RESET = h("wickra_minus_dm_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MINUS_DM_FREE = h("wickra_minus_dm_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MORNING_DOJI_STAR_NEW = h("wickra_morning_doji_star_new", FunctionDescriptor.of(ADDRESS)); @@ -5330,6 +6113,7 @@ public final class NativeMethods { WICKRA_MORNING_DOJI_STAR_BATCH = h("wickra_morning_doji_star_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MORNING_DOJI_STAR_WARMUP_PERIOD = h("wickra_morning_doji_star_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MORNING_DOJI_STAR_IS_READY = h("wickra_morning_doji_star_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MORNING_DOJI_STAR_NAME = h("wickra_morning_doji_star_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MORNING_DOJI_STAR_RESET = h("wickra_morning_doji_star_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MORNING_DOJI_STAR_FREE = h("wickra_morning_doji_star_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MORNING_EVENING_STAR_NEW = h("wickra_morning_evening_star_new", FunctionDescriptor.of(ADDRESS)); @@ -5337,6 +6121,7 @@ public final class NativeMethods { WICKRA_MORNING_EVENING_STAR_BATCH = h("wickra_morning_evening_star_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MORNING_EVENING_STAR_WARMUP_PERIOD = h("wickra_morning_evening_star_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MORNING_EVENING_STAR_IS_READY = h("wickra_morning_evening_star_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MORNING_EVENING_STAR_NAME = h("wickra_morning_evening_star_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MORNING_EVENING_STAR_RESET = h("wickra_morning_evening_star_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MORNING_EVENING_STAR_FREE = h("wickra_morning_evening_star_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_NAKED_POC_NEW = h("wickra_naked_poc_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -5344,6 +6129,7 @@ public final class NativeMethods { WICKRA_NAKED_POC_BATCH = h("wickra_naked_poc_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_NAKED_POC_WARMUP_PERIOD = h("wickra_naked_poc_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_NAKED_POC_IS_READY = h("wickra_naked_poc_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_NAKED_POC_NAME = h("wickra_naked_poc_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_NAKED_POC_RESET = h("wickra_naked_poc_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_NAKED_POC_FREE = h("wickra_naked_poc_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_NATR_NEW = h("wickra_natr_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5351,6 +6137,7 @@ public final class NativeMethods { WICKRA_NATR_BATCH = h("wickra_natr_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_NATR_WARMUP_PERIOD = h("wickra_natr_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_NATR_IS_READY = h("wickra_natr_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_NATR_NAME = h("wickra_natr_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_NATR_RESET = h("wickra_natr_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_NATR_FREE = h("wickra_natr_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_NEW_PRICE_LINES_NEW = h("wickra_new_price_lines_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5358,6 +6145,7 @@ public final class NativeMethods { WICKRA_NEW_PRICE_LINES_BATCH = h("wickra_new_price_lines_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_NEW_PRICE_LINES_WARMUP_PERIOD = h("wickra_new_price_lines_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_NEW_PRICE_LINES_IS_READY = h("wickra_new_price_lines_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_NEW_PRICE_LINES_NAME = h("wickra_new_price_lines_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_NEW_PRICE_LINES_RESET = h("wickra_new_price_lines_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_NEW_PRICE_LINES_FREE = h("wickra_new_price_lines_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_NVI_NEW = h("wickra_nvi_new", FunctionDescriptor.of(ADDRESS)); @@ -5365,6 +6153,7 @@ public final class NativeMethods { WICKRA_NVI_BATCH = h("wickra_nvi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_NVI_WARMUP_PERIOD = h("wickra_nvi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_NVI_IS_READY = h("wickra_nvi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_NVI_NAME = h("wickra_nvi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_NVI_RESET = h("wickra_nvi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_NVI_FREE = h("wickra_nvi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OBV_NEW = h("wickra_obv_new", FunctionDescriptor.of(ADDRESS)); @@ -5372,6 +6161,7 @@ public final class NativeMethods { WICKRA_OBV_BATCH = h("wickra_obv_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_OBV_WARMUP_PERIOD = h("wickra_obv_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_OBV_IS_READY = h("wickra_obv_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_OBV_NAME = h("wickra_obv_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_OBV_RESET = h("wickra_obv_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OBV_FREE = h("wickra_obv_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ON_NECK_NEW = h("wickra_on_neck_new", FunctionDescriptor.of(ADDRESS)); @@ -5379,6 +6169,7 @@ public final class NativeMethods { WICKRA_ON_NECK_BATCH = h("wickra_on_neck_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ON_NECK_WARMUP_PERIOD = h("wickra_on_neck_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ON_NECK_IS_READY = h("wickra_on_neck_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ON_NECK_NAME = h("wickra_on_neck_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ON_NECK_RESET = h("wickra_on_neck_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ON_NECK_FREE = h("wickra_on_neck_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OPENING_MARUBOZU_NEW = h("wickra_opening_marubozu_new", FunctionDescriptor.of(ADDRESS)); @@ -5386,6 +6177,7 @@ public final class NativeMethods { WICKRA_OPENING_MARUBOZU_BATCH = h("wickra_opening_marubozu_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_OPENING_MARUBOZU_WARMUP_PERIOD = h("wickra_opening_marubozu_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_OPENING_MARUBOZU_IS_READY = h("wickra_opening_marubozu_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_OPENING_MARUBOZU_NAME = h("wickra_opening_marubozu_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_OPENING_MARUBOZU_RESET = h("wickra_opening_marubozu_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OPENING_MARUBOZU_FREE = h("wickra_opening_marubozu_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OVERNIGHT_GAP_NEW = h("wickra_overnight_gap_new", FunctionDescriptor.of(ADDRESS, JAVA_INT)); @@ -5393,6 +6185,7 @@ public final class NativeMethods { WICKRA_OVERNIGHT_GAP_BATCH = h("wickra_overnight_gap_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_OVERNIGHT_GAP_WARMUP_PERIOD = h("wickra_overnight_gap_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_OVERNIGHT_GAP_IS_READY = h("wickra_overnight_gap_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_OVERNIGHT_GAP_NAME = h("wickra_overnight_gap_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_OVERNIGHT_GAP_RESET = h("wickra_overnight_gap_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OVERNIGHT_GAP_FREE = h("wickra_overnight_gap_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PARKINSON_VOLATILITY_NEW = h("wickra_parkinson_volatility_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -5400,13 +6193,18 @@ public final class NativeMethods { WICKRA_PARKINSON_VOLATILITY_BATCH = h("wickra_parkinson_volatility_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PARKINSON_VOLATILITY_WARMUP_PERIOD = h("wickra_parkinson_volatility_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PARKINSON_VOLATILITY_IS_READY = h("wickra_parkinson_volatility_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PARKINSON_VOLATILITY_NAME = h("wickra_parkinson_volatility_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PARKINSON_VOLATILITY_RESET = h("wickra_parkinson_volatility_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PARKINSON_VOLATILITY_FREE = h("wickra_parkinson_volatility_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init18() { WICKRA_PGO_NEW = h("wickra_pgo_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_PGO_UPDATE = h("wickra_pgo_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_PGO_BATCH = h("wickra_pgo_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PGO_WARMUP_PERIOD = h("wickra_pgo_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PGO_IS_READY = h("wickra_pgo_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PGO_NAME = h("wickra_pgo_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PGO_RESET = h("wickra_pgo_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PGO_FREE = h("wickra_pgo_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PIERCING_DARK_CLOUD_NEW = h("wickra_piercing_dark_cloud_new", FunctionDescriptor.of(ADDRESS)); @@ -5414,6 +6212,7 @@ public final class NativeMethods { WICKRA_PIERCING_DARK_CLOUD_BATCH = h("wickra_piercing_dark_cloud_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PIERCING_DARK_CLOUD_WARMUP_PERIOD = h("wickra_piercing_dark_cloud_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PIERCING_DARK_CLOUD_IS_READY = h("wickra_piercing_dark_cloud_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PIERCING_DARK_CLOUD_NAME = h("wickra_piercing_dark_cloud_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PIERCING_DARK_CLOUD_RESET = h("wickra_piercing_dark_cloud_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PIERCING_DARK_CLOUD_FREE = h("wickra_piercing_dark_cloud_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PIVOT_REVERSAL_NEW = h("wickra_pivot_reversal_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -5421,6 +6220,7 @@ public final class NativeMethods { WICKRA_PIVOT_REVERSAL_BATCH = h("wickra_pivot_reversal_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PIVOT_REVERSAL_WARMUP_PERIOD = h("wickra_pivot_reversal_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PIVOT_REVERSAL_IS_READY = h("wickra_pivot_reversal_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PIVOT_REVERSAL_NAME = h("wickra_pivot_reversal_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PIVOT_REVERSAL_RESET = h("wickra_pivot_reversal_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PIVOT_REVERSAL_FREE = h("wickra_pivot_reversal_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PLUS_DI_NEW = h("wickra_plus_di_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5428,16 +6228,15 @@ public final class NativeMethods { WICKRA_PLUS_DI_BATCH = h("wickra_plus_di_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PLUS_DI_WARMUP_PERIOD = h("wickra_plus_di_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PLUS_DI_IS_READY = h("wickra_plus_di_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PLUS_DI_NAME = h("wickra_plus_di_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PLUS_DI_RESET = h("wickra_plus_di_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PLUS_DI_FREE = h("wickra_plus_di_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PLUS_DM_NEW = h("wickra_plus_dm_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_PLUS_DM_UPDATE = h("wickra_plus_dm_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); - } - - private static void init16() { WICKRA_PLUS_DM_BATCH = h("wickra_plus_dm_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PLUS_DM_WARMUP_PERIOD = h("wickra_plus_dm_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PLUS_DM_IS_READY = h("wickra_plus_dm_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PLUS_DM_NAME = h("wickra_plus_dm_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PLUS_DM_RESET = h("wickra_plus_dm_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PLUS_DM_FREE = h("wickra_plus_dm_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PROFILE_SHAPE_NEW = h("wickra_profile_shape_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -5445,6 +6244,7 @@ public final class NativeMethods { WICKRA_PROFILE_SHAPE_BATCH = h("wickra_profile_shape_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PROFILE_SHAPE_WARMUP_PERIOD = h("wickra_profile_shape_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PROFILE_SHAPE_IS_READY = h("wickra_profile_shape_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PROFILE_SHAPE_NAME = h("wickra_profile_shape_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PROFILE_SHAPE_RESET = h("wickra_profile_shape_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PROFILE_SHAPE_FREE = h("wickra_profile_shape_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PROJECTION_OSCILLATOR_NEW = h("wickra_projection_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5452,6 +6252,7 @@ public final class NativeMethods { WICKRA_PROJECTION_OSCILLATOR_BATCH = h("wickra_projection_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PROJECTION_OSCILLATOR_WARMUP_PERIOD = h("wickra_projection_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PROJECTION_OSCILLATOR_IS_READY = h("wickra_projection_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PROJECTION_OSCILLATOR_NAME = h("wickra_projection_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PROJECTION_OSCILLATOR_RESET = h("wickra_projection_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PROJECTION_OSCILLATOR_FREE = h("wickra_projection_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PSAR_NEW = h("wickra_psar_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); @@ -5459,6 +6260,7 @@ public final class NativeMethods { WICKRA_PSAR_BATCH = h("wickra_psar_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PSAR_WARMUP_PERIOD = h("wickra_psar_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PSAR_IS_READY = h("wickra_psar_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PSAR_NAME = h("wickra_psar_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PSAR_RESET = h("wickra_psar_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PSAR_FREE = h("wickra_psar_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PVI_NEW = h("wickra_pvi_new", FunctionDescriptor.of(ADDRESS)); @@ -5466,6 +6268,7 @@ public final class NativeMethods { WICKRA_PVI_BATCH = h("wickra_pvi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_PVI_WARMUP_PERIOD = h("wickra_pvi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PVI_IS_READY = h("wickra_pvi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PVI_NAME = h("wickra_pvi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PVI_RESET = h("wickra_pvi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PVI_FREE = h("wickra_pvi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_QSTICK_NEW = h("wickra_qstick_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5473,6 +6276,7 @@ public final class NativeMethods { WICKRA_QSTICK_BATCH = h("wickra_qstick_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_QSTICK_WARMUP_PERIOD = h("wickra_qstick_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_QSTICK_IS_READY = h("wickra_qstick_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_QSTICK_NAME = h("wickra_qstick_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_QSTICK_RESET = h("wickra_qstick_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_QSTICK_FREE = h("wickra_qstick_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RECTANGLE_RANGE_NEW = h("wickra_rectangle_range_new", FunctionDescriptor.of(ADDRESS)); @@ -5480,6 +6284,7 @@ public final class NativeMethods { WICKRA_RECTANGLE_RANGE_BATCH = h("wickra_rectangle_range_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_RECTANGLE_RANGE_WARMUP_PERIOD = h("wickra_rectangle_range_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_RECTANGLE_RANGE_IS_READY = h("wickra_rectangle_range_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_RECTANGLE_RANGE_NAME = h("wickra_rectangle_range_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RECTANGLE_RANGE_RESET = h("wickra_rectangle_range_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RECTANGLE_RANGE_FREE = h("wickra_rectangle_range_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RICKSHAW_MAN_NEW = h("wickra_rickshaw_man_new", FunctionDescriptor.of(ADDRESS)); @@ -5487,6 +6292,7 @@ public final class NativeMethods { WICKRA_RICKSHAW_MAN_BATCH = h("wickra_rickshaw_man_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_RICKSHAW_MAN_WARMUP_PERIOD = h("wickra_rickshaw_man_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_RICKSHAW_MAN_IS_READY = h("wickra_rickshaw_man_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_RICKSHAW_MAN_NAME = h("wickra_rickshaw_man_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RICKSHAW_MAN_RESET = h("wickra_rickshaw_man_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RICKSHAW_MAN_FREE = h("wickra_rickshaw_man_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RISING_THREE_METHODS_NEW = h("wickra_rising_three_methods_new", FunctionDescriptor.of(ADDRESS)); @@ -5494,6 +6300,7 @@ public final class NativeMethods { WICKRA_RISING_THREE_METHODS_BATCH = h("wickra_rising_three_methods_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_RISING_THREE_METHODS_WARMUP_PERIOD = h("wickra_rising_three_methods_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_RISING_THREE_METHODS_IS_READY = h("wickra_rising_three_methods_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_RISING_THREE_METHODS_NAME = h("wickra_rising_three_methods_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RISING_THREE_METHODS_RESET = h("wickra_rising_three_methods_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RISING_THREE_METHODS_FREE = h("wickra_rising_three_methods_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROGERS_SATCHELL_VOLATILITY_NEW = h("wickra_rogers_satchell_volatility_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -5501,6 +6308,7 @@ public final class NativeMethods { WICKRA_ROGERS_SATCHELL_VOLATILITY_BATCH = h("wickra_rogers_satchell_volatility_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROGERS_SATCHELL_VOLATILITY_WARMUP_PERIOD = h("wickra_rogers_satchell_volatility_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROGERS_SATCHELL_VOLATILITY_IS_READY = h("wickra_rogers_satchell_volatility_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROGERS_SATCHELL_VOLATILITY_NAME = h("wickra_rogers_satchell_volatility_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROGERS_SATCHELL_VOLATILITY_RESET = h("wickra_rogers_satchell_volatility_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROGERS_SATCHELL_VOLATILITY_FREE = h("wickra_rogers_satchell_volatility_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RVI_NEW = h("wickra_rvi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5508,13 +6316,18 @@ public final class NativeMethods { WICKRA_RVI_BATCH = h("wickra_rvi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_RVI_WARMUP_PERIOD = h("wickra_rvi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_RVI_IS_READY = h("wickra_rvi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_RVI_NAME = h("wickra_rvi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RVI_RESET = h("wickra_rvi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RVI_FREE = h("wickra_rvi_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init19() { WICKRA_SAR_EXT_NEW = h("wickra_sar_ext_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); WICKRA_SAR_EXT_UPDATE = h("wickra_sar_ext_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_SAR_EXT_BATCH = h("wickra_sar_ext_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SAR_EXT_WARMUP_PERIOD = h("wickra_sar_ext_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SAR_EXT_IS_READY = h("wickra_sar_ext_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SAR_EXT_NAME = h("wickra_sar_ext_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SAR_EXT_RESET = h("wickra_sar_ext_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SAR_EXT_FREE = h("wickra_sar_ext_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SEASONAL_Z_SCORE_NEW = h("wickra_seasonal_z_score_new", FunctionDescriptor.of(ADDRESS, JAVA_INT)); @@ -5522,6 +6335,7 @@ public final class NativeMethods { WICKRA_SEASONAL_Z_SCORE_BATCH = h("wickra_seasonal_z_score_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SEASONAL_Z_SCORE_WARMUP_PERIOD = h("wickra_seasonal_z_score_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SEASONAL_Z_SCORE_IS_READY = h("wickra_seasonal_z_score_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SEASONAL_Z_SCORE_NAME = h("wickra_seasonal_z_score_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SEASONAL_Z_SCORE_RESET = h("wickra_seasonal_z_score_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SEASONAL_Z_SCORE_FREE = h("wickra_seasonal_z_score_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SEPARATING_LINES_NEW = h("wickra_separating_lines_new", FunctionDescriptor.of(ADDRESS)); @@ -5529,6 +6343,7 @@ public final class NativeMethods { WICKRA_SEPARATING_LINES_BATCH = h("wickra_separating_lines_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SEPARATING_LINES_WARMUP_PERIOD = h("wickra_separating_lines_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SEPARATING_LINES_IS_READY = h("wickra_separating_lines_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SEPARATING_LINES_NAME = h("wickra_separating_lines_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SEPARATING_LINES_RESET = h("wickra_separating_lines_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SEPARATING_LINES_FREE = h("wickra_separating_lines_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SESSION_VWAP_NEW = h("wickra_session_vwap_new", FunctionDescriptor.of(ADDRESS, JAVA_INT)); @@ -5536,6 +6351,7 @@ public final class NativeMethods { WICKRA_SESSION_VWAP_BATCH = h("wickra_session_vwap_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SESSION_VWAP_WARMUP_PERIOD = h("wickra_session_vwap_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SESSION_VWAP_IS_READY = h("wickra_session_vwap_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SESSION_VWAP_NAME = h("wickra_session_vwap_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SESSION_VWAP_RESET = h("wickra_session_vwap_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SESSION_VWAP_FREE = h("wickra_session_vwap_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SHARK_NEW = h("wickra_shark_new", FunctionDescriptor.of(ADDRESS)); @@ -5543,6 +6359,7 @@ public final class NativeMethods { WICKRA_SHARK_BATCH = h("wickra_shark_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SHARK_WARMUP_PERIOD = h("wickra_shark_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SHARK_IS_READY = h("wickra_shark_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SHARK_NAME = h("wickra_shark_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SHARK_RESET = h("wickra_shark_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SHARK_FREE = h("wickra_shark_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SHOOTING_STAR_NEW = h("wickra_shooting_star_new", FunctionDescriptor.of(ADDRESS)); @@ -5550,16 +6367,15 @@ public final class NativeMethods { WICKRA_SHOOTING_STAR_BATCH = h("wickra_shooting_star_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SHOOTING_STAR_WARMUP_PERIOD = h("wickra_shooting_star_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SHOOTING_STAR_IS_READY = h("wickra_shooting_star_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SHOOTING_STAR_NAME = h("wickra_shooting_star_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SHOOTING_STAR_RESET = h("wickra_shooting_star_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SHOOTING_STAR_FREE = h("wickra_shooting_star_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SHORT_LINE_NEW = h("wickra_short_line_new", FunctionDescriptor.of(ADDRESS)); WICKRA_SHORT_LINE_UPDATE = h("wickra_short_line_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_SHORT_LINE_BATCH = h("wickra_short_line_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); - } - - private static void init17() { WICKRA_SHORT_LINE_WARMUP_PERIOD = h("wickra_short_line_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SHORT_LINE_IS_READY = h("wickra_short_line_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SHORT_LINE_NAME = h("wickra_short_line_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SHORT_LINE_RESET = h("wickra_short_line_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SHORT_LINE_FREE = h("wickra_short_line_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SINGLE_PRINTS_NEW = h("wickra_single_prints_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -5567,6 +6383,7 @@ public final class NativeMethods { WICKRA_SINGLE_PRINTS_BATCH = h("wickra_single_prints_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SINGLE_PRINTS_WARMUP_PERIOD = h("wickra_single_prints_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SINGLE_PRINTS_IS_READY = h("wickra_single_prints_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SINGLE_PRINTS_NAME = h("wickra_single_prints_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SINGLE_PRINTS_RESET = h("wickra_single_prints_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SINGLE_PRINTS_FREE = h("wickra_single_prints_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SMI_NEW = h("wickra_smi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -5574,6 +6391,7 @@ public final class NativeMethods { WICKRA_SMI_BATCH = h("wickra_smi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SMI_WARMUP_PERIOD = h("wickra_smi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SMI_IS_READY = h("wickra_smi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SMI_NAME = h("wickra_smi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SMI_RESET = h("wickra_smi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SMI_FREE = h("wickra_smi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SPINNING_TOP_NEW = h("wickra_spinning_top_new", FunctionDescriptor.of(ADDRESS)); @@ -5581,6 +6399,7 @@ public final class NativeMethods { WICKRA_SPINNING_TOP_BATCH = h("wickra_spinning_top_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_SPINNING_TOP_WARMUP_PERIOD = h("wickra_spinning_top_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SPINNING_TOP_IS_READY = h("wickra_spinning_top_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SPINNING_TOP_NAME = h("wickra_spinning_top_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SPINNING_TOP_RESET = h("wickra_spinning_top_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SPINNING_TOP_FREE = h("wickra_spinning_top_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STALLED_PATTERN_NEW = h("wickra_stalled_pattern_new", FunctionDescriptor.of(ADDRESS)); @@ -5588,6 +6407,7 @@ public final class NativeMethods { WICKRA_STALLED_PATTERN_BATCH = h("wickra_stalled_pattern_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_STALLED_PATTERN_WARMUP_PERIOD = h("wickra_stalled_pattern_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_STALLED_PATTERN_IS_READY = h("wickra_stalled_pattern_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_STALLED_PATTERN_NAME = h("wickra_stalled_pattern_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_STALLED_PATTERN_RESET = h("wickra_stalled_pattern_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STALLED_PATTERN_FREE = h("wickra_stalled_pattern_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STICK_SANDWICH_NEW = h("wickra_stick_sandwich_new", FunctionDescriptor.of(ADDRESS)); @@ -5595,6 +6415,7 @@ public final class NativeMethods { WICKRA_STICK_SANDWICH_BATCH = h("wickra_stick_sandwich_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_STICK_SANDWICH_WARMUP_PERIOD = h("wickra_stick_sandwich_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_STICK_SANDWICH_IS_READY = h("wickra_stick_sandwich_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_STICK_SANDWICH_NAME = h("wickra_stick_sandwich_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_STICK_SANDWICH_RESET = h("wickra_stick_sandwich_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STICK_SANDWICH_FREE = h("wickra_stick_sandwich_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STOCHASTIC_CCI_NEW = h("wickra_stochastic_cci_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5602,6 +6423,7 @@ public final class NativeMethods { WICKRA_STOCHASTIC_CCI_BATCH = h("wickra_stochastic_cci_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_STOCHASTIC_CCI_WARMUP_PERIOD = h("wickra_stochastic_cci_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_STOCHASTIC_CCI_IS_READY = h("wickra_stochastic_cci_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_STOCHASTIC_CCI_NAME = h("wickra_stochastic_cci_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_STOCHASTIC_CCI_RESET = h("wickra_stochastic_cci_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STOCHASTIC_CCI_FREE = h("wickra_stochastic_cci_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TAKURI_NEW = h("wickra_takuri_new", FunctionDescriptor.of(ADDRESS)); @@ -5609,6 +6431,7 @@ public final class NativeMethods { WICKRA_TAKURI_BATCH = h("wickra_takuri_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TAKURI_WARMUP_PERIOD = h("wickra_takuri_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TAKURI_IS_READY = h("wickra_takuri_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TAKURI_NAME = h("wickra_takuri_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TAKURI_RESET = h("wickra_takuri_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TAKURI_FREE = h("wickra_takuri_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TASUKI_GAP_NEW = h("wickra_tasuki_gap_new", FunctionDescriptor.of(ADDRESS)); @@ -5616,13 +6439,18 @@ public final class NativeMethods { WICKRA_TASUKI_GAP_BATCH = h("wickra_tasuki_gap_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TASUKI_GAP_WARMUP_PERIOD = h("wickra_tasuki_gap_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TASUKI_GAP_IS_READY = h("wickra_tasuki_gap_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TASUKI_GAP_NAME = h("wickra_tasuki_gap_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TASUKI_GAP_RESET = h("wickra_tasuki_gap_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TASUKI_GAP_FREE = h("wickra_tasuki_gap_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init20() { WICKRA_TD_CAMOUFLAGE_NEW = h("wickra_td_camouflage_new", FunctionDescriptor.of(ADDRESS)); WICKRA_TD_CAMOUFLAGE_UPDATE = h("wickra_td_camouflage_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_TD_CAMOUFLAGE_BATCH = h("wickra_td_camouflage_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_CAMOUFLAGE_WARMUP_PERIOD = h("wickra_td_camouflage_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_CAMOUFLAGE_IS_READY = h("wickra_td_camouflage_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_CAMOUFLAGE_NAME = h("wickra_td_camouflage_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_CAMOUFLAGE_RESET = h("wickra_td_camouflage_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_CAMOUFLAGE_FREE = h("wickra_td_camouflage_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_CLOP_NEW = h("wickra_td_clop_new", FunctionDescriptor.of(ADDRESS)); @@ -5630,6 +6458,7 @@ public final class NativeMethods { WICKRA_TD_CLOP_BATCH = h("wickra_td_clop_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_CLOP_WARMUP_PERIOD = h("wickra_td_clop_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_CLOP_IS_READY = h("wickra_td_clop_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_CLOP_NAME = h("wickra_td_clop_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_CLOP_RESET = h("wickra_td_clop_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_CLOP_FREE = h("wickra_td_clop_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_CLOPWIN_NEW = h("wickra_td_clopwin_new", FunctionDescriptor.of(ADDRESS)); @@ -5637,6 +6466,7 @@ public final class NativeMethods { WICKRA_TD_CLOPWIN_BATCH = h("wickra_td_clopwin_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_CLOPWIN_WARMUP_PERIOD = h("wickra_td_clopwin_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_CLOPWIN_IS_READY = h("wickra_td_clopwin_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_CLOPWIN_NAME = h("wickra_td_clopwin_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_CLOPWIN_RESET = h("wickra_td_clopwin_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_CLOPWIN_FREE = h("wickra_td_clopwin_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_COMBO_NEW = h("wickra_td_combo_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -5644,6 +6474,7 @@ public final class NativeMethods { WICKRA_TD_COMBO_BATCH = h("wickra_td_combo_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_COMBO_WARMUP_PERIOD = h("wickra_td_combo_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_COMBO_IS_READY = h("wickra_td_combo_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_COMBO_NAME = h("wickra_td_combo_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_COMBO_RESET = h("wickra_td_combo_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_COMBO_FREE = h("wickra_td_combo_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_COUNTDOWN_NEW = h("wickra_td_countdown_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -5651,6 +6482,7 @@ public final class NativeMethods { WICKRA_TD_COUNTDOWN_BATCH = h("wickra_td_countdown_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_COUNTDOWN_WARMUP_PERIOD = h("wickra_td_countdown_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_COUNTDOWN_IS_READY = h("wickra_td_countdown_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_COUNTDOWN_NAME = h("wickra_td_countdown_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_COUNTDOWN_RESET = h("wickra_td_countdown_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_COUNTDOWN_FREE = h("wickra_td_countdown_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_DE_MARKER_NEW = h("wickra_td_de_marker_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5658,6 +6490,7 @@ public final class NativeMethods { WICKRA_TD_DE_MARKER_BATCH = h("wickra_td_de_marker_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_DE_MARKER_WARMUP_PERIOD = h("wickra_td_de_marker_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_DE_MARKER_IS_READY = h("wickra_td_de_marker_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_DE_MARKER_NAME = h("wickra_td_de_marker_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_DE_MARKER_RESET = h("wickra_td_de_marker_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_DE_MARKER_FREE = h("wickra_td_de_marker_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_DIFFERENTIAL_NEW = h("wickra_td_differential_new", FunctionDescriptor.of(ADDRESS)); @@ -5665,6 +6498,7 @@ public final class NativeMethods { WICKRA_TD_DIFFERENTIAL_BATCH = h("wickra_td_differential_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_DIFFERENTIAL_WARMUP_PERIOD = h("wickra_td_differential_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_DIFFERENTIAL_IS_READY = h("wickra_td_differential_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_DIFFERENTIAL_NAME = h("wickra_td_differential_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_DIFFERENTIAL_RESET = h("wickra_td_differential_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_DIFFERENTIAL_FREE = h("wickra_td_differential_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_D_WAVE_NEW = h("wickra_td_d_wave_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5672,16 +6506,15 @@ public final class NativeMethods { WICKRA_TD_D_WAVE_BATCH = h("wickra_td_d_wave_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_D_WAVE_WARMUP_PERIOD = h("wickra_td_d_wave_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_D_WAVE_IS_READY = h("wickra_td_d_wave_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_D_WAVE_NAME = h("wickra_td_d_wave_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_D_WAVE_RESET = h("wickra_td_d_wave_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_D_WAVE_FREE = h("wickra_td_d_wave_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_OPEN_NEW = h("wickra_td_open_new", FunctionDescriptor.of(ADDRESS)); WICKRA_TD_OPEN_UPDATE = h("wickra_td_open_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_TD_OPEN_BATCH = h("wickra_td_open_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_OPEN_WARMUP_PERIOD = h("wickra_td_open_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); - } - - private static void init18() { WICKRA_TD_OPEN_IS_READY = h("wickra_td_open_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_OPEN_NAME = h("wickra_td_open_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_OPEN_RESET = h("wickra_td_open_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_OPEN_FREE = h("wickra_td_open_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_PRESSURE_NEW = h("wickra_td_pressure_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5689,6 +6522,7 @@ public final class NativeMethods { WICKRA_TD_PRESSURE_BATCH = h("wickra_td_pressure_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_PRESSURE_WARMUP_PERIOD = h("wickra_td_pressure_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_PRESSURE_IS_READY = h("wickra_td_pressure_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_PRESSURE_NAME = h("wickra_td_pressure_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_PRESSURE_RESET = h("wickra_td_pressure_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_PRESSURE_FREE = h("wickra_td_pressure_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_PROPULSION_NEW = h("wickra_td_propulsion_new", FunctionDescriptor.of(ADDRESS)); @@ -5696,6 +6530,7 @@ public final class NativeMethods { WICKRA_TD_PROPULSION_BATCH = h("wickra_td_propulsion_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_PROPULSION_WARMUP_PERIOD = h("wickra_td_propulsion_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_PROPULSION_IS_READY = h("wickra_td_propulsion_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_PROPULSION_NAME = h("wickra_td_propulsion_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_PROPULSION_RESET = h("wickra_td_propulsion_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_PROPULSION_FREE = h("wickra_td_propulsion_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_REI_NEW = h("wickra_td_rei_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5703,6 +6538,7 @@ public final class NativeMethods { WICKRA_TD_REI_BATCH = h("wickra_td_rei_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_REI_WARMUP_PERIOD = h("wickra_td_rei_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_REI_IS_READY = h("wickra_td_rei_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_REI_NAME = h("wickra_td_rei_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_REI_RESET = h("wickra_td_rei_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_REI_FREE = h("wickra_td_rei_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_SETUP_NEW = h("wickra_td_setup_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -5710,6 +6546,7 @@ public final class NativeMethods { WICKRA_TD_SETUP_BATCH = h("wickra_td_setup_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_SETUP_WARMUP_PERIOD = h("wickra_td_setup_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_SETUP_IS_READY = h("wickra_td_setup_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_SETUP_NAME = h("wickra_td_setup_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_SETUP_RESET = h("wickra_td_setup_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_SETUP_FREE = h("wickra_td_setup_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_TRAP_NEW = h("wickra_td_trap_new", FunctionDescriptor.of(ADDRESS)); @@ -5717,6 +6554,7 @@ public final class NativeMethods { WICKRA_TD_TRAP_BATCH = h("wickra_td_trap_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TD_TRAP_WARMUP_PERIOD = h("wickra_td_trap_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_TRAP_IS_READY = h("wickra_td_trap_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_TRAP_NAME = h("wickra_td_trap_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_TRAP_RESET = h("wickra_td_trap_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_TRAP_FREE = h("wickra_td_trap_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_DRIVES_NEW = h("wickra_three_drives_new", FunctionDescriptor.of(ADDRESS)); @@ -5724,13 +6562,18 @@ public final class NativeMethods { WICKRA_THREE_DRIVES_BATCH = h("wickra_three_drives_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_THREE_DRIVES_WARMUP_PERIOD = h("wickra_three_drives_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_THREE_DRIVES_IS_READY = h("wickra_three_drives_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_THREE_DRIVES_NAME = h("wickra_three_drives_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_THREE_DRIVES_RESET = h("wickra_three_drives_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_DRIVES_FREE = h("wickra_three_drives_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init21() { WICKRA_THREE_INSIDE_NEW = h("wickra_three_inside_new", FunctionDescriptor.of(ADDRESS)); WICKRA_THREE_INSIDE_UPDATE = h("wickra_three_inside_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_THREE_INSIDE_BATCH = h("wickra_three_inside_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_THREE_INSIDE_WARMUP_PERIOD = h("wickra_three_inside_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_THREE_INSIDE_IS_READY = h("wickra_three_inside_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_THREE_INSIDE_NAME = h("wickra_three_inside_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_THREE_INSIDE_RESET = h("wickra_three_inside_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_INSIDE_FREE = h("wickra_three_inside_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_LINE_BREAK_NEW = h("wickra_three_line_break_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5738,6 +6581,7 @@ public final class NativeMethods { WICKRA_THREE_LINE_BREAK_BATCH = h("wickra_three_line_break_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_THREE_LINE_BREAK_WARMUP_PERIOD = h("wickra_three_line_break_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_THREE_LINE_BREAK_IS_READY = h("wickra_three_line_break_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_THREE_LINE_BREAK_NAME = h("wickra_three_line_break_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_THREE_LINE_BREAK_RESET = h("wickra_three_line_break_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_LINE_BREAK_FREE = h("wickra_three_line_break_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_LINE_STRIKE_NEW = h("wickra_three_line_strike_new", FunctionDescriptor.of(ADDRESS)); @@ -5745,6 +6589,7 @@ public final class NativeMethods { WICKRA_THREE_LINE_STRIKE_BATCH = h("wickra_three_line_strike_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_THREE_LINE_STRIKE_WARMUP_PERIOD = h("wickra_three_line_strike_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_THREE_LINE_STRIKE_IS_READY = h("wickra_three_line_strike_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_THREE_LINE_STRIKE_NAME = h("wickra_three_line_strike_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_THREE_LINE_STRIKE_RESET = h("wickra_three_line_strike_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_LINE_STRIKE_FREE = h("wickra_three_line_strike_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_OUTSIDE_NEW = h("wickra_three_outside_new", FunctionDescriptor.of(ADDRESS)); @@ -5752,6 +6597,7 @@ public final class NativeMethods { WICKRA_THREE_OUTSIDE_BATCH = h("wickra_three_outside_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_THREE_OUTSIDE_WARMUP_PERIOD = h("wickra_three_outside_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_THREE_OUTSIDE_IS_READY = h("wickra_three_outside_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_THREE_OUTSIDE_NAME = h("wickra_three_outside_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_THREE_OUTSIDE_RESET = h("wickra_three_outside_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_OUTSIDE_FREE = h("wickra_three_outside_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_SOLDIERS_OR_CROWS_NEW = h("wickra_three_soldiers_or_crows_new", FunctionDescriptor.of(ADDRESS)); @@ -5759,6 +6605,7 @@ public final class NativeMethods { WICKRA_THREE_SOLDIERS_OR_CROWS_BATCH = h("wickra_three_soldiers_or_crows_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_THREE_SOLDIERS_OR_CROWS_WARMUP_PERIOD = h("wickra_three_soldiers_or_crows_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_THREE_SOLDIERS_OR_CROWS_IS_READY = h("wickra_three_soldiers_or_crows_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_THREE_SOLDIERS_OR_CROWS_NAME = h("wickra_three_soldiers_or_crows_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_THREE_SOLDIERS_OR_CROWS_RESET = h("wickra_three_soldiers_or_crows_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_SOLDIERS_OR_CROWS_FREE = h("wickra_three_soldiers_or_crows_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_STARS_IN_SOUTH_NEW = h("wickra_three_stars_in_south_new", FunctionDescriptor.of(ADDRESS)); @@ -5766,6 +6613,7 @@ public final class NativeMethods { WICKRA_THREE_STARS_IN_SOUTH_BATCH = h("wickra_three_stars_in_south_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_THREE_STARS_IN_SOUTH_WARMUP_PERIOD = h("wickra_three_stars_in_south_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_THREE_STARS_IN_SOUTH_IS_READY = h("wickra_three_stars_in_south_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_THREE_STARS_IN_SOUTH_NAME = h("wickra_three_stars_in_south_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_THREE_STARS_IN_SOUTH_RESET = h("wickra_three_stars_in_south_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_STARS_IN_SOUTH_FREE = h("wickra_three_stars_in_south_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THRUSTING_NEW = h("wickra_thrusting_new", FunctionDescriptor.of(ADDRESS)); @@ -5773,6 +6621,7 @@ public final class NativeMethods { WICKRA_THRUSTING_BATCH = h("wickra_thrusting_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_THRUSTING_WARMUP_PERIOD = h("wickra_thrusting_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_THRUSTING_IS_READY = h("wickra_thrusting_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_THRUSTING_NAME = h("wickra_thrusting_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_THRUSTING_RESET = h("wickra_thrusting_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THRUSTING_FREE = h("wickra_thrusting_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TIME_BASED_STOP_NEW = h("wickra_time_based_stop_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5780,6 +6629,7 @@ public final class NativeMethods { WICKRA_TIME_BASED_STOP_BATCH = h("wickra_time_based_stop_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TIME_BASED_STOP_WARMUP_PERIOD = h("wickra_time_based_stop_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TIME_BASED_STOP_IS_READY = h("wickra_time_based_stop_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TIME_BASED_STOP_NAME = h("wickra_time_based_stop_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TIME_BASED_STOP_RESET = h("wickra_time_based_stop_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TIME_BASED_STOP_FREE = h("wickra_time_based_stop_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TOWER_TOP_BOTTOM_NEW = h("wickra_tower_top_bottom_new", FunctionDescriptor.of(ADDRESS)); @@ -5787,6 +6637,7 @@ public final class NativeMethods { WICKRA_TOWER_TOP_BOTTOM_BATCH = h("wickra_tower_top_bottom_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TOWER_TOP_BOTTOM_WARMUP_PERIOD = h("wickra_tower_top_bottom_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TOWER_TOP_BOTTOM_IS_READY = h("wickra_tower_top_bottom_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TOWER_TOP_BOTTOM_NAME = h("wickra_tower_top_bottom_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TOWER_TOP_BOTTOM_RESET = h("wickra_tower_top_bottom_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TOWER_TOP_BOTTOM_FREE = h("wickra_tower_top_bottom_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRADE_VOLUME_INDEX_NEW = h("wickra_trade_volume_index_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); @@ -5794,6 +6645,7 @@ public final class NativeMethods { WICKRA_TRADE_VOLUME_INDEX_BATCH = h("wickra_trade_volume_index_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TRADE_VOLUME_INDEX_WARMUP_PERIOD = h("wickra_trade_volume_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TRADE_VOLUME_INDEX_IS_READY = h("wickra_trade_volume_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TRADE_VOLUME_INDEX_NAME = h("wickra_trade_volume_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TRADE_VOLUME_INDEX_RESET = h("wickra_trade_volume_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRADE_VOLUME_INDEX_FREE = h("wickra_trade_volume_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRIANGLE_NEW = h("wickra_triangle_new", FunctionDescriptor.of(ADDRESS)); @@ -5801,9 +6653,7 @@ public final class NativeMethods { WICKRA_TRIANGLE_BATCH = h("wickra_triangle_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TRIANGLE_WARMUP_PERIOD = h("wickra_triangle_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TRIANGLE_IS_READY = h("wickra_triangle_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); - } - - private static void init19() { + WICKRA_TRIANGLE_NAME = h("wickra_triangle_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TRIANGLE_RESET = h("wickra_triangle_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRIANGLE_FREE = h("wickra_triangle_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRIPLE_TOP_BOTTOM_NEW = h("wickra_triple_top_bottom_new", FunctionDescriptor.of(ADDRESS)); @@ -5811,6 +6661,7 @@ public final class NativeMethods { WICKRA_TRIPLE_TOP_BOTTOM_BATCH = h("wickra_triple_top_bottom_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TRIPLE_TOP_BOTTOM_WARMUP_PERIOD = h("wickra_triple_top_bottom_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TRIPLE_TOP_BOTTOM_IS_READY = h("wickra_triple_top_bottom_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TRIPLE_TOP_BOTTOM_NAME = h("wickra_triple_top_bottom_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TRIPLE_TOP_BOTTOM_RESET = h("wickra_triple_top_bottom_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRIPLE_TOP_BOTTOM_FREE = h("wickra_triple_top_bottom_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRISTAR_NEW = h("wickra_tristar_new", FunctionDescriptor.of(ADDRESS)); @@ -5818,6 +6669,7 @@ public final class NativeMethods { WICKRA_TRISTAR_BATCH = h("wickra_tristar_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TRISTAR_WARMUP_PERIOD = h("wickra_tristar_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TRISTAR_IS_READY = h("wickra_tristar_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TRISTAR_NAME = h("wickra_tristar_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TRISTAR_RESET = h("wickra_tristar_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRISTAR_FREE = h("wickra_tristar_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRUE_RANGE_NEW = h("wickra_true_range_new", FunctionDescriptor.of(ADDRESS)); @@ -5825,6 +6677,7 @@ public final class NativeMethods { WICKRA_TRUE_RANGE_BATCH = h("wickra_true_range_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TRUE_RANGE_WARMUP_PERIOD = h("wickra_true_range_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TRUE_RANGE_IS_READY = h("wickra_true_range_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TRUE_RANGE_NAME = h("wickra_true_range_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TRUE_RANGE_RESET = h("wickra_true_range_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRUE_RANGE_FREE = h("wickra_true_range_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TSV_NEW = h("wickra_tsv_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5832,13 +6685,18 @@ public final class NativeMethods { WICKRA_TSV_BATCH = h("wickra_tsv_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TSV_WARMUP_PERIOD = h("wickra_tsv_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TSV_IS_READY = h("wickra_tsv_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TSV_NAME = h("wickra_tsv_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TSV_RESET = h("wickra_tsv_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TSV_FREE = h("wickra_tsv_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init22() { WICKRA_TTM_TREND_NEW = h("wickra_ttm_trend_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_TTM_TREND_UPDATE = h("wickra_ttm_trend_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_TTM_TREND_BATCH = h("wickra_ttm_trend_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TTM_TREND_WARMUP_PERIOD = h("wickra_ttm_trend_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TTM_TREND_IS_READY = h("wickra_ttm_trend_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TTM_TREND_NAME = h("wickra_ttm_trend_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TTM_TREND_RESET = h("wickra_ttm_trend_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TTM_TREND_FREE = h("wickra_ttm_trend_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TURN_OF_MONTH_NEW = h("wickra_turn_of_month_new", FunctionDescriptor.of(ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT)); @@ -5846,6 +6704,7 @@ public final class NativeMethods { WICKRA_TURN_OF_MONTH_BATCH = h("wickra_turn_of_month_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TURN_OF_MONTH_WARMUP_PERIOD = h("wickra_turn_of_month_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TURN_OF_MONTH_IS_READY = h("wickra_turn_of_month_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TURN_OF_MONTH_NAME = h("wickra_turn_of_month_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TURN_OF_MONTH_RESET = h("wickra_turn_of_month_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TURN_OF_MONTH_FREE = h("wickra_turn_of_month_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TWEEZER_NEW = h("wickra_tweezer_new", FunctionDescriptor.of(ADDRESS)); @@ -5853,6 +6712,7 @@ public final class NativeMethods { WICKRA_TWEEZER_BATCH = h("wickra_tweezer_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TWEEZER_WARMUP_PERIOD = h("wickra_tweezer_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TWEEZER_IS_READY = h("wickra_tweezer_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TWEEZER_NAME = h("wickra_tweezer_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TWEEZER_RESET = h("wickra_tweezer_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TWEEZER_FREE = h("wickra_tweezer_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TWIGGS_MONEY_FLOW_NEW = h("wickra_twiggs_money_flow_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5860,6 +6720,7 @@ public final class NativeMethods { WICKRA_TWIGGS_MONEY_FLOW_BATCH = h("wickra_twiggs_money_flow_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TWIGGS_MONEY_FLOW_WARMUP_PERIOD = h("wickra_twiggs_money_flow_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TWIGGS_MONEY_FLOW_IS_READY = h("wickra_twiggs_money_flow_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TWIGGS_MONEY_FLOW_NAME = h("wickra_twiggs_money_flow_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TWIGGS_MONEY_FLOW_RESET = h("wickra_twiggs_money_flow_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TWIGGS_MONEY_FLOW_FREE = h("wickra_twiggs_money_flow_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TWO_CROWS_NEW = h("wickra_two_crows_new", FunctionDescriptor.of(ADDRESS)); @@ -5867,6 +6728,7 @@ public final class NativeMethods { WICKRA_TWO_CROWS_BATCH = h("wickra_two_crows_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TWO_CROWS_WARMUP_PERIOD = h("wickra_two_crows_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TWO_CROWS_IS_READY = h("wickra_two_crows_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TWO_CROWS_NAME = h("wickra_two_crows_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TWO_CROWS_RESET = h("wickra_two_crows_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TWO_CROWS_FREE = h("wickra_two_crows_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TYPICAL_PRICE_NEW = h("wickra_typical_price_new", FunctionDescriptor.of(ADDRESS)); @@ -5874,6 +6736,7 @@ public final class NativeMethods { WICKRA_TYPICAL_PRICE_BATCH = h("wickra_typical_price_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TYPICAL_PRICE_WARMUP_PERIOD = h("wickra_typical_price_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TYPICAL_PRICE_IS_READY = h("wickra_typical_price_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TYPICAL_PRICE_NAME = h("wickra_typical_price_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TYPICAL_PRICE_RESET = h("wickra_typical_price_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TYPICAL_PRICE_FREE = h("wickra_typical_price_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ULTIMATE_OSCILLATOR_NEW = h("wickra_ultimate_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); @@ -5881,6 +6744,7 @@ public final class NativeMethods { WICKRA_ULTIMATE_OSCILLATOR_BATCH = h("wickra_ultimate_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ULTIMATE_OSCILLATOR_WARMUP_PERIOD = h("wickra_ultimate_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ULTIMATE_OSCILLATOR_IS_READY = h("wickra_ultimate_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ULTIMATE_OSCILLATOR_NAME = h("wickra_ultimate_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ULTIMATE_OSCILLATOR_RESET = h("wickra_ultimate_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ULTIMATE_OSCILLATOR_FREE = h("wickra_ultimate_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_UNIQUE_THREE_RIVER_NEW = h("wickra_unique_three_river_new", FunctionDescriptor.of(ADDRESS)); @@ -5888,6 +6752,7 @@ public final class NativeMethods { WICKRA_UNIQUE_THREE_RIVER_BATCH = h("wickra_unique_three_river_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_UNIQUE_THREE_RIVER_WARMUP_PERIOD = h("wickra_unique_three_river_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_UNIQUE_THREE_RIVER_IS_READY = h("wickra_unique_three_river_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_UNIQUE_THREE_RIVER_NAME = h("wickra_unique_three_river_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_UNIQUE_THREE_RIVER_RESET = h("wickra_unique_three_river_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_UNIQUE_THREE_RIVER_FREE = h("wickra_unique_three_river_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_UPSIDE_GAP_THREE_METHODS_NEW = h("wickra_upside_gap_three_methods_new", FunctionDescriptor.of(ADDRESS)); @@ -5895,6 +6760,7 @@ public final class NativeMethods { WICKRA_UPSIDE_GAP_THREE_METHODS_BATCH = h("wickra_upside_gap_three_methods_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_UPSIDE_GAP_THREE_METHODS_WARMUP_PERIOD = h("wickra_upside_gap_three_methods_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_UPSIDE_GAP_THREE_METHODS_IS_READY = h("wickra_upside_gap_three_methods_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_UPSIDE_GAP_THREE_METHODS_NAME = h("wickra_upside_gap_three_methods_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_UPSIDE_GAP_THREE_METHODS_RESET = h("wickra_upside_gap_three_methods_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_UPSIDE_GAP_THREE_METHODS_FREE = h("wickra_upside_gap_three_methods_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_UPSIDE_GAP_TWO_CROWS_NEW = h("wickra_upside_gap_two_crows_new", FunctionDescriptor.of(ADDRESS)); @@ -5902,6 +6768,7 @@ public final class NativeMethods { WICKRA_UPSIDE_GAP_TWO_CROWS_BATCH = h("wickra_upside_gap_two_crows_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_UPSIDE_GAP_TWO_CROWS_WARMUP_PERIOD = h("wickra_upside_gap_two_crows_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_UPSIDE_GAP_TWO_CROWS_IS_READY = h("wickra_upside_gap_two_crows_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_UPSIDE_GAP_TWO_CROWS_NAME = h("wickra_upside_gap_two_crows_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_UPSIDE_GAP_TWO_CROWS_RESET = h("wickra_upside_gap_two_crows_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_UPSIDE_GAP_TWO_CROWS_FREE = h("wickra_upside_gap_two_crows_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLATILITY_RATIO_NEW = h("wickra_volatility_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5909,6 +6776,7 @@ public final class NativeMethods { WICKRA_VOLATILITY_RATIO_BATCH = h("wickra_volatility_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VOLATILITY_RATIO_WARMUP_PERIOD = h("wickra_volatility_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VOLATILITY_RATIO_IS_READY = h("wickra_volatility_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VOLATILITY_RATIO_NAME = h("wickra_volatility_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VOLATILITY_RATIO_RESET = h("wickra_volatility_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLATILITY_RATIO_FREE = h("wickra_volatility_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLTY_STOP_NEW = h("wickra_volty_stop_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -5916,6 +6784,7 @@ public final class NativeMethods { WICKRA_VOLTY_STOP_BATCH = h("wickra_volty_stop_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VOLTY_STOP_WARMUP_PERIOD = h("wickra_volty_stop_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VOLTY_STOP_IS_READY = h("wickra_volty_stop_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VOLTY_STOP_NAME = h("wickra_volty_stop_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VOLTY_STOP_RESET = h("wickra_volty_stop_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLTY_STOP_FREE = h("wickra_volty_stop_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_OSCILLATOR_NEW = h("wickra_volume_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -5923,16 +6792,15 @@ public final class NativeMethods { WICKRA_VOLUME_OSCILLATOR_BATCH = h("wickra_volume_oscillator_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VOLUME_OSCILLATOR_WARMUP_PERIOD = h("wickra_volume_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VOLUME_OSCILLATOR_IS_READY = h("wickra_volume_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VOLUME_OSCILLATOR_NAME = h("wickra_volume_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VOLUME_OSCILLATOR_RESET = h("wickra_volume_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); - } - - private static void init20() { WICKRA_VOLUME_OSCILLATOR_FREE = h("wickra_volume_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_RSI_NEW = h("wickra_volume_rsi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_VOLUME_RSI_UPDATE = h("wickra_volume_rsi_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_VOLUME_RSI_BATCH = h("wickra_volume_rsi_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VOLUME_RSI_WARMUP_PERIOD = h("wickra_volume_rsi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VOLUME_RSI_IS_READY = h("wickra_volume_rsi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VOLUME_RSI_NAME = h("wickra_volume_rsi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VOLUME_RSI_RESET = h("wickra_volume_rsi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_RSI_FREE = h("wickra_volume_rsi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_PRICE_TREND_NEW = h("wickra_volume_price_trend_new", FunctionDescriptor.of(ADDRESS)); @@ -5940,13 +6808,18 @@ public final class NativeMethods { WICKRA_VOLUME_PRICE_TREND_BATCH = h("wickra_volume_price_trend_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VOLUME_PRICE_TREND_WARMUP_PERIOD = h("wickra_volume_price_trend_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VOLUME_PRICE_TREND_IS_READY = h("wickra_volume_price_trend_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VOLUME_PRICE_TREND_NAME = h("wickra_volume_price_trend_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VOLUME_PRICE_TREND_RESET = h("wickra_volume_price_trend_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_PRICE_TREND_FREE = h("wickra_volume_price_trend_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init23() { WICKRA_VWAP_NEW = h("wickra_vwap_new", FunctionDescriptor.of(ADDRESS)); WICKRA_VWAP_UPDATE = h("wickra_vwap_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_VWAP_BATCH = h("wickra_vwap_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VWAP_WARMUP_PERIOD = h("wickra_vwap_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VWAP_IS_READY = h("wickra_vwap_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VWAP_NAME = h("wickra_vwap_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VWAP_RESET = h("wickra_vwap_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VWAP_FREE = h("wickra_vwap_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLLING_VWAP_NEW = h("wickra_rolling_vwap_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5954,6 +6827,7 @@ public final class NativeMethods { WICKRA_ROLLING_VWAP_BATCH = h("wickra_rolling_vwap_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ROLLING_VWAP_WARMUP_PERIOD = h("wickra_rolling_vwap_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROLLING_VWAP_IS_READY = h("wickra_rolling_vwap_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROLLING_VWAP_NAME = h("wickra_rolling_vwap_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROLLING_VWAP_RESET = h("wickra_rolling_vwap_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLLING_VWAP_FREE = h("wickra_rolling_vwap_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VWMA_NEW = h("wickra_vwma_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5961,6 +6835,7 @@ public final class NativeMethods { WICKRA_VWMA_BATCH = h("wickra_vwma_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VWMA_WARMUP_PERIOD = h("wickra_vwma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VWMA_IS_READY = h("wickra_vwma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VWMA_NAME = h("wickra_vwma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VWMA_RESET = h("wickra_vwma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VWMA_FREE = h("wickra_vwma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VZO_NEW = h("wickra_vzo_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -5968,6 +6843,7 @@ public final class NativeMethods { WICKRA_VZO_BATCH = h("wickra_vzo_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VZO_WARMUP_PERIOD = h("wickra_vzo_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VZO_IS_READY = h("wickra_vzo_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VZO_NAME = h("wickra_vzo_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VZO_RESET = h("wickra_vzo_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VZO_FREE = h("wickra_vzo_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WAD_NEW = h("wickra_wad_new", FunctionDescriptor.of(ADDRESS)); @@ -5975,6 +6851,7 @@ public final class NativeMethods { WICKRA_WAD_BATCH = h("wickra_wad_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_WAD_WARMUP_PERIOD = h("wickra_wad_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_WAD_IS_READY = h("wickra_wad_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_WAD_NAME = h("wickra_wad_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_WAD_RESET = h("wickra_wad_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WAD_FREE = h("wickra_wad_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WEDGE_NEW = h("wickra_wedge_new", FunctionDescriptor.of(ADDRESS)); @@ -5982,6 +6859,7 @@ public final class NativeMethods { WICKRA_WEDGE_BATCH = h("wickra_wedge_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_WEDGE_WARMUP_PERIOD = h("wickra_wedge_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_WEDGE_IS_READY = h("wickra_wedge_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_WEDGE_NAME = h("wickra_wedge_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_WEDGE_RESET = h("wickra_wedge_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WEDGE_FREE = h("wickra_wedge_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WEIGHTED_CLOSE_NEW = h("wickra_weighted_close_new", FunctionDescriptor.of(ADDRESS)); @@ -5989,6 +6867,7 @@ public final class NativeMethods { WICKRA_WEIGHTED_CLOSE_BATCH = h("wickra_weighted_close_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_WEIGHTED_CLOSE_WARMUP_PERIOD = h("wickra_weighted_close_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_WEIGHTED_CLOSE_IS_READY = h("wickra_weighted_close_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_WEIGHTED_CLOSE_NAME = h("wickra_weighted_close_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_WEIGHTED_CLOSE_RESET = h("wickra_weighted_close_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WEIGHTED_CLOSE_FREE = h("wickra_weighted_close_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WICK_RATIO_NEW = h("wickra_wick_ratio_new", FunctionDescriptor.of(ADDRESS)); @@ -5996,6 +6875,7 @@ public final class NativeMethods { WICKRA_WICK_RATIO_BATCH = h("wickra_wick_ratio_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_WICK_RATIO_WARMUP_PERIOD = h("wickra_wick_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_WICK_RATIO_IS_READY = h("wickra_wick_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_WICK_RATIO_NAME = h("wickra_wick_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_WICK_RATIO_RESET = h("wickra_wick_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WICK_RATIO_FREE = h("wickra_wick_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WILLIAMS_R_NEW = h("wickra_williams_r_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); @@ -6003,6 +6883,7 @@ public final class NativeMethods { WICKRA_WILLIAMS_R_BATCH = h("wickra_williams_r_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_WILLIAMS_R_WARMUP_PERIOD = h("wickra_williams_r_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_WILLIAMS_R_IS_READY = h("wickra_williams_r_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_WILLIAMS_R_NAME = h("wickra_williams_r_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_WILLIAMS_R_RESET = h("wickra_williams_r_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WILLIAMS_R_FREE = h("wickra_williams_r_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_YANG_ZHANG_VOLATILITY_NEW = h("wickra_yang_zhang_volatility_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -6010,6 +6891,7 @@ public final class NativeMethods { WICKRA_YANG_ZHANG_VOLATILITY_BATCH = h("wickra_yang_zhang_volatility_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_YANG_ZHANG_VOLATILITY_WARMUP_PERIOD = h("wickra_yang_zhang_volatility_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_YANG_ZHANG_VOLATILITY_IS_READY = h("wickra_yang_zhang_volatility_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_YANG_ZHANG_VOLATILITY_NAME = h("wickra_yang_zhang_volatility_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_YANG_ZHANG_VOLATILITY_RESET = h("wickra_yang_zhang_volatility_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_YANG_ZHANG_VOLATILITY_FREE = h("wickra_yang_zhang_volatility_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_YOYO_EXIT_NEW = h("wickra_yoyo_exit_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); @@ -6017,30 +6899,35 @@ public final class NativeMethods { WICKRA_YOYO_EXIT_BATCH = h("wickra_yoyo_exit_batch", FunctionDescriptor.ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_YOYO_EXIT_WARMUP_PERIOD = h("wickra_yoyo_exit_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_YOYO_EXIT_IS_READY = h("wickra_yoyo_exit_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_YOYO_EXIT_NAME = h("wickra_yoyo_exit_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_YOYO_EXIT_RESET = h("wickra_yoyo_exit_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_YOYO_EXIT_FREE = h("wickra_yoyo_exit_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AMIHUD_ILLIQUIDITY_NEW = h("wickra_amihud_illiquidity_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_AMIHUD_ILLIQUIDITY_UPDATE = h("wickra_amihud_illiquidity_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_BYTE, JAVA_LONG)); WICKRA_AMIHUD_ILLIQUIDITY_WARMUP_PERIOD = h("wickra_amihud_illiquidity_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AMIHUD_ILLIQUIDITY_IS_READY = h("wickra_amihud_illiquidity_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AMIHUD_ILLIQUIDITY_NAME = h("wickra_amihud_illiquidity_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AMIHUD_ILLIQUIDITY_RESET = h("wickra_amihud_illiquidity_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AMIHUD_ILLIQUIDITY_FREE = h("wickra_amihud_illiquidity_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CUMULATIVE_VOLUME_DELTA_NEW = h("wickra_cumulative_volume_delta_new", FunctionDescriptor.of(ADDRESS)); WICKRA_CUMULATIVE_VOLUME_DELTA_UPDATE = h("wickra_cumulative_volume_delta_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_BYTE, JAVA_LONG)); WICKRA_CUMULATIVE_VOLUME_DELTA_WARMUP_PERIOD = h("wickra_cumulative_volume_delta_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CUMULATIVE_VOLUME_DELTA_IS_READY = h("wickra_cumulative_volume_delta_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CUMULATIVE_VOLUME_DELTA_NAME = h("wickra_cumulative_volume_delta_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CUMULATIVE_VOLUME_DELTA_RESET = h("wickra_cumulative_volume_delta_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CUMULATIVE_VOLUME_DELTA_FREE = h("wickra_cumulative_volume_delta_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PIN_NEW = h("wickra_pin_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_PIN_UPDATE = h("wickra_pin_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_BYTE, JAVA_LONG)); WICKRA_PIN_WARMUP_PERIOD = h("wickra_pin_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PIN_IS_READY = h("wickra_pin_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PIN_NAME = h("wickra_pin_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PIN_RESET = h("wickra_pin_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PIN_FREE = h("wickra_pin_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLL_MEASURE_NEW = h("wickra_roll_measure_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_ROLL_MEASURE_UPDATE = h("wickra_roll_measure_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_BYTE, JAVA_LONG)); WICKRA_ROLL_MEASURE_WARMUP_PERIOD = h("wickra_roll_measure_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ROLL_MEASURE_IS_READY = h("wickra_roll_measure_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ROLL_MEASURE_NAME = h("wickra_roll_measure_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ROLL_MEASURE_RESET = h("wickra_roll_measure_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ROLL_MEASURE_FREE = h("wickra_roll_measure_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SIGNED_VOLUME_NEW = h("wickra_signed_volume_new", FunctionDescriptor.of(ADDRESS)); @@ -6049,736 +6936,859 @@ public final class NativeMethods { WICKRA_SIGNED_VOLUME_IS_READY = h("wickra_signed_volume_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); } - private static void init21() { + private static void init24() { + WICKRA_SIGNED_VOLUME_NAME = h("wickra_signed_volume_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SIGNED_VOLUME_RESET = h("wickra_signed_volume_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SIGNED_VOLUME_FREE = h("wickra_signed_volume_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRADE_IMBALANCE_NEW = h("wickra_trade_imbalance_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_TRADE_IMBALANCE_UPDATE = h("wickra_trade_imbalance_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_BYTE, JAVA_LONG)); WICKRA_TRADE_IMBALANCE_WARMUP_PERIOD = h("wickra_trade_imbalance_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TRADE_IMBALANCE_IS_READY = h("wickra_trade_imbalance_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TRADE_IMBALANCE_NAME = h("wickra_trade_imbalance_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TRADE_IMBALANCE_RESET = h("wickra_trade_imbalance_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRADE_IMBALANCE_FREE = h("wickra_trade_imbalance_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRADE_SIGN_AUTOCORRELATION_NEW = h("wickra_trade_sign_autocorrelation_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_TRADE_SIGN_AUTOCORRELATION_UPDATE = h("wickra_trade_sign_autocorrelation_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_BYTE, JAVA_LONG)); WICKRA_TRADE_SIGN_AUTOCORRELATION_WARMUP_PERIOD = h("wickra_trade_sign_autocorrelation_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TRADE_SIGN_AUTOCORRELATION_IS_READY = h("wickra_trade_sign_autocorrelation_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TRADE_SIGN_AUTOCORRELATION_NAME = h("wickra_trade_sign_autocorrelation_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TRADE_SIGN_AUTOCORRELATION_RESET = h("wickra_trade_sign_autocorrelation_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRADE_SIGN_AUTOCORRELATION_FREE = h("wickra_trade_sign_autocorrelation_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VPIN_NEW = h("wickra_vpin_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE, JAVA_LONG)); WICKRA_VPIN_UPDATE = h("wickra_vpin_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_BYTE, JAVA_LONG)); WICKRA_VPIN_WARMUP_PERIOD = h("wickra_vpin_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VPIN_IS_READY = h("wickra_vpin_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VPIN_NAME = h("wickra_vpin_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VPIN_RESET = h("wickra_vpin_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VPIN_FREE = h("wickra_vpin_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EFFECTIVE_SPREAD_NEW = h("wickra_effective_spread_new", FunctionDescriptor.of(ADDRESS)); WICKRA_EFFECTIVE_SPREAD_UPDATE = h("wickra_effective_spread_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_BYTE, JAVA_LONG, JAVA_DOUBLE)); WICKRA_EFFECTIVE_SPREAD_WARMUP_PERIOD = h("wickra_effective_spread_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_EFFECTIVE_SPREAD_IS_READY = h("wickra_effective_spread_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_EFFECTIVE_SPREAD_NAME = h("wickra_effective_spread_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_EFFECTIVE_SPREAD_RESET = h("wickra_effective_spread_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EFFECTIVE_SPREAD_FREE = h("wickra_effective_spread_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KYLES_LAMBDA_NEW = h("wickra_kyles_lambda_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_KYLES_LAMBDA_UPDATE = h("wickra_kyles_lambda_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_BYTE, JAVA_LONG, JAVA_DOUBLE)); WICKRA_KYLES_LAMBDA_WARMUP_PERIOD = h("wickra_kyles_lambda_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KYLES_LAMBDA_IS_READY = h("wickra_kyles_lambda_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KYLES_LAMBDA_NAME = h("wickra_kyles_lambda_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KYLES_LAMBDA_RESET = h("wickra_kyles_lambda_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KYLES_LAMBDA_FREE = h("wickra_kyles_lambda_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_REALIZED_SPREAD_NEW = h("wickra_realized_spread_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_REALIZED_SPREAD_UPDATE = h("wickra_realized_spread_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_BYTE, JAVA_LONG, JAVA_DOUBLE)); WICKRA_REALIZED_SPREAD_WARMUP_PERIOD = h("wickra_realized_spread_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_REALIZED_SPREAD_IS_READY = h("wickra_realized_spread_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_REALIZED_SPREAD_NAME = h("wickra_realized_spread_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_REALIZED_SPREAD_RESET = h("wickra_realized_spread_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_REALIZED_SPREAD_FREE = h("wickra_realized_spread_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CALENDAR_SPREAD_NEW = h("wickra_calendar_spread_new", FunctionDescriptor.of(ADDRESS)); WICKRA_CALENDAR_SPREAD_UPDATE = h("wickra_calendar_spread_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_CALENDAR_SPREAD_WARMUP_PERIOD = h("wickra_calendar_spread_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CALENDAR_SPREAD_IS_READY = h("wickra_calendar_spread_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CALENDAR_SPREAD_NAME = h("wickra_calendar_spread_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CALENDAR_SPREAD_RESET = h("wickra_calendar_spread_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CALENDAR_SPREAD_FREE = h("wickra_calendar_spread_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ESTIMATED_LEVERAGE_RATIO_NEW = h("wickra_estimated_leverage_ratio_new", FunctionDescriptor.of(ADDRESS)); WICKRA_ESTIMATED_LEVERAGE_RATIO_UPDATE = h("wickra_estimated_leverage_ratio_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_ESTIMATED_LEVERAGE_RATIO_WARMUP_PERIOD = h("wickra_estimated_leverage_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ESTIMATED_LEVERAGE_RATIO_IS_READY = h("wickra_estimated_leverage_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ESTIMATED_LEVERAGE_RATIO_NAME = h("wickra_estimated_leverage_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ESTIMATED_LEVERAGE_RATIO_RESET = h("wickra_estimated_leverage_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ESTIMATED_LEVERAGE_RATIO_FREE = h("wickra_estimated_leverage_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FUNDING_BASIS_NEW = h("wickra_funding_basis_new", FunctionDescriptor.of(ADDRESS)); WICKRA_FUNDING_BASIS_UPDATE = h("wickra_funding_basis_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_FUNDING_BASIS_WARMUP_PERIOD = h("wickra_funding_basis_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FUNDING_BASIS_IS_READY = h("wickra_funding_basis_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FUNDING_BASIS_NAME = h("wickra_funding_basis_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FUNDING_BASIS_RESET = h("wickra_funding_basis_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FUNDING_BASIS_FREE = h("wickra_funding_basis_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FUNDING_IMPLIED_APR_NEW = h("wickra_funding_implied_apr_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); WICKRA_FUNDING_IMPLIED_APR_UPDATE = h("wickra_funding_implied_apr_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_FUNDING_IMPLIED_APR_WARMUP_PERIOD = h("wickra_funding_implied_apr_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FUNDING_IMPLIED_APR_IS_READY = h("wickra_funding_implied_apr_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FUNDING_IMPLIED_APR_NAME = h("wickra_funding_implied_apr_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FUNDING_IMPLIED_APR_RESET = h("wickra_funding_implied_apr_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FUNDING_IMPLIED_APR_FREE = h("wickra_funding_implied_apr_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FUNDING_RATE_NEW = h("wickra_funding_rate_new", FunctionDescriptor.of(ADDRESS)); WICKRA_FUNDING_RATE_UPDATE = h("wickra_funding_rate_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_FUNDING_RATE_WARMUP_PERIOD = h("wickra_funding_rate_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FUNDING_RATE_IS_READY = h("wickra_funding_rate_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FUNDING_RATE_NAME = h("wickra_funding_rate_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FUNDING_RATE_RESET = h("wickra_funding_rate_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FUNDING_RATE_FREE = h("wickra_funding_rate_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FUNDING_RATE_MEAN_NEW = h("wickra_funding_rate_mean_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_FUNDING_RATE_MEAN_UPDATE = h("wickra_funding_rate_mean_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_FUNDING_RATE_MEAN_WARMUP_PERIOD = h("wickra_funding_rate_mean_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FUNDING_RATE_MEAN_IS_READY = h("wickra_funding_rate_mean_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FUNDING_RATE_MEAN_NAME = h("wickra_funding_rate_mean_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FUNDING_RATE_MEAN_RESET = h("wickra_funding_rate_mean_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FUNDING_RATE_MEAN_FREE = h("wickra_funding_rate_mean_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FUNDING_RATE_Z_SCORE_NEW = h("wickra_funding_rate_z_score_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_FUNDING_RATE_Z_SCORE_UPDATE = h("wickra_funding_rate_z_score_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_FUNDING_RATE_Z_SCORE_WARMUP_PERIOD = h("wickra_funding_rate_z_score_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FUNDING_RATE_Z_SCORE_IS_READY = h("wickra_funding_rate_z_score_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FUNDING_RATE_Z_SCORE_NAME = h("wickra_funding_rate_z_score_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FUNDING_RATE_Z_SCORE_RESET = h("wickra_funding_rate_z_score_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FUNDING_RATE_Z_SCORE_FREE = h("wickra_funding_rate_z_score_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LONG_SHORT_RATIO_NEW = h("wickra_long_short_ratio_new", FunctionDescriptor.of(ADDRESS)); WICKRA_LONG_SHORT_RATIO_UPDATE = h("wickra_long_short_ratio_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_LONG_SHORT_RATIO_WARMUP_PERIOD = h("wickra_long_short_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_LONG_SHORT_RATIO_IS_READY = h("wickra_long_short_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LONG_SHORT_RATIO_NAME = h("wickra_long_short_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LONG_SHORT_RATIO_RESET = h("wickra_long_short_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LONG_SHORT_RATIO_FREE = h("wickra_long_short_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OPEN_INTEREST_DELTA_NEW = h("wickra_open_interest_delta_new", FunctionDescriptor.of(ADDRESS)); WICKRA_OPEN_INTEREST_DELTA_UPDATE = h("wickra_open_interest_delta_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_OPEN_INTEREST_DELTA_WARMUP_PERIOD = h("wickra_open_interest_delta_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_OPEN_INTEREST_DELTA_IS_READY = h("wickra_open_interest_delta_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_OPEN_INTEREST_DELTA_NAME = h("wickra_open_interest_delta_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_OPEN_INTEREST_DELTA_RESET = h("wickra_open_interest_delta_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OPEN_INTEREST_DELTA_FREE = h("wickra_open_interest_delta_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OI_PRICE_DIVERGENCE_NEW = h("wickra_oi_price_divergence_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_OI_PRICE_DIVERGENCE_UPDATE = h("wickra_oi_price_divergence_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_OI_PRICE_DIVERGENCE_WARMUP_PERIOD = h("wickra_oi_price_divergence_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_OI_PRICE_DIVERGENCE_IS_READY = h("wickra_oi_price_divergence_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_OI_PRICE_DIVERGENCE_NAME = h("wickra_oi_price_divergence_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_OI_PRICE_DIVERGENCE_RESET = h("wickra_oi_price_divergence_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OI_PRICE_DIVERGENCE_FREE = h("wickra_oi_price_divergence_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OI_TO_VOLUME_RATIO_NEW = h("wickra_oi_to_volume_ratio_new", FunctionDescriptor.of(ADDRESS)); WICKRA_OI_TO_VOLUME_RATIO_UPDATE = h("wickra_oi_to_volume_ratio_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_OI_TO_VOLUME_RATIO_WARMUP_PERIOD = h("wickra_oi_to_volume_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_OI_TO_VOLUME_RATIO_IS_READY = h("wickra_oi_to_volume_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_OI_TO_VOLUME_RATIO_NAME = h("wickra_oi_to_volume_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); + } + + private static void init25() { WICKRA_OI_TO_VOLUME_RATIO_RESET = h("wickra_oi_to_volume_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OI_TO_VOLUME_RATIO_FREE = h("wickra_oi_to_volume_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OI_WEIGHTED_NEW = h("wickra_oi_weighted_new", FunctionDescriptor.of(ADDRESS)); WICKRA_OI_WEIGHTED_UPDATE = h("wickra_oi_weighted_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_OI_WEIGHTED_WARMUP_PERIOD = h("wickra_oi_weighted_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_OI_WEIGHTED_IS_READY = h("wickra_oi_weighted_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_OI_WEIGHTED_NAME = h("wickra_oi_weighted_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_OI_WEIGHTED_RESET = h("wickra_oi_weighted_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OI_WEIGHTED_FREE = h("wickra_oi_weighted_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OPEN_INTEREST_MOMENTUM_NEW = h("wickra_open_interest_momentum_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_OPEN_INTEREST_MOMENTUM_UPDATE = h("wickra_open_interest_momentum_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_OPEN_INTEREST_MOMENTUM_WARMUP_PERIOD = h("wickra_open_interest_momentum_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_OPEN_INTEREST_MOMENTUM_IS_READY = h("wickra_open_interest_momentum_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_OPEN_INTEREST_MOMENTUM_NAME = h("wickra_open_interest_momentum_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_OPEN_INTEREST_MOMENTUM_RESET = h("wickra_open_interest_momentum_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OPEN_INTEREST_MOMENTUM_FREE = h("wickra_open_interest_momentum_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PERPETUAL_PREMIUM_INDEX_NEW = h("wickra_perpetual_premium_index_new", FunctionDescriptor.of(ADDRESS)); WICKRA_PERPETUAL_PREMIUM_INDEX_UPDATE = h("wickra_perpetual_premium_index_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_PERPETUAL_PREMIUM_INDEX_WARMUP_PERIOD = h("wickra_perpetual_premium_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PERPETUAL_PREMIUM_INDEX_IS_READY = h("wickra_perpetual_premium_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); - } - - private static void init22() { + WICKRA_PERPETUAL_PREMIUM_INDEX_NAME = h("wickra_perpetual_premium_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PERPETUAL_PREMIUM_INDEX_RESET = h("wickra_perpetual_premium_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PERPETUAL_PREMIUM_INDEX_FREE = h("wickra_perpetual_premium_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TAKER_BUY_SELL_RATIO_NEW = h("wickra_taker_buy_sell_ratio_new", FunctionDescriptor.of(ADDRESS)); WICKRA_TAKER_BUY_SELL_RATIO_UPDATE = h("wickra_taker_buy_sell_ratio_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_TAKER_BUY_SELL_RATIO_WARMUP_PERIOD = h("wickra_taker_buy_sell_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TAKER_BUY_SELL_RATIO_IS_READY = h("wickra_taker_buy_sell_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TAKER_BUY_SELL_RATIO_NAME = h("wickra_taker_buy_sell_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TAKER_BUY_SELL_RATIO_RESET = h("wickra_taker_buy_sell_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TAKER_BUY_SELL_RATIO_FREE = h("wickra_taker_buy_sell_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TERM_STRUCTURE_BASIS_NEW = h("wickra_term_structure_basis_new", FunctionDescriptor.of(ADDRESS)); WICKRA_TERM_STRUCTURE_BASIS_UPDATE = h("wickra_term_structure_basis_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG)); WICKRA_TERM_STRUCTURE_BASIS_WARMUP_PERIOD = h("wickra_term_structure_basis_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TERM_STRUCTURE_BASIS_IS_READY = h("wickra_term_structure_basis_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TERM_STRUCTURE_BASIS_NAME = h("wickra_term_structure_basis_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TERM_STRUCTURE_BASIS_RESET = h("wickra_term_structure_basis_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TERM_STRUCTURE_BASIS_FREE = h("wickra_term_structure_basis_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DEPTH_SLOPE_NEW = h("wickra_depth_slope_new", FunctionDescriptor.of(ADDRESS)); WICKRA_DEPTH_SLOPE_UPDATE = h("wickra_depth_slope_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_DEPTH_SLOPE_WARMUP_PERIOD = h("wickra_depth_slope_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DEPTH_SLOPE_IS_READY = h("wickra_depth_slope_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DEPTH_SLOPE_NAME = h("wickra_depth_slope_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DEPTH_SLOPE_RESET = h("wickra_depth_slope_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DEPTH_SLOPE_FREE = h("wickra_depth_slope_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MICROPRICE_NEW = h("wickra_microprice_new", FunctionDescriptor.of(ADDRESS)); WICKRA_MICROPRICE_UPDATE = h("wickra_microprice_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_MICROPRICE_WARMUP_PERIOD = h("wickra_microprice_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MICROPRICE_IS_READY = h("wickra_microprice_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MICROPRICE_NAME = h("wickra_microprice_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MICROPRICE_RESET = h("wickra_microprice_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MICROPRICE_FREE = h("wickra_microprice_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_FULL_NEW = h("wickra_order_book_imbalance_full_new", FunctionDescriptor.of(ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_FULL_UPDATE = h("wickra_order_book_imbalance_full_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ORDER_BOOK_IMBALANCE_FULL_WARMUP_PERIOD = h("wickra_order_book_imbalance_full_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_FULL_IS_READY = h("wickra_order_book_imbalance_full_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ORDER_BOOK_IMBALANCE_FULL_NAME = h("wickra_order_book_imbalance_full_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_FULL_RESET = h("wickra_order_book_imbalance_full_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_FULL_FREE = h("wickra_order_book_imbalance_full_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_TOP1_NEW = h("wickra_order_book_imbalance_top1_new", FunctionDescriptor.of(ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_TOP1_UPDATE = h("wickra_order_book_imbalance_top1_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ORDER_BOOK_IMBALANCE_TOP1_WARMUP_PERIOD = h("wickra_order_book_imbalance_top1_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_TOP1_IS_READY = h("wickra_order_book_imbalance_top1_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ORDER_BOOK_IMBALANCE_TOP1_NAME = h("wickra_order_book_imbalance_top1_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_TOP1_RESET = h("wickra_order_book_imbalance_top1_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_TOP1_FREE = h("wickra_order_book_imbalance_top1_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_NEW = h("wickra_order_book_imbalance_top_n_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_UPDATE = h("wickra_order_book_imbalance_top_n_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_WARMUP_PERIOD = h("wickra_order_book_imbalance_top_n_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_IS_READY = h("wickra_order_book_imbalance_top_n_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_NAME = h("wickra_order_book_imbalance_top_n_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_RESET = h("wickra_order_book_imbalance_top_n_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ORDER_BOOK_IMBALANCE_TOP_N_FREE = h("wickra_order_book_imbalance_top_n_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ORDER_FLOW_IMBALANCE_NEW = h("wickra_order_flow_imbalance_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_ORDER_FLOW_IMBALANCE_UPDATE = h("wickra_order_flow_imbalance_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_ORDER_FLOW_IMBALANCE_WARMUP_PERIOD = h("wickra_order_flow_imbalance_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ORDER_FLOW_IMBALANCE_IS_READY = h("wickra_order_flow_imbalance_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ORDER_FLOW_IMBALANCE_NAME = h("wickra_order_flow_imbalance_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ORDER_FLOW_IMBALANCE_RESET = h("wickra_order_flow_imbalance_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ORDER_FLOW_IMBALANCE_FREE = h("wickra_order_flow_imbalance_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_QUOTED_SPREAD_NEW = h("wickra_quoted_spread_new", FunctionDescriptor.of(ADDRESS)); WICKRA_QUOTED_SPREAD_UPDATE = h("wickra_quoted_spread_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_QUOTED_SPREAD_WARMUP_PERIOD = h("wickra_quoted_spread_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_QUOTED_SPREAD_IS_READY = h("wickra_quoted_spread_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_QUOTED_SPREAD_NAME = h("wickra_quoted_spread_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_QUOTED_SPREAD_RESET = h("wickra_quoted_spread_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_QUOTED_SPREAD_FREE = h("wickra_quoted_spread_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ABSOLUTE_BREADTH_INDEX_NEW = h("wickra_absolute_breadth_index_new", FunctionDescriptor.of(ADDRESS)); WICKRA_ABSOLUTE_BREADTH_INDEX_UPDATE = h("wickra_absolute_breadth_index_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_ABSOLUTE_BREADTH_INDEX_WARMUP_PERIOD = h("wickra_absolute_breadth_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ABSOLUTE_BREADTH_INDEX_IS_READY = h("wickra_absolute_breadth_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ABSOLUTE_BREADTH_INDEX_NAME = h("wickra_absolute_breadth_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ABSOLUTE_BREADTH_INDEX_RESET = h("wickra_absolute_breadth_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ABSOLUTE_BREADTH_INDEX_FREE = h("wickra_absolute_breadth_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AD_VOLUME_LINE_NEW = h("wickra_ad_volume_line_new", FunctionDescriptor.of(ADDRESS)); WICKRA_AD_VOLUME_LINE_UPDATE = h("wickra_ad_volume_line_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_AD_VOLUME_LINE_WARMUP_PERIOD = h("wickra_ad_volume_line_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AD_VOLUME_LINE_IS_READY = h("wickra_ad_volume_line_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AD_VOLUME_LINE_NAME = h("wickra_ad_volume_line_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AD_VOLUME_LINE_RESET = h("wickra_ad_volume_line_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AD_VOLUME_LINE_FREE = h("wickra_ad_volume_line_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADVANCE_DECLINE_NEW = h("wickra_advance_decline_new", FunctionDescriptor.of(ADDRESS)); WICKRA_ADVANCE_DECLINE_UPDATE = h("wickra_advance_decline_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_ADVANCE_DECLINE_WARMUP_PERIOD = h("wickra_advance_decline_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ADVANCE_DECLINE_IS_READY = h("wickra_advance_decline_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ADVANCE_DECLINE_NAME = h("wickra_advance_decline_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ADVANCE_DECLINE_RESET = h("wickra_advance_decline_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADVANCE_DECLINE_FREE = h("wickra_advance_decline_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADVANCE_DECLINE_RATIO_NEW = h("wickra_advance_decline_ratio_new", FunctionDescriptor.of(ADDRESS)); WICKRA_ADVANCE_DECLINE_RATIO_UPDATE = h("wickra_advance_decline_ratio_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_ADVANCE_DECLINE_RATIO_WARMUP_PERIOD = h("wickra_advance_decline_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ADVANCE_DECLINE_RATIO_IS_READY = h("wickra_advance_decline_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ADVANCE_DECLINE_RATIO_NAME = h("wickra_advance_decline_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ADVANCE_DECLINE_RATIO_RESET = h("wickra_advance_decline_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADVANCE_DECLINE_RATIO_FREE = h("wickra_advance_decline_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BREADTH_THRUST_NEW = h("wickra_breadth_thrust_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_BREADTH_THRUST_UPDATE = h("wickra_breadth_thrust_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_BREADTH_THRUST_WARMUP_PERIOD = h("wickra_breadth_thrust_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BREADTH_THRUST_IS_READY = h("wickra_breadth_thrust_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BREADTH_THRUST_NAME = h("wickra_breadth_thrust_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BREADTH_THRUST_RESET = h("wickra_breadth_thrust_reset", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init26() { WICKRA_BREADTH_THRUST_FREE = h("wickra_breadth_thrust_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BULLISH_PERCENT_INDEX_NEW = h("wickra_bullish_percent_index_new", FunctionDescriptor.of(ADDRESS)); WICKRA_BULLISH_PERCENT_INDEX_UPDATE = h("wickra_bullish_percent_index_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_BULLISH_PERCENT_INDEX_WARMUP_PERIOD = h("wickra_bullish_percent_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BULLISH_PERCENT_INDEX_IS_READY = h("wickra_bullish_percent_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BULLISH_PERCENT_INDEX_NAME = h("wickra_bullish_percent_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BULLISH_PERCENT_INDEX_RESET = h("wickra_bullish_percent_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BULLISH_PERCENT_INDEX_FREE = h("wickra_bullish_percent_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CUMULATIVE_VOLUME_INDEX_NEW = h("wickra_cumulative_volume_index_new", FunctionDescriptor.of(ADDRESS)); WICKRA_CUMULATIVE_VOLUME_INDEX_UPDATE = h("wickra_cumulative_volume_index_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_CUMULATIVE_VOLUME_INDEX_WARMUP_PERIOD = h("wickra_cumulative_volume_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CUMULATIVE_VOLUME_INDEX_IS_READY = h("wickra_cumulative_volume_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CUMULATIVE_VOLUME_INDEX_NAME = h("wickra_cumulative_volume_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CUMULATIVE_VOLUME_INDEX_RESET = h("wickra_cumulative_volume_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CUMULATIVE_VOLUME_INDEX_FREE = h("wickra_cumulative_volume_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIGH_LOW_INDEX_NEW = h("wickra_high_low_index_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_HIGH_LOW_INDEX_UPDATE = h("wickra_high_low_index_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_HIGH_LOW_INDEX_WARMUP_PERIOD = h("wickra_high_low_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HIGH_LOW_INDEX_IS_READY = h("wickra_high_low_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HIGH_LOW_INDEX_NAME = h("wickra_high_low_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HIGH_LOW_INDEX_RESET = h("wickra_high_low_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIGH_LOW_INDEX_FREE = h("wickra_high_low_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MC_CLELLAN_OSCILLATOR_NEW = h("wickra_mc_clellan_oscillator_new", FunctionDescriptor.of(ADDRESS)); WICKRA_MC_CLELLAN_OSCILLATOR_UPDATE = h("wickra_mc_clellan_oscillator_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_MC_CLELLAN_OSCILLATOR_WARMUP_PERIOD = h("wickra_mc_clellan_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MC_CLELLAN_OSCILLATOR_IS_READY = h("wickra_mc_clellan_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MC_CLELLAN_OSCILLATOR_NAME = h("wickra_mc_clellan_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MC_CLELLAN_OSCILLATOR_RESET = h("wickra_mc_clellan_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MC_CLELLAN_OSCILLATOR_FREE = h("wickra_mc_clellan_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MC_CLELLAN_SUMMATION_INDEX_NEW = h("wickra_mc_clellan_summation_index_new", FunctionDescriptor.of(ADDRESS)); WICKRA_MC_CLELLAN_SUMMATION_INDEX_UPDATE = h("wickra_mc_clellan_summation_index_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_MC_CLELLAN_SUMMATION_INDEX_WARMUP_PERIOD = h("wickra_mc_clellan_summation_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MC_CLELLAN_SUMMATION_INDEX_IS_READY = h("wickra_mc_clellan_summation_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MC_CLELLAN_SUMMATION_INDEX_NAME = h("wickra_mc_clellan_summation_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MC_CLELLAN_SUMMATION_INDEX_RESET = h("wickra_mc_clellan_summation_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MC_CLELLAN_SUMMATION_INDEX_FREE = h("wickra_mc_clellan_summation_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_NEW_HIGHS_NEW_LOWS_NEW = h("wickra_new_highs_new_lows_new", FunctionDescriptor.of(ADDRESS)); WICKRA_NEW_HIGHS_NEW_LOWS_UPDATE = h("wickra_new_highs_new_lows_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_NEW_HIGHS_NEW_LOWS_WARMUP_PERIOD = h("wickra_new_highs_new_lows_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_NEW_HIGHS_NEW_LOWS_IS_READY = h("wickra_new_highs_new_lows_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); - } - - private static void init23() { + WICKRA_NEW_HIGHS_NEW_LOWS_NAME = h("wickra_new_highs_new_lows_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_NEW_HIGHS_NEW_LOWS_RESET = h("wickra_new_highs_new_lows_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_NEW_HIGHS_NEW_LOWS_FREE = h("wickra_new_highs_new_lows_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PERCENT_ABOVE_MA_NEW = h("wickra_percent_above_ma_new", FunctionDescriptor.of(ADDRESS)); WICKRA_PERCENT_ABOVE_MA_UPDATE = h("wickra_percent_above_ma_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_PERCENT_ABOVE_MA_WARMUP_PERIOD = h("wickra_percent_above_ma_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PERCENT_ABOVE_MA_IS_READY = h("wickra_percent_above_ma_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PERCENT_ABOVE_MA_NAME = h("wickra_percent_above_ma_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PERCENT_ABOVE_MA_RESET = h("wickra_percent_above_ma_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PERCENT_ABOVE_MA_FREE = h("wickra_percent_above_ma_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TICK_INDEX_NEW = h("wickra_tick_index_new", FunctionDescriptor.of(ADDRESS)); WICKRA_TICK_INDEX_UPDATE = h("wickra_tick_index_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_TICK_INDEX_WARMUP_PERIOD = h("wickra_tick_index_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TICK_INDEX_IS_READY = h("wickra_tick_index_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TICK_INDEX_NAME = h("wickra_tick_index_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TICK_INDEX_RESET = h("wickra_tick_index_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TICK_INDEX_FREE = h("wickra_tick_index_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRIN_NEW = h("wickra_trin_new", FunctionDescriptor.of(ADDRESS)); WICKRA_TRIN_UPDATE = h("wickra_trin_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_TRIN_WARMUP_PERIOD = h("wickra_trin_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TRIN_IS_READY = h("wickra_trin_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TRIN_NAME = h("wickra_trin_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TRIN_RESET = h("wickra_trin_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TRIN_FREE = h("wickra_trin_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_UP_DOWN_VOLUME_RATIO_NEW = h("wickra_up_down_volume_ratio_new", FunctionDescriptor.of(ADDRESS)); WICKRA_UP_DOWN_VOLUME_RATIO_UPDATE = h("wickra_up_down_volume_ratio_update", FunctionDescriptor.of(JAVA_DOUBLE, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_UP_DOWN_VOLUME_RATIO_WARMUP_PERIOD = h("wickra_up_down_volume_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_UP_DOWN_VOLUME_RATIO_IS_READY = h("wickra_up_down_volume_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_UP_DOWN_VOLUME_RATIO_NAME = h("wickra_up_down_volume_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_UP_DOWN_VOLUME_RATIO_RESET = h("wickra_up_down_volume_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_UP_DOWN_VOLUME_RATIO_FREE = h("wickra_up_down_volume_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ACCELERATION_BANDS_NEW = h("wickra_acceleration_bands_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_ACCELERATION_BANDS_UPDATE = h("wickra_acceleration_bands_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_ACCELERATION_BANDS_WARMUP_PERIOD = h("wickra_acceleration_bands_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ACCELERATION_BANDS_IS_READY = h("wickra_acceleration_bands_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ACCELERATION_BANDS_NAME = h("wickra_acceleration_bands_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ACCELERATION_BANDS_RESET = h("wickra_acceleration_bands_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ACCELERATION_BANDS_FREE = h("wickra_acceleration_bands_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADX_NEW = h("wickra_adx_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_ADX_UPDATE = h("wickra_adx_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_ADX_WARMUP_PERIOD = h("wickra_adx_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ADX_IS_READY = h("wickra_adx_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ADX_NAME = h("wickra_adx_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ADX_RESET = h("wickra_adx_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ADX_FREE = h("wickra_adx_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ALLIGATOR_NEW = h("wickra_alligator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); WICKRA_ALLIGATOR_UPDATE = h("wickra_alligator_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_ALLIGATOR_WARMUP_PERIOD = h("wickra_alligator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ALLIGATOR_IS_READY = h("wickra_alligator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ALLIGATOR_NAME = h("wickra_alligator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ALLIGATOR_RESET = h("wickra_alligator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ALLIGATOR_FREE = h("wickra_alligator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ANDREWS_PITCHFORK_NEW = h("wickra_andrews_pitchfork_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_ANDREWS_PITCHFORK_UPDATE = h("wickra_andrews_pitchfork_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_ANDREWS_PITCHFORK_WARMUP_PERIOD = h("wickra_andrews_pitchfork_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ANDREWS_PITCHFORK_IS_READY = h("wickra_andrews_pitchfork_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ANDREWS_PITCHFORK_NAME = h("wickra_andrews_pitchfork_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ANDREWS_PITCHFORK_RESET = h("wickra_andrews_pitchfork_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ANDREWS_PITCHFORK_FREE = h("wickra_andrews_pitchfork_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AROON_NEW = h("wickra_aroon_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_AROON_UPDATE = h("wickra_aroon_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_AROON_WARMUP_PERIOD = h("wickra_aroon_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AROON_IS_READY = h("wickra_aroon_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AROON_NAME = h("wickra_aroon_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AROON_RESET = h("wickra_aroon_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AROON_FREE = h("wickra_aroon_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ATR_BANDS_NEW = h("wickra_atr_bands_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_ATR_BANDS_UPDATE = h("wickra_atr_bands_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_ATR_BANDS_WARMUP_PERIOD = h("wickra_atr_bands_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ATR_BANDS_IS_READY = h("wickra_atr_bands_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ATR_BANDS_NAME = h("wickra_atr_bands_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ATR_BANDS_RESET = h("wickra_atr_bands_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ATR_BANDS_FREE = h("wickra_atr_bands_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ATR_RATCHET_NEW = h("wickra_atr_ratchet_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE, JAVA_DOUBLE)); WICKRA_ATR_RATCHET_UPDATE = h("wickra_atr_ratchet_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_ATR_RATCHET_WARMUP_PERIOD = h("wickra_atr_ratchet_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ATR_RATCHET_IS_READY = h("wickra_atr_ratchet_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ATR_RATCHET_NAME = h("wickra_atr_ratchet_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ATR_RATCHET_RESET = h("wickra_atr_ratchet_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ATR_RATCHET_FREE = h("wickra_atr_ratchet_free", FunctionDescriptor.ofVoid(ADDRESS)); + } + + private static void init27() { WICKRA_AUTO_FIB_NEW = h("wickra_auto_fib_new", FunctionDescriptor.of(ADDRESS)); WICKRA_AUTO_FIB_UPDATE = h("wickra_auto_fib_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_AUTO_FIB_WARMUP_PERIOD = h("wickra_auto_fib_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_AUTO_FIB_IS_READY = h("wickra_auto_fib_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_AUTO_FIB_NAME = h("wickra_auto_fib_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_AUTO_FIB_RESET = h("wickra_auto_fib_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_AUTO_FIB_FREE = h("wickra_auto_fib_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BOLLINGER_BANDS_NEW = h("wickra_bollinger_bands_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_BOLLINGER_BANDS_UPDATE = h("wickra_bollinger_bands_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_BOLLINGER_BANDS_WARMUP_PERIOD = h("wickra_bollinger_bands_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BOLLINGER_BANDS_IS_READY = h("wickra_bollinger_bands_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BOLLINGER_BANDS_NAME = h("wickra_bollinger_bands_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BOLLINGER_BANDS_RESET = h("wickra_bollinger_bands_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BOLLINGER_BANDS_FREE = h("wickra_bollinger_bands_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BOMAR_BANDS_NEW = h("wickra_bomar_bands_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_BOMAR_BANDS_UPDATE = h("wickra_bomar_bands_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_BOMAR_BANDS_WARMUP_PERIOD = h("wickra_bomar_bands_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_BOMAR_BANDS_IS_READY = h("wickra_bomar_bands_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_BOMAR_BANDS_NAME = h("wickra_bomar_bands_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_BOMAR_BANDS_RESET = h("wickra_bomar_bands_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_BOMAR_BANDS_FREE = h("wickra_bomar_bands_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CAMARILLA_NEW = h("wickra_camarilla_new", FunctionDescriptor.of(ADDRESS)); WICKRA_CAMARILLA_UPDATE = h("wickra_camarilla_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_CAMARILLA_WARMUP_PERIOD = h("wickra_camarilla_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CAMARILLA_IS_READY = h("wickra_camarilla_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CAMARILLA_NAME = h("wickra_camarilla_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CAMARILLA_RESET = h("wickra_camarilla_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CAMARILLA_FREE = h("wickra_camarilla_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CANDLE_VOLUME_NEW = h("wickra_candle_volume_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_CANDLE_VOLUME_UPDATE = h("wickra_candle_volume_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_CANDLE_VOLUME_WARMUP_PERIOD = h("wickra_candle_volume_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CANDLE_VOLUME_IS_READY = h("wickra_candle_volume_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CANDLE_VOLUME_NAME = h("wickra_candle_volume_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CANDLE_VOLUME_RESET = h("wickra_candle_volume_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CANDLE_VOLUME_FREE = h("wickra_candle_volume_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CENTRAL_PIVOT_RANGE_NEW = h("wickra_central_pivot_range_new", FunctionDescriptor.of(ADDRESS)); WICKRA_CENTRAL_PIVOT_RANGE_UPDATE = h("wickra_central_pivot_range_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_CENTRAL_PIVOT_RANGE_WARMUP_PERIOD = h("wickra_central_pivot_range_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CENTRAL_PIVOT_RANGE_IS_READY = h("wickra_central_pivot_range_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CENTRAL_PIVOT_RANGE_NAME = h("wickra_central_pivot_range_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CENTRAL_PIVOT_RANGE_RESET = h("wickra_central_pivot_range_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CENTRAL_PIVOT_RANGE_FREE = h("wickra_central_pivot_range_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CHANDE_KROLL_STOP_NEW = h("wickra_chande_kroll_stop_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE, JAVA_LONG)); WICKRA_CHANDE_KROLL_STOP_UPDATE = h("wickra_chande_kroll_stop_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_CHANDE_KROLL_STOP_WARMUP_PERIOD = h("wickra_chande_kroll_stop_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CHANDE_KROLL_STOP_IS_READY = h("wickra_chande_kroll_stop_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CHANDE_KROLL_STOP_NAME = h("wickra_chande_kroll_stop_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CHANDE_KROLL_STOP_RESET = h("wickra_chande_kroll_stop_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CHANDE_KROLL_STOP_FREE = h("wickra_chande_kroll_stop_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CHANDELIER_EXIT_NEW = h("wickra_chandelier_exit_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_CHANDELIER_EXIT_UPDATE = h("wickra_chandelier_exit_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_CHANDELIER_EXIT_WARMUP_PERIOD = h("wickra_chandelier_exit_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CHANDELIER_EXIT_IS_READY = h("wickra_chandelier_exit_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_CHANDELIER_EXIT_NAME = h("wickra_chandelier_exit_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CHANDELIER_EXIT_RESET = h("wickra_chandelier_exit_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CHANDELIER_EXIT_FREE = h("wickra_chandelier_exit_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CLASSIC_PIVOTS_NEW = h("wickra_classic_pivots_new", FunctionDescriptor.of(ADDRESS)); WICKRA_CLASSIC_PIVOTS_UPDATE = h("wickra_classic_pivots_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_CLASSIC_PIVOTS_WARMUP_PERIOD = h("wickra_classic_pivots_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_CLASSIC_PIVOTS_IS_READY = h("wickra_classic_pivots_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); - } - - private static void init24() { + WICKRA_CLASSIC_PIVOTS_NAME = h("wickra_classic_pivots_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_CLASSIC_PIVOTS_RESET = h("wickra_classic_pivots_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_CLASSIC_PIVOTS_FREE = h("wickra_classic_pivots_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_COINTEGRATION_NEW = h("wickra_cointegration_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_COINTEGRATION_UPDATE = h("wickra_cointegration_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, ADDRESS)); WICKRA_COINTEGRATION_WARMUP_PERIOD = h("wickra_cointegration_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_COINTEGRATION_IS_READY = h("wickra_cointegration_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_COINTEGRATION_NAME = h("wickra_cointegration_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_COINTEGRATION_RESET = h("wickra_cointegration_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_COINTEGRATION_FREE = h("wickra_cointegration_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_COMPOSITE_PROFILE_NEW = h("wickra_composite_profile_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_DOUBLE)); WICKRA_COMPOSITE_PROFILE_UPDATE = h("wickra_composite_profile_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_COMPOSITE_PROFILE_WARMUP_PERIOD = h("wickra_composite_profile_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_COMPOSITE_PROFILE_IS_READY = h("wickra_composite_profile_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_COMPOSITE_PROFILE_NAME = h("wickra_composite_profile_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_COMPOSITE_PROFILE_RESET = h("wickra_composite_profile_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_COMPOSITE_PROFILE_FREE = h("wickra_composite_profile_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DEMARK_PIVOTS_NEW = h("wickra_demark_pivots_new", FunctionDescriptor.of(ADDRESS)); WICKRA_DEMARK_PIVOTS_UPDATE = h("wickra_demark_pivots_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_DEMARK_PIVOTS_WARMUP_PERIOD = h("wickra_demark_pivots_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DEMARK_PIVOTS_IS_READY = h("wickra_demark_pivots_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DEMARK_PIVOTS_NAME = h("wickra_demark_pivots_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DEMARK_PIVOTS_RESET = h("wickra_demark_pivots_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DEMARK_PIVOTS_FREE = h("wickra_demark_pivots_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DONCHIAN_NEW = h("wickra_donchian_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_DONCHIAN_UPDATE = h("wickra_donchian_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_DONCHIAN_WARMUP_PERIOD = h("wickra_donchian_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DONCHIAN_IS_READY = h("wickra_donchian_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DONCHIAN_NAME = h("wickra_donchian_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DONCHIAN_RESET = h("wickra_donchian_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DONCHIAN_FREE = h("wickra_donchian_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DONCHIAN_STOP_NEW = h("wickra_donchian_stop_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_DONCHIAN_STOP_UPDATE = h("wickra_donchian_stop_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_DONCHIAN_STOP_WARMUP_PERIOD = h("wickra_donchian_stop_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DONCHIAN_STOP_IS_READY = h("wickra_donchian_stop_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DONCHIAN_STOP_NAME = h("wickra_donchian_stop_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DONCHIAN_STOP_RESET = h("wickra_donchian_stop_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DONCHIAN_STOP_FREE = h("wickra_donchian_stop_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DOUBLE_BOLLINGER_NEW = h("wickra_double_bollinger_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE, JAVA_DOUBLE)); WICKRA_DOUBLE_BOLLINGER_UPDATE = h("wickra_double_bollinger_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_DOUBLE_BOLLINGER_WARMUP_PERIOD = h("wickra_double_bollinger_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DOUBLE_BOLLINGER_IS_READY = h("wickra_double_bollinger_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DOUBLE_BOLLINGER_NAME = h("wickra_double_bollinger_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DOUBLE_BOLLINGER_RESET = h("wickra_double_bollinger_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DOUBLE_BOLLINGER_FREE = h("wickra_double_bollinger_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ELDER_RAY_NEW = h("wickra_elder_ray_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_ELDER_RAY_UPDATE = h("wickra_elder_ray_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_ELDER_RAY_WARMUP_PERIOD = h("wickra_elder_ray_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ELDER_RAY_IS_READY = h("wickra_elder_ray_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ELDER_RAY_NAME = h("wickra_elder_ray_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ELDER_RAY_RESET = h("wickra_elder_ray_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ELDER_RAY_FREE = h("wickra_elder_ray_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ELDER_SAFE_ZONE_NEW = h("wickra_elder_safe_zone_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_ELDER_SAFE_ZONE_UPDATE = h("wickra_elder_safe_zone_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_ELDER_SAFE_ZONE_WARMUP_PERIOD = h("wickra_elder_safe_zone_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ELDER_SAFE_ZONE_IS_READY = h("wickra_elder_safe_zone_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ELDER_SAFE_ZONE_NAME = h("wickra_elder_safe_zone_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ELDER_SAFE_ZONE_RESET = h("wickra_elder_safe_zone_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ELDER_SAFE_ZONE_FREE = h("wickra_elder_safe_zone_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EQUIVOLUME_NEW = h("wickra_equivolume_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); + } + + private static void init28() { WICKRA_EQUIVOLUME_UPDATE = h("wickra_equivolume_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_EQUIVOLUME_WARMUP_PERIOD = h("wickra_equivolume_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_EQUIVOLUME_IS_READY = h("wickra_equivolume_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_EQUIVOLUME_NAME = h("wickra_equivolume_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_EQUIVOLUME_RESET = h("wickra_equivolume_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_EQUIVOLUME_FREE = h("wickra_equivolume_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_ARCS_NEW = h("wickra_fib_arcs_new", FunctionDescriptor.of(ADDRESS)); WICKRA_FIB_ARCS_UPDATE = h("wickra_fib_arcs_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_FIB_ARCS_WARMUP_PERIOD = h("wickra_fib_arcs_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FIB_ARCS_IS_READY = h("wickra_fib_arcs_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FIB_ARCS_NAME = h("wickra_fib_arcs_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FIB_ARCS_RESET = h("wickra_fib_arcs_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_ARCS_FREE = h("wickra_fib_arcs_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_CHANNEL_NEW = h("wickra_fib_channel_new", FunctionDescriptor.of(ADDRESS)); WICKRA_FIB_CHANNEL_UPDATE = h("wickra_fib_channel_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_FIB_CHANNEL_WARMUP_PERIOD = h("wickra_fib_channel_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FIB_CHANNEL_IS_READY = h("wickra_fib_channel_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FIB_CHANNEL_NAME = h("wickra_fib_channel_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FIB_CHANNEL_RESET = h("wickra_fib_channel_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_CHANNEL_FREE = h("wickra_fib_channel_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_CONFLUENCE_NEW = h("wickra_fib_confluence_new", FunctionDescriptor.of(ADDRESS)); WICKRA_FIB_CONFLUENCE_UPDATE = h("wickra_fib_confluence_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_FIB_CONFLUENCE_WARMUP_PERIOD = h("wickra_fib_confluence_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FIB_CONFLUENCE_IS_READY = h("wickra_fib_confluence_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FIB_CONFLUENCE_NAME = h("wickra_fib_confluence_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FIB_CONFLUENCE_RESET = h("wickra_fib_confluence_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_CONFLUENCE_FREE = h("wickra_fib_confluence_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_EXTENSION_NEW = h("wickra_fib_extension_new", FunctionDescriptor.of(ADDRESS)); WICKRA_FIB_EXTENSION_UPDATE = h("wickra_fib_extension_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_FIB_EXTENSION_WARMUP_PERIOD = h("wickra_fib_extension_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FIB_EXTENSION_IS_READY = h("wickra_fib_extension_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FIB_EXTENSION_NAME = h("wickra_fib_extension_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FIB_EXTENSION_RESET = h("wickra_fib_extension_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_EXTENSION_FREE = h("wickra_fib_extension_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_FAN_NEW = h("wickra_fib_fan_new", FunctionDescriptor.of(ADDRESS)); WICKRA_FIB_FAN_UPDATE = h("wickra_fib_fan_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_FIB_FAN_WARMUP_PERIOD = h("wickra_fib_fan_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FIB_FAN_IS_READY = h("wickra_fib_fan_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FIB_FAN_NAME = h("wickra_fib_fan_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FIB_FAN_RESET = h("wickra_fib_fan_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_FAN_FREE = h("wickra_fib_fan_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_PROJECTION_NEW = h("wickra_fib_projection_new", FunctionDescriptor.of(ADDRESS)); WICKRA_FIB_PROJECTION_UPDATE = h("wickra_fib_projection_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_FIB_PROJECTION_WARMUP_PERIOD = h("wickra_fib_projection_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FIB_PROJECTION_IS_READY = h("wickra_fib_projection_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FIB_PROJECTION_NAME = h("wickra_fib_projection_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FIB_PROJECTION_RESET = h("wickra_fib_projection_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_PROJECTION_FREE = h("wickra_fib_projection_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_RETRACEMENT_NEW = h("wickra_fib_retracement_new", FunctionDescriptor.of(ADDRESS)); WICKRA_FIB_RETRACEMENT_UPDATE = h("wickra_fib_retracement_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_FIB_RETRACEMENT_WARMUP_PERIOD = h("wickra_fib_retracement_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FIB_RETRACEMENT_IS_READY = h("wickra_fib_retracement_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FIB_RETRACEMENT_NAME = h("wickra_fib_retracement_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FIB_RETRACEMENT_RESET = h("wickra_fib_retracement_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_RETRACEMENT_FREE = h("wickra_fib_retracement_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_TIME_ZONES_NEW = h("wickra_fib_time_zones_new", FunctionDescriptor.of(ADDRESS)); WICKRA_FIB_TIME_ZONES_UPDATE = h("wickra_fib_time_zones_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_FIB_TIME_ZONES_WARMUP_PERIOD = h("wickra_fib_time_zones_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FIB_TIME_ZONES_IS_READY = h("wickra_fib_time_zones_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FIB_TIME_ZONES_NAME = h("wickra_fib_time_zones_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FIB_TIME_ZONES_RESET = h("wickra_fib_time_zones_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIB_TIME_ZONES_FREE = h("wickra_fib_time_zones_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIBONACCI_PIVOTS_NEW = h("wickra_fibonacci_pivots_new", FunctionDescriptor.of(ADDRESS)); WICKRA_FIBONACCI_PIVOTS_UPDATE = h("wickra_fibonacci_pivots_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_FIBONACCI_PIVOTS_WARMUP_PERIOD = h("wickra_fibonacci_pivots_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FIBONACCI_PIVOTS_IS_READY = h("wickra_fibonacci_pivots_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FIBONACCI_PIVOTS_NAME = h("wickra_fibonacci_pivots_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FIBONACCI_PIVOTS_RESET = h("wickra_fibonacci_pivots_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FIBONACCI_PIVOTS_FREE = h("wickra_fibonacci_pivots_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FRACTAL_CHAOS_BANDS_NEW = h("wickra_fractal_chaos_bands_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_FRACTAL_CHAOS_BANDS_UPDATE = h("wickra_fractal_chaos_bands_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_FRACTAL_CHAOS_BANDS_WARMUP_PERIOD = h("wickra_fractal_chaos_bands_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FRACTAL_CHAOS_BANDS_IS_READY = h("wickra_fractal_chaos_bands_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FRACTAL_CHAOS_BANDS_NAME = h("wickra_fractal_chaos_bands_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FRACTAL_CHAOS_BANDS_RESET = h("wickra_fractal_chaos_bands_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FRACTAL_CHAOS_BANDS_FREE = h("wickra_fractal_chaos_bands_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GATOR_OSCILLATOR_NEW = h("wickra_gator_oscillator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); WICKRA_GATOR_OSCILLATOR_UPDATE = h("wickra_gator_oscillator_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_GATOR_OSCILLATOR_WARMUP_PERIOD = h("wickra_gator_oscillator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_GATOR_OSCILLATOR_IS_READY = h("wickra_gator_oscillator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); - } - - private static void init25() { + WICKRA_GATOR_OSCILLATOR_NAME = h("wickra_gator_oscillator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_GATOR_OSCILLATOR_RESET = h("wickra_gator_oscillator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GATOR_OSCILLATOR_FREE = h("wickra_gator_oscillator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GOLDEN_POCKET_NEW = h("wickra_golden_pocket_new", FunctionDescriptor.of(ADDRESS)); WICKRA_GOLDEN_POCKET_UPDATE = h("wickra_golden_pocket_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_GOLDEN_POCKET_WARMUP_PERIOD = h("wickra_golden_pocket_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_GOLDEN_POCKET_IS_READY = h("wickra_golden_pocket_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_GOLDEN_POCKET_NAME = h("wickra_golden_pocket_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_GOLDEN_POCKET_RESET = h("wickra_golden_pocket_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_GOLDEN_POCKET_FREE = h("wickra_golden_pocket_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HEIKIN_ASHI_NEW = h("wickra_heikin_ashi_new", FunctionDescriptor.of(ADDRESS)); WICKRA_HEIKIN_ASHI_UPDATE = h("wickra_heikin_ashi_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_HEIKIN_ASHI_WARMUP_PERIOD = h("wickra_heikin_ashi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HEIKIN_ASHI_IS_READY = h("wickra_heikin_ashi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HEIKIN_ASHI_NAME = h("wickra_heikin_ashi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HEIKIN_ASHI_RESET = h("wickra_heikin_ashi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HEIKIN_ASHI_FREE = h("wickra_heikin_ashi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIGH_LOW_VOLUME_NODES_NEW = h("wickra_high_low_volume_nodes_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_HIGH_LOW_VOLUME_NODES_UPDATE = h("wickra_high_low_volume_nodes_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_HIGH_LOW_VOLUME_NODES_WARMUP_PERIOD = h("wickra_high_low_volume_nodes_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HIGH_LOW_VOLUME_NODES_IS_READY = h("wickra_high_low_volume_nodes_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HIGH_LOW_VOLUME_NODES_NAME = h("wickra_high_low_volume_nodes_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HIGH_LOW_VOLUME_NODES_RESET = h("wickra_high_low_volume_nodes_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HIGH_LOW_VOLUME_NODES_FREE = h("wickra_high_low_volume_nodes_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HT_PHASOR_NEW = h("wickra_ht_phasor_new", FunctionDescriptor.of(ADDRESS)); WICKRA_HT_PHASOR_UPDATE = h("wickra_ht_phasor_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_HT_PHASOR_WARMUP_PERIOD = h("wickra_ht_phasor_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HT_PHASOR_IS_READY = h("wickra_ht_phasor_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HT_PHASOR_NAME = h("wickra_ht_phasor_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HT_PHASOR_RESET = h("wickra_ht_phasor_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HT_PHASOR_FREE = h("wickra_ht_phasor_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HURST_CHANNEL_NEW = h("wickra_hurst_channel_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_HURST_CHANNEL_UPDATE = h("wickra_hurst_channel_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_HURST_CHANNEL_WARMUP_PERIOD = h("wickra_hurst_channel_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_HURST_CHANNEL_IS_READY = h("wickra_hurst_channel_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_HURST_CHANNEL_NAME = h("wickra_hurst_channel_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_HURST_CHANNEL_RESET = h("wickra_hurst_channel_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_HURST_CHANNEL_FREE = h("wickra_hurst_channel_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ICHIMOKU_NEW = h("wickra_ichimoku_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); WICKRA_ICHIMOKU_UPDATE = h("wickra_ichimoku_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); + } + + private static void init29() { WICKRA_ICHIMOKU_WARMUP_PERIOD = h("wickra_ichimoku_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ICHIMOKU_IS_READY = h("wickra_ichimoku_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ICHIMOKU_NAME = h("wickra_ichimoku_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ICHIMOKU_RESET = h("wickra_ichimoku_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ICHIMOKU_FREE = h("wickra_ichimoku_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INITIAL_BALANCE_NEW = h("wickra_initial_balance_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_INITIAL_BALANCE_UPDATE = h("wickra_initial_balance_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_INITIAL_BALANCE_WARMUP_PERIOD = h("wickra_initial_balance_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_INITIAL_BALANCE_IS_READY = h("wickra_initial_balance_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_INITIAL_BALANCE_NAME = h("wickra_initial_balance_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_INITIAL_BALANCE_RESET = h("wickra_initial_balance_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INITIAL_BALANCE_FREE = h("wickra_initial_balance_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KALMAN_HEDGE_RATIO_NEW = h("wickra_kalman_hedge_ratio_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE)); WICKRA_KALMAN_HEDGE_RATIO_UPDATE = h("wickra_kalman_hedge_ratio_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, ADDRESS)); WICKRA_KALMAN_HEDGE_RATIO_WARMUP_PERIOD = h("wickra_kalman_hedge_ratio_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KALMAN_HEDGE_RATIO_IS_READY = h("wickra_kalman_hedge_ratio_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KALMAN_HEDGE_RATIO_NAME = h("wickra_kalman_hedge_ratio_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KALMAN_HEDGE_RATIO_RESET = h("wickra_kalman_hedge_ratio_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KALMAN_HEDGE_RATIO_FREE = h("wickra_kalman_hedge_ratio_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KASE_DEV_STOP_NEW = h("wickra_kase_dev_stop_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_KASE_DEV_STOP_UPDATE = h("wickra_kase_dev_stop_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_KASE_DEV_STOP_WARMUP_PERIOD = h("wickra_kase_dev_stop_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KASE_DEV_STOP_IS_READY = h("wickra_kase_dev_stop_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KASE_DEV_STOP_NAME = h("wickra_kase_dev_stop_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KASE_DEV_STOP_RESET = h("wickra_kase_dev_stop_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KASE_DEV_STOP_FREE = h("wickra_kase_dev_stop_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KASE_PERMISSION_STOCHASTIC_NEW = h("wickra_kase_permission_stochastic_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_KASE_PERMISSION_STOCHASTIC_UPDATE = h("wickra_kase_permission_stochastic_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_KASE_PERMISSION_STOCHASTIC_WARMUP_PERIOD = h("wickra_kase_permission_stochastic_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KASE_PERMISSION_STOCHASTIC_IS_READY = h("wickra_kase_permission_stochastic_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KASE_PERMISSION_STOCHASTIC_NAME = h("wickra_kase_permission_stochastic_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KASE_PERMISSION_STOCHASTIC_RESET = h("wickra_kase_permission_stochastic_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KASE_PERMISSION_STOCHASTIC_FREE = h("wickra_kase_permission_stochastic_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KELTNER_NEW = h("wickra_keltner_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_DOUBLE)); WICKRA_KELTNER_UPDATE = h("wickra_keltner_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_KELTNER_WARMUP_PERIOD = h("wickra_keltner_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KELTNER_IS_READY = h("wickra_keltner_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KELTNER_NAME = h("wickra_keltner_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KELTNER_RESET = h("wickra_keltner_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KELTNER_FREE = h("wickra_keltner_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KST_NEW = h("wickra_kst_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); WICKRA_KST_UPDATE = h("wickra_kst_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_KST_WARMUP_PERIOD = h("wickra_kst_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_KST_IS_READY = h("wickra_kst_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_KST_NAME = h("wickra_kst_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KST_RESET = h("wickra_kst_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KST_FREE = h("wickra_kst_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LEAD_LAG_CROSS_CORRELATION_NEW = h("wickra_lead_lag_cross_correlation_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_LEAD_LAG_CROSS_CORRELATION_UPDATE = h("wickra_lead_lag_cross_correlation_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, ADDRESS)); WICKRA_LEAD_LAG_CROSS_CORRELATION_WARMUP_PERIOD = h("wickra_lead_lag_cross_correlation_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_LEAD_LAG_CROSS_CORRELATION_IS_READY = h("wickra_lead_lag_cross_correlation_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LEAD_LAG_CROSS_CORRELATION_NAME = h("wickra_lead_lag_cross_correlation_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LEAD_LAG_CROSS_CORRELATION_RESET = h("wickra_lead_lag_cross_correlation_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LEAD_LAG_CROSS_CORRELATION_FREE = h("wickra_lead_lag_cross_correlation_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LIN_REG_CHANNEL_NEW = h("wickra_lin_reg_channel_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_LIN_REG_CHANNEL_UPDATE = h("wickra_lin_reg_channel_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_LIN_REG_CHANNEL_WARMUP_PERIOD = h("wickra_lin_reg_channel_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_LIN_REG_CHANNEL_IS_READY = h("wickra_lin_reg_channel_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LIN_REG_CHANNEL_NAME = h("wickra_lin_reg_channel_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LIN_REG_CHANNEL_RESET = h("wickra_lin_reg_channel_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LIN_REG_CHANNEL_FREE = h("wickra_lin_reg_channel_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LIQUIDATION_FEATURES_NEW = h("wickra_liquidation_features_new", FunctionDescriptor.of(ADDRESS)); WICKRA_LIQUIDATION_FEATURES_UPDATE = h("wickra_liquidation_features_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_LIQUIDATION_FEATURES_WARMUP_PERIOD = h("wickra_liquidation_features_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_LIQUIDATION_FEATURES_IS_READY = h("wickra_liquidation_features_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_LIQUIDATION_FEATURES_NAME = h("wickra_liquidation_features_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_LIQUIDATION_FEATURES_RESET = h("wickra_liquidation_features_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_LIQUIDATION_FEATURES_FREE = h("wickra_liquidation_features_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MA_ENVELOPE_NEW = h("wickra_ma_envelope_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_MA_ENVELOPE_UPDATE = h("wickra_ma_envelope_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_MA_ENVELOPE_WARMUP_PERIOD = h("wickra_ma_envelope_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MA_ENVELOPE_IS_READY = h("wickra_ma_envelope_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MA_ENVELOPE_NAME = h("wickra_ma_envelope_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MA_ENVELOPE_RESET = h("wickra_ma_envelope_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MA_ENVELOPE_FREE = h("wickra_ma_envelope_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MACD_INDICATOR_NEW = h("wickra_macd_indicator_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); WICKRA_MACD_INDICATOR_UPDATE = h("wickra_macd_indicator_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_MACD_INDICATOR_WARMUP_PERIOD = h("wickra_macd_indicator_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MACD_INDICATOR_IS_READY = h("wickra_macd_indicator_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MACD_INDICATOR_NAME = h("wickra_macd_indicator_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MACD_INDICATOR_RESET = h("wickra_macd_indicator_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MACD_INDICATOR_FREE = h("wickra_macd_indicator_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MACD_FIX_NEW = h("wickra_macd_fix_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_MACD_FIX_UPDATE = h("wickra_macd_fix_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_MACD_FIX_WARMUP_PERIOD = h("wickra_macd_fix_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MACD_FIX_IS_READY = h("wickra_macd_fix_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MACD_FIX_NAME = h("wickra_macd_fix_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MACD_FIX_RESET = h("wickra_macd_fix_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MACD_FIX_FREE = h("wickra_macd_fix_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MAMA_NEW = h("wickra_mama_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE)); WICKRA_MAMA_UPDATE = h("wickra_mama_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_MAMA_WARMUP_PERIOD = h("wickra_mama_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MAMA_IS_READY = h("wickra_mama_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MAMA_NAME = h("wickra_mama_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MAMA_RESET = h("wickra_mama_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MAMA_FREE = h("wickra_mama_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MEDIAN_CHANNEL_NEW = h("wickra_median_channel_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_MEDIAN_CHANNEL_UPDATE = h("wickra_median_channel_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_MEDIAN_CHANNEL_WARMUP_PERIOD = h("wickra_median_channel_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MEDIAN_CHANNEL_IS_READY = h("wickra_median_channel_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); - } - - private static void init26() { + WICKRA_MEDIAN_CHANNEL_NAME = h("wickra_median_channel_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MEDIAN_CHANNEL_RESET = h("wickra_median_channel_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MEDIAN_CHANNEL_FREE = h("wickra_median_channel_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MODIFIED_MA_STOP_NEW = h("wickra_modified_ma_stop_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_MODIFIED_MA_STOP_UPDATE = h("wickra_modified_ma_stop_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_MODIFIED_MA_STOP_WARMUP_PERIOD = h("wickra_modified_ma_stop_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MODIFIED_MA_STOP_IS_READY = h("wickra_modified_ma_stop_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MODIFIED_MA_STOP_NAME = h("wickra_modified_ma_stop_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MODIFIED_MA_STOP_RESET = h("wickra_modified_ma_stop_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MODIFIED_MA_STOP_FREE = h("wickra_modified_ma_stop_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MURREY_MATH_LINES_NEW = h("wickra_murrey_math_lines_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_MURREY_MATH_LINES_UPDATE = h("wickra_murrey_math_lines_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_MURREY_MATH_LINES_WARMUP_PERIOD = h("wickra_murrey_math_lines_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MURREY_MATH_LINES_IS_READY = h("wickra_murrey_math_lines_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MURREY_MATH_LINES_NAME = h("wickra_murrey_math_lines_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MURREY_MATH_LINES_RESET = h("wickra_murrey_math_lines_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MURREY_MATH_LINES_FREE = h("wickra_murrey_math_lines_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_NRTR_NEW = h("wickra_nrtr_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); WICKRA_NRTR_UPDATE = h("wickra_nrtr_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_NRTR_WARMUP_PERIOD = h("wickra_nrtr_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); + } + + private static void init30() { WICKRA_NRTR_IS_READY = h("wickra_nrtr_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_NRTR_NAME = h("wickra_nrtr_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_NRTR_RESET = h("wickra_nrtr_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_NRTR_FREE = h("wickra_nrtr_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OPENING_RANGE_NEW = h("wickra_opening_range_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_OPENING_RANGE_UPDATE = h("wickra_opening_range_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_OPENING_RANGE_WARMUP_PERIOD = h("wickra_opening_range_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_OPENING_RANGE_IS_READY = h("wickra_opening_range_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_OPENING_RANGE_NAME = h("wickra_opening_range_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_OPENING_RANGE_RESET = h("wickra_opening_range_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OPENING_RANGE_FREE = h("wickra_opening_range_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OVERNIGHT_INTRADAY_RETURN_NEW = h("wickra_overnight_intraday_return_new", FunctionDescriptor.of(ADDRESS, JAVA_INT)); WICKRA_OVERNIGHT_INTRADAY_RETURN_UPDATE = h("wickra_overnight_intraday_return_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_OVERNIGHT_INTRADAY_RETURN_WARMUP_PERIOD = h("wickra_overnight_intraday_return_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_OVERNIGHT_INTRADAY_RETURN_IS_READY = h("wickra_overnight_intraday_return_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_OVERNIGHT_INTRADAY_RETURN_NAME = h("wickra_overnight_intraday_return_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_OVERNIGHT_INTRADAY_RETURN_RESET = h("wickra_overnight_intraday_return_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_OVERNIGHT_INTRADAY_RETURN_FREE = h("wickra_overnight_intraday_return_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PROJECTION_BANDS_NEW = h("wickra_projection_bands_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_PROJECTION_BANDS_UPDATE = h("wickra_projection_bands_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_PROJECTION_BANDS_WARMUP_PERIOD = h("wickra_projection_bands_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_PROJECTION_BANDS_IS_READY = h("wickra_projection_bands_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_PROJECTION_BANDS_NAME = h("wickra_projection_bands_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_PROJECTION_BANDS_RESET = h("wickra_projection_bands_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_PROJECTION_BANDS_FREE = h("wickra_projection_bands_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_QQE_NEW = h("wickra_qqe_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_DOUBLE)); WICKRA_QQE_UPDATE = h("wickra_qqe_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_QQE_WARMUP_PERIOD = h("wickra_qqe_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_QQE_IS_READY = h("wickra_qqe_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_QQE_NAME = h("wickra_qqe_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_QQE_RESET = h("wickra_qqe_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_QQE_FREE = h("wickra_qqe_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_QUARTILE_BANDS_NEW = h("wickra_quartile_bands_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_QUARTILE_BANDS_UPDATE = h("wickra_quartile_bands_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_QUARTILE_BANDS_WARMUP_PERIOD = h("wickra_quartile_bands_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_QUARTILE_BANDS_IS_READY = h("wickra_quartile_bands_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_QUARTILE_BANDS_NAME = h("wickra_quartile_bands_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_QUARTILE_BANDS_RESET = h("wickra_quartile_bands_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_QUARTILE_BANDS_FREE = h("wickra_quartile_bands_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RELATIVE_STRENGTH_AB_NEW = h("wickra_relative_strength_ab_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_RELATIVE_STRENGTH_AB_UPDATE = h("wickra_relative_strength_ab_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, ADDRESS)); WICKRA_RELATIVE_STRENGTH_AB_WARMUP_PERIOD = h("wickra_relative_strength_ab_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_RELATIVE_STRENGTH_AB_IS_READY = h("wickra_relative_strength_ab_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_RELATIVE_STRENGTH_AB_NAME = h("wickra_relative_strength_ab_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RELATIVE_STRENGTH_AB_RESET = h("wickra_relative_strength_ab_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RELATIVE_STRENGTH_AB_FREE = h("wickra_relative_strength_ab_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RWI_NEW = h("wickra_rwi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_RWI_UPDATE = h("wickra_rwi_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_RWI_WARMUP_PERIOD = h("wickra_rwi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_RWI_IS_READY = h("wickra_rwi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_RWI_NAME = h("wickra_rwi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RWI_RESET = h("wickra_rwi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RWI_FREE = h("wickra_rwi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SESSION_HIGH_LOW_NEW = h("wickra_session_high_low_new", FunctionDescriptor.of(ADDRESS, JAVA_INT)); WICKRA_SESSION_HIGH_LOW_UPDATE = h("wickra_session_high_low_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_SESSION_HIGH_LOW_WARMUP_PERIOD = h("wickra_session_high_low_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SESSION_HIGH_LOW_IS_READY = h("wickra_session_high_low_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SESSION_HIGH_LOW_NAME = h("wickra_session_high_low_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SESSION_HIGH_LOW_RESET = h("wickra_session_high_low_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SESSION_HIGH_LOW_FREE = h("wickra_session_high_low_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SESSION_RANGE_NEW = h("wickra_session_range_new", FunctionDescriptor.of(ADDRESS, JAVA_INT)); WICKRA_SESSION_RANGE_UPDATE = h("wickra_session_range_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_SESSION_RANGE_WARMUP_PERIOD = h("wickra_session_range_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SESSION_RANGE_IS_READY = h("wickra_session_range_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SESSION_RANGE_NAME = h("wickra_session_range_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SESSION_RANGE_RESET = h("wickra_session_range_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SESSION_RANGE_FREE = h("wickra_session_range_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SMOOTHED_HEIKIN_ASHI_NEW = h("wickra_smoothed_heikin_ashi_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_SMOOTHED_HEIKIN_ASHI_UPDATE = h("wickra_smoothed_heikin_ashi_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_SMOOTHED_HEIKIN_ASHI_WARMUP_PERIOD = h("wickra_smoothed_heikin_ashi_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SMOOTHED_HEIKIN_ASHI_IS_READY = h("wickra_smoothed_heikin_ashi_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SMOOTHED_HEIKIN_ASHI_NAME = h("wickra_smoothed_heikin_ashi_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SMOOTHED_HEIKIN_ASHI_RESET = h("wickra_smoothed_heikin_ashi_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SMOOTHED_HEIKIN_ASHI_FREE = h("wickra_smoothed_heikin_ashi_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SPREAD_BOLLINGER_BANDS_NEW = h("wickra_spread_bollinger_bands_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_SPREAD_BOLLINGER_BANDS_UPDATE = h("wickra_spread_bollinger_bands_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, ADDRESS)); WICKRA_SPREAD_BOLLINGER_BANDS_WARMUP_PERIOD = h("wickra_spread_bollinger_bands_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SPREAD_BOLLINGER_BANDS_IS_READY = h("wickra_spread_bollinger_bands_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SPREAD_BOLLINGER_BANDS_NAME = h("wickra_spread_bollinger_bands_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SPREAD_BOLLINGER_BANDS_RESET = h("wickra_spread_bollinger_bands_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SPREAD_BOLLINGER_BANDS_FREE = h("wickra_spread_bollinger_bands_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STANDARD_ERROR_BANDS_NEW = h("wickra_standard_error_bands_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_STANDARD_ERROR_BANDS_UPDATE = h("wickra_standard_error_bands_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_STANDARD_ERROR_BANDS_WARMUP_PERIOD = h("wickra_standard_error_bands_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_STANDARD_ERROR_BANDS_IS_READY = h("wickra_standard_error_bands_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_STANDARD_ERROR_BANDS_NAME = h("wickra_standard_error_bands_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_STANDARD_ERROR_BANDS_RESET = h("wickra_standard_error_bands_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STANDARD_ERROR_BANDS_FREE = h("wickra_standard_error_bands_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STARC_BANDS_NEW = h("wickra_starc_bands_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_DOUBLE)); WICKRA_STARC_BANDS_UPDATE = h("wickra_starc_bands_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_STARC_BANDS_WARMUP_PERIOD = h("wickra_starc_bands_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_STARC_BANDS_IS_READY = h("wickra_starc_bands_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_STARC_BANDS_NAME = h("wickra_starc_bands_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_STARC_BANDS_RESET = h("wickra_starc_bands_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STARC_BANDS_FREE = h("wickra_starc_bands_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STOCHASTIC_NEW = h("wickra_stochastic_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_STOCHASTIC_UPDATE = h("wickra_stochastic_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_STOCHASTIC_WARMUP_PERIOD = h("wickra_stochastic_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_STOCHASTIC_IS_READY = h("wickra_stochastic_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_STOCHASTIC_NAME = h("wickra_stochastic_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_STOCHASTIC_RESET = h("wickra_stochastic_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_STOCHASTIC_FREE = h("wickra_stochastic_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SUPER_TREND_NEW = h("wickra_super_trend_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE)); WICKRA_SUPER_TREND_UPDATE = h("wickra_super_trend_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_SUPER_TREND_WARMUP_PERIOD = h("wickra_super_trend_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_SUPER_TREND_IS_READY = h("wickra_super_trend_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_SUPER_TREND_NAME = h("wickra_super_trend_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_SUPER_TREND_RESET = h("wickra_super_trend_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_SUPER_TREND_FREE = h("wickra_super_trend_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_LINES_NEW = h("wickra_td_lines_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_TD_LINES_UPDATE = h("wickra_td_lines_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_TD_LINES_WARMUP_PERIOD = h("wickra_td_lines_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_LINES_IS_READY = h("wickra_td_lines_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_LINES_NAME = h("wickra_td_lines_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_LINES_RESET = h("wickra_td_lines_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_LINES_FREE = h("wickra_td_lines_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_MOVING_AVERAGE_NEW = h("wickra_td_moving_average_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); @@ -6787,188 +7797,222 @@ public final class NativeMethods { WICKRA_TD_MOVING_AVERAGE_IS_READY = h("wickra_td_moving_average_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); } - private static void init27() { + private static void init31() { + WICKRA_TD_MOVING_AVERAGE_NAME = h("wickra_td_moving_average_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_MOVING_AVERAGE_RESET = h("wickra_td_moving_average_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_MOVING_AVERAGE_FREE = h("wickra_td_moving_average_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_RANGE_PROJECTION_NEW = h("wickra_td_range_projection_new", FunctionDescriptor.of(ADDRESS)); WICKRA_TD_RANGE_PROJECTION_UPDATE = h("wickra_td_range_projection_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_TD_RANGE_PROJECTION_WARMUP_PERIOD = h("wickra_td_range_projection_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_RANGE_PROJECTION_IS_READY = h("wickra_td_range_projection_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_RANGE_PROJECTION_NAME = h("wickra_td_range_projection_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_RANGE_PROJECTION_RESET = h("wickra_td_range_projection_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_RANGE_PROJECTION_FREE = h("wickra_td_range_projection_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_RISK_LEVEL_NEW = h("wickra_td_risk_level_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_TD_RISK_LEVEL_UPDATE = h("wickra_td_risk_level_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_TD_RISK_LEVEL_WARMUP_PERIOD = h("wickra_td_risk_level_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_RISK_LEVEL_IS_READY = h("wickra_td_risk_level_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_RISK_LEVEL_NAME = h("wickra_td_risk_level_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_RISK_LEVEL_RESET = h("wickra_td_risk_level_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_RISK_LEVEL_FREE = h("wickra_td_risk_level_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_SEQUENTIAL_NEW = h("wickra_td_sequential_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); WICKRA_TD_SEQUENTIAL_UPDATE = h("wickra_td_sequential_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_TD_SEQUENTIAL_WARMUP_PERIOD = h("wickra_td_sequential_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TD_SEQUENTIAL_IS_READY = h("wickra_td_sequential_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TD_SEQUENTIAL_NAME = h("wickra_td_sequential_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TD_SEQUENTIAL_RESET = h("wickra_td_sequential_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TD_SEQUENTIAL_FREE = h("wickra_td_sequential_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TTM_SQUEEZE_NEW = h("wickra_ttm_squeeze_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_DOUBLE, JAVA_DOUBLE)); WICKRA_TTM_SQUEEZE_UPDATE = h("wickra_ttm_squeeze_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_TTM_SQUEEZE_WARMUP_PERIOD = h("wickra_ttm_squeeze_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TTM_SQUEEZE_IS_READY = h("wickra_ttm_squeeze_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TTM_SQUEEZE_NAME = h("wickra_ttm_squeeze_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TTM_SQUEEZE_RESET = h("wickra_ttm_squeeze_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TTM_SQUEEZE_FREE = h("wickra_ttm_squeeze_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VALUE_AREA_NEW = h("wickra_value_area_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_DOUBLE)); WICKRA_VALUE_AREA_UPDATE = h("wickra_value_area_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_VALUE_AREA_WARMUP_PERIOD = h("wickra_value_area_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VALUE_AREA_IS_READY = h("wickra_value_area_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VALUE_AREA_NAME = h("wickra_value_area_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VALUE_AREA_RESET = h("wickra_value_area_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VALUE_AREA_FREE = h("wickra_value_area_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLATILITY_CONE_NEW = h("wickra_volatility_cone_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_VOLATILITY_CONE_UPDATE = h("wickra_volatility_cone_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_VOLATILITY_CONE_WARMUP_PERIOD = h("wickra_volatility_cone_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VOLATILITY_CONE_IS_READY = h("wickra_volatility_cone_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VOLATILITY_CONE_NAME = h("wickra_volatility_cone_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VOLATILITY_CONE_RESET = h("wickra_volatility_cone_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLATILITY_CONE_FREE = h("wickra_volatility_cone_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_WEIGHTED_MACD_NEW = h("wickra_volume_weighted_macd_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); WICKRA_VOLUME_WEIGHTED_MACD_UPDATE = h("wickra_volume_weighted_macd_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_VOLUME_WEIGHTED_MACD_WARMUP_PERIOD = h("wickra_volume_weighted_macd_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VOLUME_WEIGHTED_MACD_IS_READY = h("wickra_volume_weighted_macd_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VOLUME_WEIGHTED_MACD_NAME = h("wickra_volume_weighted_macd_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VOLUME_WEIGHTED_MACD_RESET = h("wickra_volume_weighted_macd_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_WEIGHTED_MACD_FREE = h("wickra_volume_weighted_macd_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_WEIGHTED_SR_NEW = h("wickra_volume_weighted_sr_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_VOLUME_WEIGHTED_SR_UPDATE = h("wickra_volume_weighted_sr_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_VOLUME_WEIGHTED_SR_WARMUP_PERIOD = h("wickra_volume_weighted_sr_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VOLUME_WEIGHTED_SR_IS_READY = h("wickra_volume_weighted_sr_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VOLUME_WEIGHTED_SR_NAME = h("wickra_volume_weighted_sr_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VOLUME_WEIGHTED_SR_RESET = h("wickra_volume_weighted_sr_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_WEIGHTED_SR_FREE = h("wickra_volume_weighted_sr_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VORTEX_NEW = h("wickra_vortex_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_VORTEX_UPDATE = h("wickra_vortex_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_VORTEX_WARMUP_PERIOD = h("wickra_vortex_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VORTEX_IS_READY = h("wickra_vortex_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VORTEX_NAME = h("wickra_vortex_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VORTEX_RESET = h("wickra_vortex_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VORTEX_FREE = h("wickra_vortex_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VWAP_STD_DEV_BANDS_NEW = h("wickra_vwap_std_dev_bands_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); WICKRA_VWAP_STD_DEV_BANDS_UPDATE = h("wickra_vwap_std_dev_bands_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_VWAP_STD_DEV_BANDS_WARMUP_PERIOD = h("wickra_vwap_std_dev_bands_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VWAP_STD_DEV_BANDS_IS_READY = h("wickra_vwap_std_dev_bands_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VWAP_STD_DEV_BANDS_NAME = h("wickra_vwap_std_dev_bands_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VWAP_STD_DEV_BANDS_RESET = h("wickra_vwap_std_dev_bands_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VWAP_STD_DEV_BANDS_FREE = h("wickra_vwap_std_dev_bands_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WAVE_TREND_NEW = h("wickra_wave_trend_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); WICKRA_WAVE_TREND_UPDATE = h("wickra_wave_trend_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_WAVE_TREND_WARMUP_PERIOD = h("wickra_wave_trend_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_WAVE_TREND_IS_READY = h("wickra_wave_trend_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_WAVE_TREND_NAME = h("wickra_wave_trend_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_WAVE_TREND_RESET = h("wickra_wave_trend_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WAVE_TREND_FREE = h("wickra_wave_trend_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WILLIAMS_FRACTALS_NEW = h("wickra_williams_fractals_new", FunctionDescriptor.of(ADDRESS)); WICKRA_WILLIAMS_FRACTALS_UPDATE = h("wickra_williams_fractals_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_WILLIAMS_FRACTALS_WARMUP_PERIOD = h("wickra_williams_fractals_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_WILLIAMS_FRACTALS_IS_READY = h("wickra_williams_fractals_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_WILLIAMS_FRACTALS_NAME = h("wickra_williams_fractals_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_WILLIAMS_FRACTALS_RESET = h("wickra_williams_fractals_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WILLIAMS_FRACTALS_FREE = h("wickra_williams_fractals_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WOODIE_PIVOTS_NEW = h("wickra_woodie_pivots_new", FunctionDescriptor.of(ADDRESS)); WICKRA_WOODIE_PIVOTS_UPDATE = h("wickra_woodie_pivots_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_WOODIE_PIVOTS_WARMUP_PERIOD = h("wickra_woodie_pivots_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_WOODIE_PIVOTS_IS_READY = h("wickra_woodie_pivots_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_WOODIE_PIVOTS_NAME = h("wickra_woodie_pivots_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_WOODIE_PIVOTS_RESET = h("wickra_woodie_pivots_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_WOODIE_PIVOTS_FREE = h("wickra_woodie_pivots_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ZERO_LAG_MACD_NEW = h("wickra_zero_lag_macd_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG, JAVA_LONG)); WICKRA_ZERO_LAG_MACD_UPDATE = h("wickra_zero_lag_macd_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_ZERO_LAG_MACD_WARMUP_PERIOD = h("wickra_zero_lag_macd_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ZERO_LAG_MACD_IS_READY = h("wickra_zero_lag_macd_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ZERO_LAG_MACD_NAME = h("wickra_zero_lag_macd_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ZERO_LAG_MACD_RESET = h("wickra_zero_lag_macd_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ZERO_LAG_MACD_FREE = h("wickra_zero_lag_macd_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ZIG_ZAG_NEW = h("wickra_zig_zag_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); WICKRA_ZIG_ZAG_UPDATE = h("wickra_zig_zag_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS)); WICKRA_ZIG_ZAG_WARMUP_PERIOD = h("wickra_zig_zag_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_ZIG_ZAG_IS_READY = h("wickra_zig_zag_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_ZIG_ZAG_NAME = h("wickra_zig_zag_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_ZIG_ZAG_RESET = h("wickra_zig_zag_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_ZIG_ZAG_FREE = h("wickra_zig_zag_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DAY_OF_WEEK_PROFILE_NEW = h("wickra_day_of_week_profile_new", FunctionDescriptor.of(ADDRESS, JAVA_INT)); WICKRA_DAY_OF_WEEK_PROFILE_UPDATE = h("wickra_day_of_week_profile_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); WICKRA_DAY_OF_WEEK_PROFILE_WARMUP_PERIOD = h("wickra_day_of_week_profile_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_DAY_OF_WEEK_PROFILE_IS_READY = h("wickra_day_of_week_profile_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_DAY_OF_WEEK_PROFILE_NAME = h("wickra_day_of_week_profile_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DAY_OF_WEEK_PROFILE_RESET = h("wickra_day_of_week_profile_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DAY_OF_WEEK_PROFILE_FREE = h("wickra_day_of_week_profile_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INTRADAY_VOLATILITY_PROFILE_NEW = h("wickra_intraday_volatility_profile_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_INT)); WICKRA_INTRADAY_VOLATILITY_PROFILE_UPDATE = h("wickra_intraday_volatility_profile_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); WICKRA_INTRADAY_VOLATILITY_PROFILE_WARMUP_PERIOD = h("wickra_intraday_volatility_profile_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_INTRADAY_VOLATILITY_PROFILE_IS_READY = h("wickra_intraday_volatility_profile_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_INTRADAY_VOLATILITY_PROFILE_NAME = h("wickra_intraday_volatility_profile_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); + } + + private static void init32() { WICKRA_INTRADAY_VOLATILITY_PROFILE_RESET = h("wickra_intraday_volatility_profile_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_INTRADAY_VOLATILITY_PROFILE_FREE = h("wickra_intraday_volatility_profile_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TIME_OF_DAY_RETURN_PROFILE_NEW = h("wickra_time_of_day_return_profile_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_INT)); WICKRA_TIME_OF_DAY_RETURN_PROFILE_UPDATE = h("wickra_time_of_day_return_profile_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); WICKRA_TIME_OF_DAY_RETURN_PROFILE_WARMUP_PERIOD = h("wickra_time_of_day_return_profile_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TIME_OF_DAY_RETURN_PROFILE_IS_READY = h("wickra_time_of_day_return_profile_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TIME_OF_DAY_RETURN_PROFILE_NAME = h("wickra_time_of_day_return_profile_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TIME_OF_DAY_RETURN_PROFILE_RESET = h("wickra_time_of_day_return_profile_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TIME_OF_DAY_RETURN_PROFILE_FREE = h("wickra_time_of_day_return_profile_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TPO_PROFILE_NEW = h("wickra_tpo_profile_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_TPO_PROFILE_UPDATE = h("wickra_tpo_profile_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_TPO_PROFILE_WARMUP_PERIOD = h("wickra_tpo_profile_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_TPO_PROFILE_IS_READY = h("wickra_tpo_profile_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_TPO_PROFILE_NAME = h("wickra_tpo_profile_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TPO_PROFILE_RESET = h("wickra_tpo_profile_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TPO_PROFILE_FREE = h("wickra_tpo_profile_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_BY_TIME_PROFILE_NEW = h("wickra_volume_by_time_profile_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_INT)); WICKRA_VOLUME_BY_TIME_PROFILE_UPDATE = h("wickra_volume_by_time_profile_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); WICKRA_VOLUME_BY_TIME_PROFILE_WARMUP_PERIOD = h("wickra_volume_by_time_profile_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VOLUME_BY_TIME_PROFILE_IS_READY = h("wickra_volume_by_time_profile_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); - } - - private static void init28() { + WICKRA_VOLUME_BY_TIME_PROFILE_NAME = h("wickra_volume_by_time_profile_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VOLUME_BY_TIME_PROFILE_RESET = h("wickra_volume_by_time_profile_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_BY_TIME_PROFILE_FREE = h("wickra_volume_by_time_profile_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_PROFILE_NEW = h("wickra_volume_profile_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_LONG)); WICKRA_VOLUME_PROFILE_UPDATE = h("wickra_volume_profile_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, ADDRESS, JAVA_LONG)); WICKRA_VOLUME_PROFILE_WARMUP_PERIOD = h("wickra_volume_profile_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_VOLUME_PROFILE_IS_READY = h("wickra_volume_profile_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_VOLUME_PROFILE_NAME = h("wickra_volume_profile_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VOLUME_PROFILE_RESET = h("wickra_volume_profile_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_PROFILE_FREE = h("wickra_volume_profile_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DOLLAR_BARS_NEW = h("wickra_dollar_bars_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); WICKRA_DOLLAR_BARS_UPDATE = h("wickra_dollar_bars_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); + WICKRA_DOLLAR_BARS_NAME = h("wickra_dollar_bars_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_DOLLAR_BARS_RESET = h("wickra_dollar_bars_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_DOLLAR_BARS_FREE = h("wickra_dollar_bars_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_IMBALANCE_BARS_NEW = h("wickra_imbalance_bars_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); WICKRA_IMBALANCE_BARS_UPDATE = h("wickra_imbalance_bars_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); + WICKRA_IMBALANCE_BARS_NAME = h("wickra_imbalance_bars_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_IMBALANCE_BARS_RESET = h("wickra_imbalance_bars_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_IMBALANCE_BARS_FREE = h("wickra_imbalance_bars_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KAGI_BARS_NEW = h("wickra_kagi_bars_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); WICKRA_KAGI_BARS_UPDATE = h("wickra_kagi_bars_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); + WICKRA_KAGI_BARS_NAME = h("wickra_kagi_bars_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_KAGI_BARS_RESET = h("wickra_kagi_bars_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_KAGI_BARS_FREE = h("wickra_kagi_bars_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_POINT_AND_FIGURE_BARS_NEW = h("wickra_point_and_figure_bars_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE, JAVA_LONG)); WICKRA_POINT_AND_FIGURE_BARS_UPDATE = h("wickra_point_and_figure_bars_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); + WICKRA_POINT_AND_FIGURE_BARS_NAME = h("wickra_point_and_figure_bars_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_POINT_AND_FIGURE_BARS_RESET = h("wickra_point_and_figure_bars_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_POINT_AND_FIGURE_BARS_FREE = h("wickra_point_and_figure_bars_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RANGE_BARS_NEW = h("wickra_range_bars_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); WICKRA_RANGE_BARS_UPDATE = h("wickra_range_bars_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); + WICKRA_RANGE_BARS_NAME = h("wickra_range_bars_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RANGE_BARS_RESET = h("wickra_range_bars_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RANGE_BARS_FREE = h("wickra_range_bars_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RENKO_BARS_NEW = h("wickra_renko_bars_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); WICKRA_RENKO_BARS_UPDATE = h("wickra_renko_bars_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); + WICKRA_RENKO_BARS_NAME = h("wickra_renko_bars_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RENKO_BARS_RESET = h("wickra_renko_bars_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RENKO_BARS_FREE = h("wickra_renko_bars_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RUN_BARS_NEW = h("wickra_run_bars_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_RUN_BARS_UPDATE = h("wickra_run_bars_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); + WICKRA_RUN_BARS_NAME = h("wickra_run_bars_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_RUN_BARS_RESET = h("wickra_run_bars_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_RUN_BARS_FREE = h("wickra_run_bars_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_LINE_BREAK_BARS_NEW = h("wickra_three_line_break_bars_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_THREE_LINE_BREAK_BARS_UPDATE = h("wickra_three_line_break_bars_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); + WICKRA_THREE_LINE_BREAK_BARS_NAME = h("wickra_three_line_break_bars_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_THREE_LINE_BREAK_BARS_RESET = h("wickra_three_line_break_bars_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_THREE_LINE_BREAK_BARS_FREE = h("wickra_three_line_break_bars_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TICK_BARS_NEW = h("wickra_tick_bars_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG)); WICKRA_TICK_BARS_UPDATE = h("wickra_tick_bars_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); + WICKRA_TICK_BARS_NAME = h("wickra_tick_bars_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_TICK_BARS_RESET = h("wickra_tick_bars_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_TICK_BARS_FREE = h("wickra_tick_bars_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_BARS_NEW = h("wickra_volume_bars_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); WICKRA_VOLUME_BARS_UPDATE = h("wickra_volume_bars_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_LONG, ADDRESS, JAVA_LONG)); + WICKRA_VOLUME_BARS_NAME = h("wickra_volume_bars_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_VOLUME_BARS_RESET = h("wickra_volume_bars_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_VOLUME_BARS_FREE = h("wickra_volume_bars_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MACD_EXT_NEW = h("wickra_macd_ext_new", FunctionDescriptor.of(ADDRESS, JAVA_LONG, JAVA_BYTE, JAVA_LONG, JAVA_BYTE, JAVA_LONG, JAVA_BYTE)); WICKRA_MACD_EXT_UPDATE = h("wickra_macd_ext_update", FunctionDescriptor.of(JAVA_BYTE, ADDRESS, JAVA_DOUBLE, ADDRESS)); WICKRA_MACD_EXT_WARMUP_PERIOD = h("wickra_macd_ext_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_MACD_EXT_IS_READY = h("wickra_macd_ext_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_MACD_EXT_NAME = h("wickra_macd_ext_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_MACD_EXT_RESET = h("wickra_macd_ext_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_MACD_EXT_FREE = h("wickra_macd_ext_free", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FOOTPRINT_NEW = h("wickra_footprint_new", FunctionDescriptor.of(ADDRESS, JAVA_DOUBLE)); WICKRA_FOOTPRINT_UPDATE = h("wickra_footprint_update", FunctionDescriptor.of(JAVA_LONG, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_BYTE, JAVA_LONG, ADDRESS, JAVA_LONG)); WICKRA_FOOTPRINT_WARMUP_PERIOD = h("wickra_footprint_warmup_period", FunctionDescriptor.of(JAVA_LONG, ADDRESS)); WICKRA_FOOTPRINT_IS_READY = h("wickra_footprint_is_ready", FunctionDescriptor.of(JAVA_BYTE, ADDRESS)); + WICKRA_FOOTPRINT_NAME = h("wickra_footprint_name", FunctionDescriptor.of(ADDRESS, ADDRESS)); WICKRA_FOOTPRINT_RESET = h("wickra_footprint_reset", FunctionDescriptor.ofVoid(ADDRESS)); WICKRA_FOOTPRINT_FREE = h("wickra_footprint_free", FunctionDescriptor.ofVoid(ADDRESS)); } diff --git a/bindings/java/src/test/java/org/wickra/GoldenAllTest.java b/bindings/java/src/test/java/org/wickra/GoldenAllTest.java index fa395c52..490165bf 100644 --- a/bindings/java/src/test/java/org/wickra/GoldenAllTest.java +++ b/bindings/java/src/test/java/org/wickra/GoldenAllTest.java @@ -546,6 +546,524 @@ class GoldenAllTest { new Spec("Zlema", "scalar_f64", new double[]{14.0}, 0), }; + private static final java.util.Map NAMES = new java.util.HashMap<>(); + static { + NAMES.put("AbandonedBaby", "AbandonedBaby"); + NAMES.put("Abcd", "Abcd"); + NAMES.put("AbsoluteBreadthIndex", "AbsoluteBreadthIndex"); + NAMES.put("AccelerationBands", "AccelerationBands"); + NAMES.put("AcceleratorOscillator", "AcceleratorOscillator"); + NAMES.put("AdOscillator", "ADOSC"); + NAMES.put("AdVolumeLine", "AdVolumeLine"); + NAMES.put("AdaptiveCci", "AdaptiveCci"); + NAMES.put("AdaptiveCycle", "AdaptiveCycle"); + NAMES.put("AdaptiveLaguerreFilter", "AdaptiveLaguerre"); + NAMES.put("AdaptiveRsi", "AdaptiveRsi"); + NAMES.put("Adl", "ADL"); + NAMES.put("AdvanceBlock", "AdvanceBlock"); + NAMES.put("AdvanceDecline", "AdvanceDecline"); + NAMES.put("AdvanceDeclineRatio", "AdvanceDeclineRatio"); + NAMES.put("Adx", "ADX"); + NAMES.put("Adxr", "ADXR"); + NAMES.put("Alligator", "Alligator"); + NAMES.put("Alma", "ALMA"); + NAMES.put("Alpha", "Alpha"); + NAMES.put("AmihudIlliquidity", "AmihudIlliquidity"); + NAMES.put("AnchoredRsi", "AnchoredRSI"); + NAMES.put("AnchoredVwap", "AnchoredVWAP"); + NAMES.put("AndrewsPitchfork", "AndrewsPitchfork"); + NAMES.put("Apo", "APO"); + NAMES.put("Aroon", "Aroon"); + NAMES.put("AroonOscillator", "AroonOscillator"); + NAMES.put("Atr", "ATR"); + NAMES.put("AtrBands", "AtrBands"); + NAMES.put("AtrRatchet", "AtrRatchet"); + NAMES.put("AtrTrailingStop", "AtrTrailingStop"); + NAMES.put("AutoFib", "AutoFib"); + NAMES.put("Autocorrelation", "Autocorrelation"); + NAMES.put("AutocorrelationPeriodogram", "AutocorrelationPeriodogram"); + NAMES.put("AverageDailyRange", "AverageDailyRange"); + NAMES.put("AverageDrawdown", "AverageDrawdown"); + NAMES.put("AvgPrice", "AVGPRICE"); + NAMES.put("AwesomeOscillator", "AwesomeOscillator"); + NAMES.put("AwesomeOscillatorHistogram", "AwesomeOscillatorHistogram"); + NAMES.put("BalanceOfPower", "BalanceOfPower"); + NAMES.put("BandpassFilter", "BandpassFilter"); + NAMES.put("Bat", "Bat"); + NAMES.put("BeltHold", "BeltHold"); + NAMES.put("Beta", "Beta"); + NAMES.put("BetaNeutralSpread", "BetaNeutralSpread"); + NAMES.put("BetterVolume", "BetterVolume"); + NAMES.put("BipowerVariation", "BipowerVariation"); + NAMES.put("BodySizePct", "BodySizePct"); + NAMES.put("BollingerBands", "BollingerBands"); + NAMES.put("BollingerBandwidth", "BollingerBandwidth"); + NAMES.put("BomarBands", "BomarBands"); + NAMES.put("BreadthThrust", "BreadthThrust"); + NAMES.put("Breakaway", "Breakaway"); + NAMES.put("BullishPercentIndex", "BullishPercentIndex"); + NAMES.put("BurkeRatio", "BurkeRatio"); + NAMES.put("Butterfly", "Butterfly"); + NAMES.put("CalendarSpread", "CalendarSpread"); + NAMES.put("CalmarRatio", "CalmarRatio"); + NAMES.put("Camarilla", "Camarilla"); + NAMES.put("CandleVolume", "CandleVolume"); + NAMES.put("Cci", "CCI"); + NAMES.put("CenterOfGravity", "CenterOfGravity"); + NAMES.put("CentralPivotRange", "CentralPivotRange"); + NAMES.put("Cfo", "CFO"); + NAMES.put("ChaikinMoneyFlow", "CMF"); + NAMES.put("ChaikinOscillator", "ChaikinOscillator"); + NAMES.put("ChaikinVolatility", "ChaikinVolatility"); + NAMES.put("ChandeKrollStop", "ChandeKrollStop"); + NAMES.put("ChandelierExit", "ChandelierExit"); + NAMES.put("ChoppinessIndex", "ChoppinessIndex"); + NAMES.put("ClassicPivots", "ClassicPivots"); + NAMES.put("CloseVsOpen", "CloseVsOpen"); + NAMES.put("ClosingMarubozu", "ClosingMarubozu"); + NAMES.put("Cmo", "CMO"); + NAMES.put("CoefficientOfVariation", "CoefficientOfVariation"); + NAMES.put("Cointegration", "Cointegration"); + NAMES.put("CommonSenseRatio", "CommonSenseRatio"); + NAMES.put("CompositeProfile", "CompositeProfile"); + NAMES.put("ConcealingBabySwallow", "ConcealingBabySwallow"); + NAMES.put("ConditionalValueAtRisk", "ConditionalValueAtRisk"); + NAMES.put("ConnorsRsi", "ConnorsRSI"); + NAMES.put("Coppock", "Coppock"); + NAMES.put("CorrelationTrendIndicator", "CorrelationTrendIndicator"); + NAMES.put("Counterattack", "Counterattack"); + NAMES.put("Crab", "Crab"); + NAMES.put("CumulativeVolumeDelta", "CumulativeVolumeDelta"); + NAMES.put("CumulativeVolumeIndex", "CumulativeVolumeIndex"); + NAMES.put("CupAndHandle", "CupAndHandle"); + NAMES.put("CyberneticCycle", "CyberneticCycle"); + NAMES.put("Cypher", "Cypher"); + NAMES.put("DayOfWeekProfile", "DayOfWeekProfile"); + NAMES.put("Decycler", "Decycler"); + NAMES.put("DecyclerOscillator", "DecyclerOscillator"); + NAMES.put("Dema", "DEMA"); + NAMES.put("DemandIndex", "DemandIndex"); + NAMES.put("DemarkPivots", "DemarkPivots"); + NAMES.put("DepthSlope", "DepthSlope"); + NAMES.put("DerivativeOscillator", "DerivativeOscillator"); + NAMES.put("DetrendedStdDev", "DetrendedStdDev"); + NAMES.put("DisparityIndex", "DisparityIndex"); + NAMES.put("DistanceSsd", "DistanceSsd"); + NAMES.put("Doji", "Doji"); + NAMES.put("DojiStar", "DojiStar"); + NAMES.put("DollarBars", "DollarBars"); + NAMES.put("Donchian", "DonchianChannels"); + NAMES.put("DonchianStop", "DonchianStop"); + NAMES.put("DoubleBollinger", "DoubleBollinger"); + NAMES.put("DoubleTopBottom", "DoubleTopBottom"); + NAMES.put("DownsideGapThreeMethods", "DownsideGapThreeMethods"); + NAMES.put("Dpo", "DPO"); + NAMES.put("DragonflyDoji", "DragonflyDoji"); + NAMES.put("DrawdownDuration", "DrawdownDuration"); + NAMES.put("DumplingTop", "DumplingTop"); + NAMES.put("Dx", "DX"); + NAMES.put("DynamicMomentumIndex", "DynamicMomentumIndex"); + NAMES.put("EaseOfMovement", "EaseOfMovement"); + NAMES.put("EffectiveSpread", "EffectiveSpread"); + NAMES.put("EhlersStochastic", "EhlersStochastic"); + NAMES.put("Ehma", "EHMA"); + NAMES.put("ElderImpulse", "ElderImpulse"); + NAMES.put("ElderRay", "ElderRay"); + NAMES.put("ElderSafeZone", "ElderSafeZone"); + NAMES.put("Ema", "EMA"); + NAMES.put("EmpiricalModeDecomposition", "EmpiricalModeDecomposition"); + NAMES.put("Engulfing", "Engulfing"); + NAMES.put("Equivolume", "Equivolume"); + NAMES.put("EstimatedLeverageRatio", "EstimatedLeverageRatio"); + NAMES.put("EvenBetterSinewave", "EvenBetterSinewave"); + NAMES.put("EveningDojiStar", "EveningDojiStar"); + NAMES.put("Evwma", "EVWMA"); + NAMES.put("EwmaVolatility", "EwmaVolatility"); + NAMES.put("Expectancy", "Expectancy"); + NAMES.put("FallingThreeMethods", "FallingThreeMethods"); + NAMES.put("Fama", "FAMA"); + NAMES.put("FibArcs", "FibArcs"); + NAMES.put("FibChannel", "FibChannel"); + NAMES.put("FibConfluence", "FibConfluence"); + NAMES.put("FibExtension", "FibExtension"); + NAMES.put("FibFan", "FibFan"); + NAMES.put("FibProjection", "FibProjection"); + NAMES.put("FibRetracement", "FibRetracement"); + NAMES.put("FibTimeZones", "FibTimeZones"); + NAMES.put("FibonacciPivots", "FibonacciPivots"); + NAMES.put("FisherRsi", "FisherRSI"); + NAMES.put("FisherTransform", "FisherTransform"); + NAMES.put("FlagPennant", "FlagPennant"); + NAMES.put("Footprint", "Footprint"); + NAMES.put("ForceIndex", "ForceIndex"); + NAMES.put("FractalChaosBands", "FractalChaosBands"); + NAMES.put("Frama", "FRAMA"); + NAMES.put("FryPanBottom", "FryPanBottom"); + NAMES.put("FundingBasis", "FundingBasis"); + NAMES.put("FundingImpliedApr", "FundingImpliedApr"); + NAMES.put("FundingRate", "FundingRate"); + NAMES.put("FundingRateMean", "FundingRateMean"); + NAMES.put("FundingRateZScore", "FundingRateZScore"); + NAMES.put("GainLossRatio", "GainLossRatio"); + NAMES.put("GainToPainRatio", "GainToPainRatio"); + NAMES.put("GapSideBySideWhite", "GapSideBySideWhite"); + NAMES.put("Garch11", "Garch11"); + NAMES.put("GarmanKlassVolatility", "GarmanKlassVolatility"); + NAMES.put("Gartley", "Gartley"); + NAMES.put("GatorOscillator", "GatorOscillator"); + NAMES.put("GeneralizedDema", "GD"); + NAMES.put("GeometricMa", "GMA"); + NAMES.put("GoldenPocket", "GoldenPocket"); + NAMES.put("GrangerCausality", "GrangerCausality"); + NAMES.put("GravestoneDoji", "GravestoneDoji"); + NAMES.put("Hammer", "Hammer"); + NAMES.put("HangingMan", "HangingMan"); + NAMES.put("Harami", "Harami"); + NAMES.put("HaramiCross", "HaramiCross"); + NAMES.put("HasbrouckInformationShare", "HasbrouckInformationShare"); + NAMES.put("HeadAndShoulders", "HeadAndShoulders"); + NAMES.put("HeikinAshi", "HeikinAshi"); + NAMES.put("HeikinAshiOscillator", "HeikinAshiOscillator"); + NAMES.put("HiLoActivator", "HiLoActivator"); + NAMES.put("HighLowIndex", "HighLowIndex"); + NAMES.put("HighLowRange", "HighLowRange"); + NAMES.put("HighLowVolumeNodes", "HighLowVolumeNodes"); + NAMES.put("HighWave", "HighWave"); + NAMES.put("HighpassFilter", "HighpassFilter"); + NAMES.put("Hikkake", "Hikkake"); + NAMES.put("HikkakeModified", "HikkakeModified"); + NAMES.put("HilbertDominantCycle", "HilbertDominantCycle"); + NAMES.put("HistoricalVolatility", "HistoricalVolatility"); + NAMES.put("Hma", "HMA"); + NAMES.put("HoltWinters", "HoltWinters"); + NAMES.put("HomingPigeon", "HomingPigeon"); + NAMES.put("HtDcPhase", "HT_DCPHASE"); + NAMES.put("HtPhasor", "HT_PHASOR"); + NAMES.put("HtTrendMode", "HT_TRENDMODE"); + NAMES.put("HurstChannel", "HurstChannel"); + NAMES.put("HurstExponent", "HurstExponent"); + NAMES.put("Ichimoku", "Ichimoku"); + NAMES.put("IdenticalThreeCrows", "IdenticalThreeCrows"); + NAMES.put("ImbalanceBars", "ImbalanceBars"); + NAMES.put("InNeck", "InNeck"); + NAMES.put("Inertia", "Inertia"); + NAMES.put("InformationRatio", "InformationRatio"); + NAMES.put("InitialBalance", "InitialBalance"); + NAMES.put("InstantaneousTrendline", "InstantaneousTrendline"); + NAMES.put("IntradayIntensity", "IntradayIntensity"); + NAMES.put("IntradayMomentumIndex", "IMI"); + NAMES.put("IntradayVolatilityProfile", "IntradayVolatilityProfile"); + NAMES.put("InverseFisherTransform", "InverseFisherTransform"); + NAMES.put("InvertedHammer", "InvertedHammer"); + NAMES.put("JarqueBera", "JarqueBera"); + NAMES.put("Jma", "JMA"); + NAMES.put("JumpIndicator", "JumpIndicator"); + NAMES.put("KRatio", "KRatio"); + NAMES.put("KagiBars", "KagiBars"); + NAMES.put("KalmanHedgeRatio", "KalmanHedgeRatio"); + NAMES.put("Kama", "KAMA"); + NAMES.put("KaseDevStop", "KaseDevStop"); + NAMES.put("KasePermissionStochastic", "KasePermissionStochastic"); + NAMES.put("KellyCriterion", "KellyCriterion"); + NAMES.put("Keltner", "KeltnerChannels"); + NAMES.put("KendallTau", "KendallTau"); + NAMES.put("Kicking", "Kicking"); + NAMES.put("KickingByLength", "KickingByLength"); + NAMES.put("Kst", "KST"); + NAMES.put("Kurtosis", "Kurtosis"); + NAMES.put("Kvo", "KVO"); + NAMES.put("KylesLambda", "KylesLambda"); + NAMES.put("LadderBottom", "LadderBottom"); + NAMES.put("LaguerreRsi", "LaguerreRSI"); + NAMES.put("LeadLagCrossCorrelation", "LeadLagCrossCorrelation"); + NAMES.put("LinRegAngle", "LinRegAngle"); + NAMES.put("LinRegChannel", "LinRegChannel"); + NAMES.put("LinRegIntercept", "LINEARREG_INTERCEPT"); + NAMES.put("LinRegSlope", "LinRegSlope"); + NAMES.put("LinearRegression", "LinearRegression"); + NAMES.put("LiquidationFeatures", "LiquidationFeatures"); + NAMES.put("LogReturn", "LogReturn"); + NAMES.put("LongLeggedDoji", "LongLeggedDoji"); + NAMES.put("LongLine", "LongLine"); + NAMES.put("LongShortRatio", "LongShortRatio"); + NAMES.put("M2Measure", "M2Measure"); + NAMES.put("MaEnvelope", "MaEnvelope"); + NAMES.put("MacdExt", "MACDEXT"); + NAMES.put("MacdFix", "MACDFIX"); + NAMES.put("MacdHistogram", "MacdHistogram"); + NAMES.put("MacdIndicator", "MACD"); + NAMES.put("Mama", "MAMA"); + NAMES.put("MarketFacilitationIndex", "MarketFacilitationIndex"); + NAMES.put("MartinRatio", "MartinRatio"); + NAMES.put("Marubozu", "Marubozu"); + NAMES.put("MassIndex", "MassIndex"); + NAMES.put("MatHold", "MatHold"); + NAMES.put("MatchingLow", "MatchingLow"); + NAMES.put("MaxDrawdown", "MaxDrawdown"); + NAMES.put("McClellanOscillator", "McClellanOscillator"); + NAMES.put("McClellanSummationIndex", "McClellanSummationIndex"); + NAMES.put("McGinleyDynamic", "McGinleyDynamic"); + NAMES.put("MedianAbsoluteDeviation", "MedianAbsoluteDeviation"); + NAMES.put("MedianChannel", "MedianChannel"); + NAMES.put("MedianMa", "MedianMA"); + NAMES.put("MedianPrice", "MedianPrice"); + NAMES.put("Mfi", "MFI"); + NAMES.put("Microprice", "Microprice"); + NAMES.put("MidPoint", "MIDPOINT"); + NAMES.put("MidPrice", "MIDPRICE"); + NAMES.put("MinusDi", "MINUS_DI"); + NAMES.put("MinusDm", "MINUS_DM"); + NAMES.put("ModifiedMaStop", "ModifiedMaStop"); + NAMES.put("Mom", "MOM"); + NAMES.put("MorningDojiStar", "MorningDojiStar"); + NAMES.put("MorningEveningStar", "MorningEveningStar"); + NAMES.put("MurreyMathLines", "MurreyMathLines"); + NAMES.put("NakedPoc", "NakedPoc"); + NAMES.put("Natr", "NATR"); + NAMES.put("NewHighsNewLows", "NewHighsNewLows"); + NAMES.put("NewPriceLines", "NewPriceLines"); + NAMES.put("Nrtr", "Nrtr"); + NAMES.put("Nvi", "NVI"); + NAMES.put("OIPriceDivergence", "OIPriceDivergence"); + NAMES.put("OIWeighted", "OIWeighted"); + NAMES.put("Obv", "OBV"); + NAMES.put("OiToVolumeRatio", "OiToVolumeRatio"); + NAMES.put("OmegaRatio", "OmegaRatio"); + NAMES.put("OnNeck", "OnNeck"); + NAMES.put("OpenInterestDelta", "OpenInterestDelta"); + NAMES.put("OpenInterestMomentum", "OpenInterestMomentum"); + NAMES.put("OpeningMarubozu", "OpeningMarubozu"); + NAMES.put("OpeningRange", "OpeningRange"); + NAMES.put("OrderBookImbalanceFull", "OrderBookImbalanceFull"); + NAMES.put("OrderBookImbalanceTop1", "OrderBookImbalanceTop1"); + NAMES.put("OrderBookImbalanceTopN", "OrderBookImbalanceTopN"); + NAMES.put("OrderFlowImbalance", "OrderFlowImbalance"); + NAMES.put("OuHalfLife", "OuHalfLife"); + NAMES.put("OvernightGap", "OvernightGap"); + NAMES.put("OvernightIntradayReturn", "OvernightIntradayReturn"); + NAMES.put("PainIndex", "PainIndex"); + NAMES.put("PairSpreadZScore", "PairSpreadZScore"); + NAMES.put("PairwiseBeta", "PairwiseBeta"); + NAMES.put("ParkinsonVolatility", "ParkinsonVolatility"); + NAMES.put("PearsonCorrelation", "PearsonCorrelation"); + NAMES.put("PercentAboveMa", "PercentAboveMa"); + NAMES.put("PercentB", "PercentB"); + NAMES.put("PercentageTrailingStop", "PercentageTrailingStop"); + NAMES.put("PerpetualPremiumIndex", "PerpetualPremiumIndex"); + NAMES.put("Pgo", "PGO"); + NAMES.put("PiercingDarkCloud", "PiercingDarkCloud"); + NAMES.put("Pin", "PIN"); + NAMES.put("PivotReversal", "PivotReversal"); + NAMES.put("PlusDi", "PLUS_DI"); + NAMES.put("PlusDm", "PLUS_DM"); + NAMES.put("Pmo", "PMO"); + NAMES.put("PointAndFigureBars", "PointAndFigureBars"); + NAMES.put("PolarizedFractalEfficiency", "PolarizedFractalEfficiency"); + NAMES.put("Ppo", "PPO"); + NAMES.put("PpoHistogram", "PpoHistogram"); + NAMES.put("ProfileShape", "ProfileShape"); + NAMES.put("ProfitFactor", "ProfitFactor"); + NAMES.put("ProjectionBands", "ProjectionBands"); + NAMES.put("ProjectionOscillator", "ProjectionOscillator"); + NAMES.put("Psar", "PSAR"); + NAMES.put("Pvi", "PVI"); + NAMES.put("Qqe", "QQE"); + NAMES.put("Qstick", "Qstick"); + NAMES.put("QuartileBands", "QuartileBands"); + NAMES.put("QuotedSpread", "QuotedSpread"); + NAMES.put("RSquared", "RSquared"); + NAMES.put("RangeBars", "RangeBars"); + NAMES.put("RealizedSpread", "RealizedSpread"); + NAMES.put("RealizedVolatility", "RealizedVolatility"); + NAMES.put("RecoveryFactor", "RecoveryFactor"); + NAMES.put("RectangleRange", "RectangleRange"); + NAMES.put("Reflex", "Reflex"); + NAMES.put("RegimeLabel", "RegimeLabel"); + NAMES.put("RelativeStrengthAB", "RelativeStrengthAB"); + NAMES.put("RenkoBars", "RenkoBars"); + NAMES.put("RenkoTrailingStop", "RenkoTrailingStop"); + NAMES.put("RickshawMan", "RickshawMan"); + NAMES.put("RisingThreeMethods", "RisingThreeMethods"); + NAMES.put("Rmi", "RMI"); + NAMES.put("Roc", "ROC"); + NAMES.put("Rocp", "ROCP"); + NAMES.put("Rocr", "ROCR"); + NAMES.put("Rocr100", "ROCR100"); + NAMES.put("RogersSatchellVolatility", "RogersSatchellVolatility"); + NAMES.put("RollMeasure", "RollMeasure"); + NAMES.put("RollingCorrelation", "RollingCorrelation"); + NAMES.put("RollingCovariance", "RollingCovariance"); + NAMES.put("RollingIqr", "RollingIqr"); + NAMES.put("RollingMinMaxScaler", "RollingMinMaxScaler"); + NAMES.put("RollingPercentileRank", "RollingPercentileRank"); + NAMES.put("RollingQuantile", "RollingQuantile"); + NAMES.put("RollingVwap", "RollingVWAP"); + NAMES.put("RoofingFilter", "RoofingFilter"); + NAMES.put("Rsi", "RSI"); + NAMES.put("Rsx", "RSX"); + NAMES.put("RunBars", "RunBars"); + NAMES.put("Rvi", "RVI"); + NAMES.put("RviVolatility", "RVIVolatility"); + NAMES.put("Rwi", "RWI"); + NAMES.put("SampleEntropy", "SampleEntropy"); + NAMES.put("SarExt", "SAREXT"); + NAMES.put("SeasonalZScore", "SeasonalZScore"); + NAMES.put("SeparatingLines", "SeparatingLines"); + NAMES.put("SessionHighLow", "SessionHighLow"); + NAMES.put("SessionRange", "SessionRange"); + NAMES.put("SessionVwap", "SessionVwap"); + NAMES.put("ShannonEntropy", "ShannonEntropy"); + NAMES.put("Shark", "Shark"); + NAMES.put("SharpeRatio", "SharpeRatio"); + NAMES.put("ShootingStar", "ShootingStar"); + NAMES.put("ShortLine", "ShortLine"); + NAMES.put("SignedVolume", "SignedVolume"); + NAMES.put("SineWave", "SineWave"); + NAMES.put("SineWeightedMa", "SWMA"); + NAMES.put("SinglePrints", "SinglePrints"); + NAMES.put("Skewness", "Skewness"); + NAMES.put("Sma", "SMA"); + NAMES.put("Smi", "SMI"); + NAMES.put("Smma", "SMMA"); + NAMES.put("SmoothedHeikinAshi", "SmoothedHeikinAshi"); + NAMES.put("SortinoRatio", "SortinoRatio"); + NAMES.put("SpearmanCorrelation", "SpearmanCorrelation"); + NAMES.put("SpinningTop", "SpinningTop"); + NAMES.put("SpreadAr1Coefficient", "SpreadAr1Coefficient"); + NAMES.put("SpreadBollingerBands", "SpreadBollingerBands"); + NAMES.put("SpreadHurst", "SpreadHurst"); + NAMES.put("StalledPattern", "StalledPattern"); + NAMES.put("StandardError", "StandardError"); + NAMES.put("StandardErrorBands", "StandardErrorBands"); + NAMES.put("StarcBands", "StarcBands"); + NAMES.put("Stc", "STC"); + NAMES.put("StdDev", "StdDev"); + NAMES.put("StepTrailingStop", "StepTrailingStop"); + NAMES.put("SterlingRatio", "SterlingRatio"); + NAMES.put("StickSandwich", "StickSandwich"); + NAMES.put("StochRsi", "StochRSI"); + NAMES.put("Stochastic", "Stochastic"); + NAMES.put("StochasticCci", "StochasticCCI"); + NAMES.put("SuperSmoother", "SuperSmoother"); + NAMES.put("SuperTrend", "SuperTrend"); + NAMES.put("T3", "T3"); + NAMES.put("TailRatio", "TailRatio"); + NAMES.put("TakerBuySellRatio", "TakerBuySellRatio"); + NAMES.put("Takuri", "Takuri"); + NAMES.put("TasukiGap", "TasukiGap"); + NAMES.put("TdCamouflage", "TDCamouflage"); + NAMES.put("TdClop", "TDClop"); + NAMES.put("TdClopwin", "TDClopwin"); + NAMES.put("TdCombo", "TDCombo"); + NAMES.put("TdCountdown", "TDCountdown"); + NAMES.put("TdDWave", "TDDWave"); + NAMES.put("TdDeMarker", "TDDeMarker"); + NAMES.put("TdDifferential", "TDDifferential"); + NAMES.put("TdLines", "TDLines"); + NAMES.put("TdMovingAverage", "TDMovingAverage"); + NAMES.put("TdOpen", "TDOpen"); + NAMES.put("TdPressure", "TDPressure"); + NAMES.put("TdPropulsion", "TDPropulsion"); + NAMES.put("TdRangeProjection", "TDRangeProjection"); + NAMES.put("TdRei", "TDREI"); + NAMES.put("TdRiskLevel", "TDRiskLevel"); + NAMES.put("TdSequential", "TDSequential"); + NAMES.put("TdSetup", "TDSetup"); + NAMES.put("TdTrap", "TDTrap"); + NAMES.put("Tema", "TEMA"); + NAMES.put("TermStructureBasis", "TermStructureBasis"); + NAMES.put("ThreeDrives", "ThreeDrives"); + NAMES.put("ThreeInside", "ThreeInside"); + NAMES.put("ThreeLineBreak", "ThreeLineBreak"); + NAMES.put("ThreeLineBreakBars", "ThreeLineBreakBars"); + NAMES.put("ThreeLineStrike", "ThreeLineStrike"); + NAMES.put("ThreeOutside", "ThreeOutside"); + NAMES.put("ThreeSoldiersOrCrows", "ThreeSoldiersOrCrows"); + NAMES.put("ThreeStarsInSouth", "ThreeStarsInSouth"); + NAMES.put("Thrusting", "Thrusting"); + NAMES.put("TickBars", "TickBars"); + NAMES.put("TickIndex", "TickIndex"); + NAMES.put("Tii", "TII"); + NAMES.put("TimeBasedStop", "TimeBasedStop"); + NAMES.put("TimeOfDayReturnProfile", "TimeOfDayReturnProfile"); + NAMES.put("TowerTopBottom", "TowerTopBottom"); + NAMES.put("TpoProfile", "TpoProfile"); + NAMES.put("TradeImbalance", "TradeImbalance"); + NAMES.put("TradeSignAutocorrelation", "TradeSignAutocorrelation"); + NAMES.put("TradeVolumeIndex", "TradeVolumeIndex"); + NAMES.put("TrendLabel", "TrendLabel"); + NAMES.put("TrendStrengthIndex", "TrendStrengthIndex"); + NAMES.put("Trendflex", "Trendflex"); + NAMES.put("TreynorRatio", "TreynorRatio"); + NAMES.put("Triangle", "Triangle"); + NAMES.put("Trima", "TRIMA"); + NAMES.put("Trin", "Trin"); + NAMES.put("TripleTopBottom", "TripleTopBottom"); + NAMES.put("Tristar", "Tristar"); + NAMES.put("Trix", "TRIX"); + NAMES.put("TrueRange", "TrueRange"); + NAMES.put("Tsf", "TSF"); + NAMES.put("TsfOscillator", "TsfOscillator"); + NAMES.put("Tsi", "TSI"); + NAMES.put("Tsv", "TSV"); + NAMES.put("TtmSqueeze", "TtmSqueeze"); + NAMES.put("TtmTrend", "TtmTrend"); + NAMES.put("TurnOfMonth", "TurnOfMonth"); + NAMES.put("Tweezer", "Tweezer"); + NAMES.put("TwiggsMoneyFlow", "TwiggsMoneyFlow"); + NAMES.put("TwoCrows", "TwoCrows"); + NAMES.put("TypicalPrice", "TypicalPrice"); + NAMES.put("UlcerIndex", "UlcerIndex"); + NAMES.put("UltimateOscillator", "UltimateOscillator"); + NAMES.put("UniqueThreeRiver", "UniqueThreeRiver"); + NAMES.put("UniversalOscillator", "UniversalOscillator"); + NAMES.put("UpDownVolumeRatio", "UpDownVolumeRatio"); + NAMES.put("UpsideGapThreeMethods", "UpsideGapThreeMethods"); + NAMES.put("UpsideGapTwoCrows", "UpsideGapTwoCrows"); + NAMES.put("UpsidePotentialRatio", "UpsidePotentialRatio"); + NAMES.put("ValueArea", "ValueArea"); + NAMES.put("ValueAtRisk", "ValueAtRisk"); + NAMES.put("Variance", "Variance"); + NAMES.put("VarianceRatio", "VarianceRatio"); + NAMES.put("VerticalHorizontalFilter", "VerticalHorizontalFilter"); + NAMES.put("Vidya", "VIDYA"); + NAMES.put("VolatilityCone", "VolatilityCone"); + NAMES.put("VolatilityOfVolatility", "VolatilityOfVolatility"); + NAMES.put("VolatilityRatio", "VolatilityRatio"); + NAMES.put("VoltyStop", "VoltyStop"); + NAMES.put("VolumeBars", "VolumeBars"); + NAMES.put("VolumeByTimeProfile", "VolumeByTimeProfile"); + NAMES.put("VolumeOscillator", "VolumeOscillator"); + NAMES.put("VolumePriceTrend", "VPT"); + NAMES.put("VolumeProfile", "VolumeProfile"); + NAMES.put("VolumeRsi", "VolumeRsi"); + NAMES.put("VolumeWeightedMacd", "VolumeWeightedMacd"); + NAMES.put("VolumeWeightedSr", "VolumeWeightedSr"); + NAMES.put("Vortex", "Vortex"); + NAMES.put("Vpin", "Vpin"); + NAMES.put("Vwap", "VWAP"); + NAMES.put("VwapStdDevBands", "VwapStdDevBands"); + NAMES.put("Vwma", "VWMA"); + NAMES.put("Vzo", "VZO"); + NAMES.put("Wad", "Wad"); + NAMES.put("WavePm", "WavePm"); + NAMES.put("WaveTrend", "WaveTrend"); + NAMES.put("Wedge", "Wedge"); + NAMES.put("WeightedClose", "WeightedClose"); + NAMES.put("WickRatio", "WickRatio"); + NAMES.put("WilliamsFractals", "WilliamsFractals"); + NAMES.put("WilliamsR", "WilliamsR"); + NAMES.put("WinRate", "WinRate"); + NAMES.put("Wma", "WMA"); + NAMES.put("WoodiePivots", "WoodiePivots"); + NAMES.put("YangZhangVolatility", "YangZhangVolatility"); + NAMES.put("YoyoExit", "YoyoExit"); + NAMES.put("ZScore", "ZScore"); + NAMES.put("ZeroLagMacd", "ZeroLagMACD"); + NAMES.put("ZigZag", "ZigZag"); + NAMES.put("Zlema", "ZLEMA"); + } + private static Path goldenDir() { java.io.File d = new java.io.File("").getAbsoluteFile(); while (d != null) { @@ -730,6 +1248,9 @@ class GoldenAllTest { for (Spec s : SPECS) { tests.add(dynamicTest(s.canonical(), () -> { Object ind = construct(s); + String gotName = (String) ind.getClass().getMethod("name").invoke(ind); + assertTrue(gotName.equals(NAMES.get(s.canonical())), + s.canonical() + ": name() " + gotName + " != " + NAMES.get(s.canonical())); Method upd = updateMethod(ind); double[][] exp = fixture(s.canonical()); assertTrue(exp.length == rows.length, s.canonical() + ": row count " + exp.length + " vs " + rows.length); diff --git a/bindings/node/__tests__/golden.test.js b/bindings/node/__tests__/golden.test.js index 2f50b76f..d6329ebc 100644 --- a/bindings/node/__tests__/golden.test.js +++ b/bindings/node/__tests__/golden.test.js @@ -43,6 +43,10 @@ function readBarRows(name) { } const MANIFEST = JSON.parse(fs.readFileSync(path.join(GOLDEN, 'node_manifest.json'), 'utf8')); +// Canonical Indicator::name() per indicator (the same string every binding must +// return). Keyed by the Rust canonical; values are the core names, which may +// differ from the registered class name (e.g. ChaikinMoneyFlow -> "CMF"). +const NAMES = JSON.parse(fs.readFileSync(path.join(GOLDEN, 'names.json'), 'utf8')); const ROWS = readCsv('input'); function derivFields(o, h, l, c, v) { @@ -141,6 +145,9 @@ for (const spec of MANIFEST) { const Cls = wickra[spec.native]; assert.ok(Cls, `missing Node class ${spec.native}`); const ind = new Cls(...spec.ctor); + // name() must report the canonical core Indicator::name(), the same string + // every other binding returns for this indicator. + assert.equal(ind.name(), NAMES[spec.canonical], `${spec.canonical}: name()`); const isBars = spec.out === 'bars' || spec.out === 'footprint'; const expected = isBars ? readBarRows('g_' + spec.canonical) : readCsv('g_' + spec.canonical); diff --git a/bindings/node/index.d.ts b/bindings/node/index.d.ts index 85895b27..7cdd5675 100644 --- a/bindings/node/index.d.ts +++ b/bindings/node/index.d.ts @@ -600,6 +600,7 @@ export declare class SMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -609,6 +610,7 @@ export declare class EMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -618,6 +620,7 @@ export declare class WMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -627,6 +630,7 @@ export declare class RSI { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -636,6 +640,7 @@ export declare class DEMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -645,6 +650,7 @@ export declare class TEMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -654,6 +660,7 @@ export declare class HMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -663,6 +670,7 @@ export declare class ROC { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -672,6 +680,7 @@ export declare class TRIX { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -681,6 +690,7 @@ export declare class SMMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -690,6 +700,7 @@ export declare class TRIMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -699,6 +710,7 @@ export declare class ZLEMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -708,6 +720,7 @@ export declare class MOM { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -717,6 +730,7 @@ export declare class CMO { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -726,6 +740,7 @@ export declare class DPO { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -735,6 +750,7 @@ export declare class StdDev { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -744,6 +760,7 @@ export declare class UlcerIndex { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -753,6 +770,7 @@ export declare class VerticalHorizontalFilter { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -762,6 +780,7 @@ export declare class ZScore { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -771,6 +790,7 @@ export declare class McGinleyDynamic { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -780,6 +800,7 @@ export declare class FRAMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -789,6 +810,7 @@ export declare class SuperSmoother { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -798,6 +820,7 @@ export declare class FisherTransform { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -807,6 +830,7 @@ export declare class Decycler { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -816,6 +840,7 @@ export declare class CenterOfGravity { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -825,6 +850,7 @@ export declare class CyberneticCycle { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -834,6 +860,7 @@ export declare class InstantaneousTrendline { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -843,6 +870,7 @@ export declare class EhlersStochastic { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -852,6 +880,7 @@ export declare class RVIVolatility { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -861,6 +890,7 @@ export declare class Variance { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -870,6 +900,7 @@ export declare class CoefficientOfVariation { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -879,6 +910,7 @@ export declare class Skewness { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -888,6 +920,7 @@ export declare class Kurtosis { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -897,6 +930,7 @@ export declare class StandardError { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -906,6 +940,7 @@ export declare class DetrendedStdDev { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -915,6 +950,7 @@ export declare class RSquared { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -924,6 +960,7 @@ export declare class MedianAbsoluteDeviation { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -933,6 +970,7 @@ export declare class MIDPOINT { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -942,6 +980,7 @@ export declare class ROCP { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -951,6 +990,7 @@ export declare class ROCR { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -960,6 +1000,7 @@ export declare class ROCR100 { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -969,6 +1010,7 @@ export declare class LINEARREG_INTERCEPT { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -978,6 +1020,7 @@ export declare class TSF { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -987,6 +1030,7 @@ export declare class LogReturn { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -996,6 +1040,7 @@ export declare class RealizedVolatility { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1005,6 +1050,7 @@ export declare class RollingIqr { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1014,6 +1060,7 @@ export declare class RollingPercentileRank { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1023,6 +1070,7 @@ export declare class TrendLabel { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1032,6 +1080,7 @@ export declare class WinRate { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1041,6 +1090,7 @@ export declare class Expectancy { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1050,6 +1100,7 @@ export declare class SWMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1059,6 +1110,7 @@ export declare class GMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1068,6 +1120,7 @@ export declare class EHMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1077,6 +1130,7 @@ export declare class MedianMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1086,6 +1140,7 @@ export declare class AdaptiveLaguerre { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1095,6 +1150,7 @@ export declare class DisparityIndex { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1104,6 +1160,7 @@ export declare class FisherRSI { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1113,6 +1170,7 @@ export declare class RSX { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1122,6 +1180,7 @@ export declare class DynamicMomentumIndex { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1131,6 +1190,7 @@ export declare class TREND_STRENGTH_INDEX { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1140,6 +1200,7 @@ export declare class TsfOscillator { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1149,6 +1210,7 @@ export declare class BipowerVariation { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1158,6 +1220,7 @@ export declare class JARQUEBERA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1167,6 +1230,7 @@ export declare class ROLLINGMINMAX { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1176,6 +1240,7 @@ export declare class HIGHPASS { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1185,6 +1250,7 @@ export declare class REFLEX { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1194,6 +1260,7 @@ export declare class TRENDFLEX { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1203,6 +1270,7 @@ export declare class CTI { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1212,6 +1280,7 @@ export declare class ADAPTIVERSI { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1221,6 +1290,7 @@ export declare class UNIVERSALOSC { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1230,6 +1300,7 @@ export declare class SterlingRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1239,6 +1310,7 @@ export declare class BurkeRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1248,6 +1320,7 @@ export declare class MartinRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1257,6 +1330,7 @@ export declare class TailRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1266,6 +1340,7 @@ export declare class KRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1275,6 +1350,7 @@ export declare class CommonSenseRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1284,6 +1360,7 @@ export declare class GainToPainRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1293,6 +1370,7 @@ export declare class UpsidePotentialRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1302,6 +1380,7 @@ export declare class M2Measure { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1311,6 +1390,7 @@ export declare class BANDPASS { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1320,6 +1400,7 @@ export declare class EVENBETTERSINE { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1329,6 +1410,7 @@ export declare class AUTOCORRPGRAM { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1338,6 +1420,7 @@ export declare class SHANNONENT { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1347,6 +1430,7 @@ export declare class SAMPLEENT { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1356,6 +1440,7 @@ export declare class EwmaVolatility { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1365,6 +1450,7 @@ export declare class Garch11 { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1374,6 +1460,7 @@ export declare class VolatilityOfVolatility { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1383,6 +1470,7 @@ export declare class VolatilityCone { update(high: number, low: number, close: number): VolatilityConeValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1392,6 +1480,7 @@ export declare class JumpIndicator { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1401,6 +1490,7 @@ export declare class RegimeLabel { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1410,6 +1500,7 @@ export declare class RollingQuantile { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1419,6 +1510,7 @@ export declare class Autocorrelation { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1428,6 +1520,7 @@ export declare class HurstExponent { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1441,6 +1534,7 @@ export declare class PearsonCorrelation { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1454,6 +1548,7 @@ export declare class Beta { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1467,6 +1562,7 @@ export declare class PairwiseBeta { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1480,6 +1576,7 @@ export declare class SpreadAr1Coefficient { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1493,6 +1590,7 @@ export declare class SpearmanCorrelation { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1506,6 +1604,7 @@ export declare class RollingCorrelation { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1519,6 +1618,7 @@ export declare class RollingCovariance { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1532,6 +1632,7 @@ export declare class OuHalfLife { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1545,6 +1646,7 @@ export declare class SpreadHurst { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1558,6 +1660,7 @@ export declare class DistanceSsd { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1571,6 +1674,7 @@ export declare class KendallTau { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1584,6 +1688,7 @@ export declare class BetaNeutralSpread { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1597,6 +1702,7 @@ export declare class HasbrouckInformationShare { */ batch(x: Array, y: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1614,6 +1720,7 @@ export declare class PairSpreadZScore { */ batch(a: Array, b: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1628,6 +1735,7 @@ export declare class LeadLagCrossCorrelation { */ batch(a: Array, b: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1642,6 +1750,7 @@ export declare class Cointegration { */ batch(a: Array, b: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1656,6 +1765,7 @@ export declare class RelativeStrengthAB { */ batch(a: Array, b: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1673,6 +1783,7 @@ export declare class VarianceRatio { */ batch(a: Array, b: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1690,6 +1801,7 @@ export declare class GrangerCausality { */ batch(a: Array, b: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1704,6 +1816,7 @@ export declare class KalmanHedgeRatio { */ batch(a: Array, b: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1718,6 +1831,7 @@ export declare class SpreadBollingerBands { */ batch(a: Array, b: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1732,6 +1846,7 @@ export declare class MACD { */ batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1745,6 +1860,7 @@ export declare class MACDFIX { */ batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1762,6 +1878,7 @@ export declare class MACDEXT { */ batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1776,6 +1893,7 @@ export declare class BollingerBands { */ batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1785,6 +1903,7 @@ export declare class ATR { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1794,6 +1913,7 @@ export declare class PLUS_DM { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1803,6 +1923,7 @@ export declare class MINUS_DM { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1812,6 +1933,7 @@ export declare class PLUS_DI { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1821,6 +1943,7 @@ export declare class MINUS_DI { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1830,6 +1953,7 @@ export declare class DX { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1839,6 +1963,7 @@ export declare class MIDPRICE { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1848,6 +1973,7 @@ export declare class AVGPRICE { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1857,6 +1983,7 @@ export declare class SAREXT { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1870,6 +1997,7 @@ export declare class HT_PHASOR { */ batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1879,6 +2007,7 @@ export declare class CloseVsOpen { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1888,6 +2017,7 @@ export declare class BodySizePct { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1897,6 +2027,7 @@ export declare class WickRatio { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1906,6 +2037,7 @@ export declare class HighLowRange { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1915,6 +2047,7 @@ export declare class StochasticCCI { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1924,6 +2057,7 @@ export declare class IMI { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1933,6 +2067,7 @@ export declare class QQE { update(value: number): QqeValue | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1942,6 +2077,7 @@ export declare class ElderRay { update(high: number, low: number, close: number): ElderRayValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1951,6 +2087,7 @@ export declare class TTM_TREND { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1960,6 +2097,7 @@ export declare class Qstick { update(open: number, close: number): number | null batch(open: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1969,6 +2107,7 @@ export declare class POLARIZED_FRACTAL_EFFICIENCY { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1978,6 +2117,7 @@ export declare class WAVE_PM { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1987,6 +2127,7 @@ export declare class GatorOscillator { update(high: number, low: number, close: number): GatorOscillatorValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -1996,6 +2137,7 @@ export declare class KasePermissionStochastic { update(high: number, low: number, close: number): KasePermissionStochasticValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2005,6 +2147,7 @@ export declare class VolatilityRatio { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2014,6 +2157,7 @@ export declare class ProjectionOscillator { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2023,6 +2167,7 @@ export declare class TimeBasedStop { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2032,6 +2177,7 @@ export declare class ADAPTIVECCI { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2041,6 +2187,7 @@ export declare class Stochastic { update(high: number, low: number, close: number): StochValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2050,6 +2197,7 @@ export declare class OBV { update(close: number, volume: number): number | null batch(close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2059,6 +2207,7 @@ export declare class ADX { update(high: number, low: number, close: number): AdxValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2068,6 +2217,7 @@ export declare class ADXR { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2075,6 +2225,7 @@ export type CciNode = CCI export declare class CCI { constructor(period: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number, close: number): number | null @@ -2084,6 +2235,7 @@ export type WilliamsRNode = WilliamsR export declare class WilliamsR { constructor(period: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number, close: number): number | null @@ -2093,6 +2245,7 @@ export type MfiNode = MFI export declare class MFI { constructor(period: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number, close: number, volume: number): number | null @@ -2102,6 +2255,7 @@ export type PsarNode = PSAR export declare class PSAR { constructor(afStart: number, afStep: number, afMax: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number, close: number): number | null @@ -2111,6 +2265,7 @@ export type KeltnerNode = Keltner export declare class Keltner { constructor(emaPeriod: number, atrPeriod: number, multiplier: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number, close: number): KeltnerValue | null @@ -2120,6 +2275,7 @@ export type DonchianNode = Donchian export declare class Donchian { constructor(period: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number): DonchianValue | null @@ -2129,6 +2285,7 @@ export type VwapNode = VWAP export declare class VWAP { constructor() reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number, close: number, volume: number): number | null @@ -2139,6 +2296,7 @@ export declare class RollingVWAP { constructor(period: number) get period(): number reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number, close: number, volume: number): number | null @@ -2148,6 +2306,7 @@ export type AoNode = AwesomeOscillator export declare class AwesomeOscillator { constructor(fast: number, slow: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number): number | null @@ -2157,6 +2316,7 @@ export type AroonNode = Aroon export declare class Aroon { constructor(period: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number): AroonValue | null @@ -2168,6 +2328,7 @@ export declare class Inertia { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2177,6 +2338,7 @@ export declare class ConnorsRSI { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2186,6 +2348,7 @@ export declare class LaguerreRSI { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2195,6 +2358,7 @@ export declare class SMI { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2205,6 +2369,7 @@ export declare class KST { update(value: number): KstValue | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2214,6 +2379,7 @@ export declare class PGO { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2223,6 +2389,7 @@ export declare class RVI { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2232,6 +2399,7 @@ export declare class AwesomeOscillatorHistogram { update(high: number, low: number): number | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2241,6 +2409,7 @@ export declare class STC { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2250,6 +2419,7 @@ export declare class ElderImpulse { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2259,6 +2429,7 @@ export declare class ZeroLagMACD { update(value: number): ZeroLagMacdValue | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2268,6 +2439,7 @@ export declare class CFO { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2277,6 +2449,7 @@ export declare class APO { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2284,6 +2457,7 @@ export type KamaNode = KAMA export declare class KAMA { constructor(erPeriod: number, fast: number, slow: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(value: number): number | null @@ -2295,6 +2469,7 @@ export declare class EVWMA { update(close: number, volume: number): number | null batch(close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2302,6 +2477,7 @@ export type AlligatorNode = Alligator export declare class Alligator { constructor(jaw: number, teeth: number, lips: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number): AlligatorValue | null @@ -2311,6 +2487,7 @@ export type JmaNode = JMA export declare class JMA { constructor(period: number, phase: number, power: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(value: number): number | null @@ -2320,6 +2497,7 @@ export type VidyaNode = VIDYA export declare class VIDYA { constructor(period: number, cmoPeriod: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(value: number): number | null @@ -2329,6 +2507,7 @@ export type AlmaNode = ALMA export declare class ALMA { constructor(period: number, offset: number, sigma: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(value: number): number | null @@ -2340,6 +2519,7 @@ export declare class T3 { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2349,6 +2529,7 @@ export declare class GD { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2358,6 +2539,7 @@ export declare class HoltWinters { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2367,6 +2549,7 @@ export declare class RMI { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2376,6 +2559,7 @@ export declare class DerivativeOscillator { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2385,6 +2569,7 @@ export declare class MacdHistogram { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2394,6 +2579,7 @@ export declare class PpoHistogram { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2403,6 +2589,7 @@ export declare class TSI { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2412,6 +2599,7 @@ export declare class PMO { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2421,6 +2609,7 @@ export declare class TII { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2430,6 +2619,7 @@ export declare class ADL { update(high: number, low: number, close: number, volume: number): number | null batch(high: Array, low: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2439,6 +2629,7 @@ export declare class VolumePriceTrend { update(close: number, volume: number): number | null batch(close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2448,6 +2639,7 @@ export declare class ChaikinMoneyFlow { update(high: number, low: number, close: number, volume: number): number | null batch(high: Array, low: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2457,6 +2649,7 @@ export declare class ChaikinOscillator { update(high: number, low: number, close: number, volume: number): number | null batch(high: Array, low: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2466,6 +2659,7 @@ export declare class ForceIndex { update(close: number, volume: number): number | null batch(close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2475,6 +2669,7 @@ export declare class NVI { update(close: number, volume: number): number | null batch(close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2484,6 +2679,7 @@ export declare class PVI { update(close: number, volume: number): number | null batch(close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2493,6 +2689,7 @@ export declare class VolumeOscillator { update(volume: number): number | null batch(volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2502,6 +2699,7 @@ export declare class KVO { update(high: number, low: number, close: number, volume: number): number | null batch(high: Array, low: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2511,6 +2709,7 @@ export declare class ADOSC { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2521,6 +2720,7 @@ export declare class AnchoredRSI { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2531,6 +2731,7 @@ export declare class AnchoredVWAP { update(high: number, low: number, close: number, volume: number): number | null batch(high: Array, low: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2540,6 +2741,7 @@ export declare class DemandIndex { update(high: number, low: number, close: number, volume: number): number | null batch(high: Array, low: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2549,6 +2751,7 @@ export declare class TSV { update(close: number, volume: number): number | null batch(close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2558,6 +2761,7 @@ export declare class VZO { update(close: number, volume: number): number | null batch(close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2567,6 +2771,7 @@ export declare class MarketFacilitationIndex { update(high: number, low: number, volume: number): number | null batch(high: Array, low: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2576,6 +2781,7 @@ export declare class EaseOfMovement { update(high: number, low: number, volume: number): number | null batch(high: Array, low: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2589,6 +2795,7 @@ export declare class SuperTrend { */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2602,6 +2809,7 @@ export declare class ChandelierExit { */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2615,6 +2823,7 @@ export declare class ChandeKrollStop { */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2624,6 +2833,7 @@ export declare class AtrTrailingStop { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2633,6 +2843,7 @@ export declare class HiLoActivator { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2642,6 +2853,7 @@ export declare class VoltyStop { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2651,6 +2863,7 @@ export declare class YoyoExit { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number inTrade(): boolean @@ -2665,6 +2878,7 @@ export declare class DonchianStop { */ batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2674,6 +2888,7 @@ export declare class PercentageTrailingStop { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2683,6 +2898,7 @@ export declare class StepTrailingStop { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2692,6 +2908,7 @@ export declare class RenkoTrailingStop { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2705,6 +2922,7 @@ export declare class KaseDevStop { */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2718,6 +2936,7 @@ export declare class ElderSafeZone { */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2731,6 +2950,7 @@ export declare class AtrRatchet { */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2744,6 +2964,7 @@ export declare class Nrtr { */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2757,6 +2978,7 @@ export declare class ModifiedMaStop { */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2766,6 +2988,7 @@ export declare class TypicalPrice { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2775,6 +2998,7 @@ export declare class MedianPrice { update(high: number, low: number): number | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2784,6 +3008,7 @@ export declare class WeightedClose { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2793,6 +3018,7 @@ export declare class LinearRegression { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2802,6 +3028,7 @@ export declare class LinRegSlope { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2811,6 +3038,7 @@ export declare class AcceleratorOscillator { update(high: number, low: number): number | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2820,6 +3048,7 @@ export declare class BalanceOfPower { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2829,6 +3058,7 @@ export declare class ChoppinessIndex { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2838,6 +3068,7 @@ export declare class TrueRange { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2847,6 +3078,7 @@ export declare class ChaikinVolatility { update(high: number, low: number): number | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2856,6 +3088,7 @@ export declare class YangZhangVolatility { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2865,6 +3098,7 @@ export declare class RogersSatchellVolatility { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2874,6 +3108,7 @@ export declare class GarmanKlassVolatility { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2883,6 +3118,7 @@ export declare class ParkinsonVolatility { update(high: number, low: number): number | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2892,6 +3128,7 @@ export declare class LinRegAngle { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2901,6 +3138,7 @@ export declare class BollingerBandwidth { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2910,6 +3148,7 @@ export declare class PercentB { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2919,6 +3158,7 @@ export declare class NATR { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2928,6 +3168,7 @@ export declare class HistoricalVolatility { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2937,6 +3178,7 @@ export declare class AroonOscillator { update(high: number, low: number): number | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2947,6 +3189,7 @@ export declare class WaveTrend { update(high: number, low: number, close: number): WaveTrendValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2957,6 +3200,7 @@ export declare class RWI { /** Returns `[high0, low0, high1, low1, ...]`, length `2 * n`. Warmup is NaN. */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2967,6 +3211,7 @@ export declare class Vortex { /** Returns `[plus0, minus0, plus1, minus1, ...]`, length `2 * n`. Warmup is NaN. */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2976,6 +3221,7 @@ export declare class MassIndex { update(high: number, low: number): number | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2985,6 +3231,7 @@ export declare class StochRSI { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -2994,6 +3241,7 @@ export declare class UltimateOscillator { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3003,6 +3251,7 @@ export declare class PPO { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3012,6 +3261,7 @@ export declare class Coppock { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3021,6 +3271,7 @@ export declare class VWMA { update(close: number, volume: number): number | null batch(close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3031,6 +3282,7 @@ export declare class MaEnvelope { /** Flat `[upper0, middle0, lower0, upper1, ...]`, length `3 * n`. */ batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3040,6 +3292,7 @@ export declare class AccelerationBands { update(high: number, low: number, close: number): AccelerationBandsValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3049,6 +3302,7 @@ export declare class StarcBands { update(high: number, low: number, close: number): StarcBandsValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3058,6 +3312,7 @@ export declare class AtrBands { update(high: number, low: number, close: number): AtrBandsValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3067,6 +3322,7 @@ export declare class HurstChannel { update(high: number, low: number, close: number): HurstChannelValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3076,6 +3332,7 @@ export declare class LinRegChannel { update(value: number): LinRegChannelValue | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3085,6 +3342,7 @@ export declare class StandardErrorBands { update(value: number): StandardErrorBandsValue | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3094,6 +3352,7 @@ export declare class QuartileBands { update(value: number): QuartileBandsValue | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3103,6 +3362,7 @@ export declare class BomarBands { update(value: number): BomarBandsValue | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3112,6 +3372,7 @@ export declare class MedianChannel { update(value: number): MedianChannelValue | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3121,6 +3382,7 @@ export declare class ProjectionBands { update(high: number, low: number): ProjectionBandsValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3130,6 +3392,7 @@ export declare class CentralPivotRange { update(high: number, low: number, close: number): CentralPivotRangeValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3139,6 +3402,7 @@ export declare class MurreyMathLines { update(high: number, low: number): MurreyMathLinesValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3148,6 +3412,7 @@ export declare class AndrewsPitchfork { update(high: number, low: number): AndrewsPitchforkValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3157,6 +3422,7 @@ export declare class VolumeWeightedSr { update(high: number, low: number, volume: number): VolumeWeightedSrValue | null batch(high: Array, low: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3166,6 +3432,7 @@ export declare class PivotReversal { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3176,6 +3443,7 @@ export declare class DoubleBollinger { /** Flat `[u_o, u_i, m, l_i, l_o, ...]`, length `5 * n`. */ batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3186,6 +3454,7 @@ export declare class TtmSqueeze { /** Flat `[sq0, mom0, sq1, mom1, ...]`, length `2 * n`. */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3196,6 +3465,7 @@ export declare class FractalChaosBands { /** Flat `[u0, l0, u1, l1, ...]`, length `2 * n`. */ batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3206,6 +3476,7 @@ export declare class VwapStdDevBands { /** Flat `[u0, m0, l0, sd0, ...]`, length `4 * n`. */ batch(high: Array, low: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3215,6 +3486,7 @@ export declare class ClassicPivots { update(high: number, low: number, close: number): ClassicPivotsValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3224,6 +3496,7 @@ export declare class FibonacciPivots { update(high: number, low: number, close: number): FibonacciPivotsValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3233,6 +3506,7 @@ export declare class Camarilla { update(high: number, low: number, close: number): CamarillaValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3242,6 +3516,7 @@ export declare class WoodiePivots { update(high: number, low: number, close: number): WoodiePivotsValue | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3251,6 +3526,7 @@ export declare class DemarkPivots { update(open: number, high: number, low: number, close: number): DemarkPivotsValue | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3260,6 +3536,7 @@ export declare class WilliamsFractals { update(high: number, low: number): WilliamsFractalsValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3270,6 +3547,7 @@ export declare class ZigZag { batch(high: Array, low: Array): Array get threshold(): number reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3279,6 +3557,7 @@ export declare class TDSetup { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3289,6 +3568,7 @@ export declare class TDSequential { /** Batch returns a flat array `[setup0, countdown0, direction0, setup1, ...]`. */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3298,6 +3578,7 @@ export declare class TDDeMarker { update(high: number, low: number): number | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3307,6 +3588,7 @@ export declare class TDREI { update(high: number, low: number): number | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3316,6 +3598,7 @@ export declare class TDPressure { update(open: number, high: number, low: number, close: number, volume: number): number | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3325,6 +3608,7 @@ export declare class TDCombo { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3334,6 +3618,7 @@ export declare class TDDWave { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3343,6 +3628,7 @@ export declare class TDMovingAverage { update(high: number, low: number): TdMovingAverageValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3352,6 +3638,7 @@ export declare class TDCountdown { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3362,6 +3649,7 @@ export declare class TDLines { /** Batch returns a flat array `[resistance0, support0, resistance1, ...]`. */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3372,6 +3660,7 @@ export declare class TDRangeProjection { /** Batch returns a flat array `[high0, low0, high1, low1, ...]`. */ batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3381,6 +3670,7 @@ export declare class TDDifferential { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3390,6 +3680,7 @@ export declare class TDOpen { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3400,6 +3691,7 @@ export declare class TDRiskLevel { /** Batch returns a flat array `[buyRisk0, sellRisk0, buyRisk1, ...]`. */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3409,6 +3701,7 @@ export declare class InverseFisherTransform { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3418,6 +3711,7 @@ export declare class DecyclerOscillator { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3427,6 +3721,7 @@ export declare class RoofingFilter { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3436,6 +3731,7 @@ export declare class EmpiricalModeDecomposition { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3445,6 +3741,7 @@ export declare class HT_DCPHASE { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3454,6 +3751,7 @@ export declare class HT_TRENDMODE { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3463,6 +3761,7 @@ export declare class HilbertDominantCycle { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3472,6 +3771,7 @@ export declare class AdaptiveCycle { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3482,6 +3782,7 @@ export declare class SineWave { batch(prices: Array): Array lead(): number reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3492,6 +3793,7 @@ export declare class MAMA { /** Returns a flat array of length `2 * n`: `[mama0, fama0, mama1, fama1, ...]`. */ batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3501,6 +3803,7 @@ export declare class FAMA { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3514,6 +3817,7 @@ export declare class Ichimoku { */ batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3524,6 +3828,7 @@ export declare class HeikinAshi { /** Returns `[open0, high0, low0, close0, open1, ...]`, length `4 * n`. */ batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3533,6 +3838,7 @@ export declare class HeikinAshiOscillator { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3542,6 +3848,7 @@ export declare class ThreeLineBreak { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3551,6 +3858,7 @@ export declare class SmoothedHeikinAshi { update(open: number, high: number, low: number, close: number): SmoothedHeikinAshiValue | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3560,6 +3868,7 @@ export declare class Equivolume { update(high: number, low: number, volume: number): EquivolumeValue | null batch(high: Array, low: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3569,6 +3878,7 @@ export declare class CandleVolume { update(open: number, close: number, volume: number): CandleVolumeValue | null batch(open: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3578,6 +3888,7 @@ export declare class FryPanBottom { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3587,6 +3898,7 @@ export declare class DumplingTop { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3596,6 +3908,7 @@ export declare class NewPriceLines { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3603,6 +3916,7 @@ export type ValueAreaNode = ValueArea export declare class ValueArea { constructor(period: number, binCount: number, valueAreaPct: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number, volume: number): ValueAreaValue | null @@ -3614,6 +3928,7 @@ export declare class NakedPoc { update(high: number, low: number, close: number, volume: number): number | null batch(high: Array, low: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3623,6 +3938,7 @@ export declare class SinglePrints { update(high: number, low: number): number | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3632,6 +3948,7 @@ export declare class ProfileShape { update(high: number, low: number, volume: number): number | null batch(high: Array, low: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3641,6 +3958,7 @@ export declare class HighLowVolumeNodes { update(high: number, low: number, volume: number): HighLowVolumeNodesValue | null batch(high: Array, low: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3650,6 +3968,7 @@ export declare class CompositeProfile { update(high: number, low: number, volume: number): CompositeProfileValue | null batch(high: Array, low: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3657,6 +3976,7 @@ export type VolumeProfileNode = VolumeProfile export declare class VolumeProfile { constructor(period: number, binCount: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number, volume: number): VolumeProfileValue | null @@ -3666,6 +3986,7 @@ export type TpoProfileNode = TpoProfile export declare class TpoProfile { constructor(period: number, binCount: number) reset(): void + name(): string isReady(): boolean warmupPeriod(): number update(high: number, low: number): TpoProfileValue | null @@ -3675,6 +3996,7 @@ export type InitialBalanceNode = InitialBalance export declare class InitialBalance { constructor(period: number) reset(): void + name(): string isReady(): boolean isLocked(): boolean warmupPeriod(): number @@ -3685,6 +4007,7 @@ export type OpeningRangeNode = OpeningRange export declare class OpeningRange { constructor(period: number) reset(): void + name(): string isReady(): boolean isLocked(): boolean warmupPeriod(): number @@ -3697,6 +4020,7 @@ export declare class Doji { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number isSigned(): boolean @@ -3707,6 +4031,7 @@ export declare class Hammer { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3716,6 +4041,7 @@ export declare class InvertedHammer { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3725,6 +4051,7 @@ export declare class HangingMan { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3734,6 +4061,7 @@ export declare class ShootingStar { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3743,6 +4071,7 @@ export declare class Engulfing { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3752,6 +4081,7 @@ export declare class Harami { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3761,6 +4091,7 @@ export declare class MorningEveningStar { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3770,6 +4101,7 @@ export declare class ThreeSoldiersOrCrows { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3779,6 +4111,7 @@ export declare class PiercingDarkCloud { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3788,6 +4121,7 @@ export declare class Marubozu { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3797,6 +4131,7 @@ export declare class Tweezer { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3806,6 +4141,7 @@ export declare class SpinningTop { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3815,6 +4151,7 @@ export declare class ThreeInside { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3824,6 +4161,7 @@ export declare class ThreeOutside { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3833,6 +4171,7 @@ export declare class TwoCrows { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3842,6 +4181,7 @@ export declare class UpsideGapTwoCrows { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3851,6 +4191,7 @@ export declare class IdenticalThreeCrows { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3860,6 +4201,7 @@ export declare class ThreeLineStrike { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3869,6 +4211,7 @@ export declare class ThreeStarsInSouth { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3878,6 +4221,7 @@ export declare class AbandonedBaby { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3887,6 +4231,7 @@ export declare class AdvanceBlock { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3896,6 +4241,7 @@ export declare class BeltHold { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3905,6 +4251,7 @@ export declare class Breakaway { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3914,6 +4261,7 @@ export declare class Counterattack { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3923,6 +4271,7 @@ export declare class DojiStar { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3932,6 +4281,7 @@ export declare class DragonflyDoji { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3941,6 +4291,7 @@ export declare class GravestoneDoji { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3950,6 +4301,7 @@ export declare class LongLeggedDoji { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3959,6 +4311,7 @@ export declare class RickshawMan { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3968,6 +4321,7 @@ export declare class EveningDojiStar { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3977,6 +4331,7 @@ export declare class MorningDojiStar { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3986,6 +4341,7 @@ export declare class GapSideBySideWhite { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -3995,6 +4351,7 @@ export declare class HighWave { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4004,6 +4361,7 @@ export declare class Hikkake { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4013,6 +4371,7 @@ export declare class HikkakeModified { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4022,6 +4381,7 @@ export declare class HomingPigeon { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4031,6 +4391,7 @@ export declare class OnNeck { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4040,6 +4401,7 @@ export declare class InNeck { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4049,6 +4411,7 @@ export declare class Thrusting { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4058,6 +4421,7 @@ export declare class SeparatingLines { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4067,6 +4431,7 @@ export declare class Kicking { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4076,6 +4441,7 @@ export declare class KickingByLength { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4085,6 +4451,7 @@ export declare class LadderBottom { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4094,6 +4461,7 @@ export declare class MatHold { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4103,6 +4471,7 @@ export declare class MatchingLow { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4112,6 +4481,7 @@ export declare class LongLine { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4121,6 +4491,7 @@ export declare class ShortLine { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4130,6 +4501,7 @@ export declare class RisingThreeMethods { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4139,6 +4511,7 @@ export declare class FallingThreeMethods { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4148,6 +4521,7 @@ export declare class UpsideGapThreeMethods { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4157,6 +4531,7 @@ export declare class DownsideGapThreeMethods { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4166,6 +4541,7 @@ export declare class StalledPattern { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4175,6 +4551,7 @@ export declare class StickSandwich { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4184,6 +4561,7 @@ export declare class Takuri { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4193,6 +4571,7 @@ export declare class ClosingMarubozu { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4202,6 +4581,7 @@ export declare class OpeningMarubozu { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4211,6 +4591,7 @@ export declare class TasukiGap { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4220,6 +4601,7 @@ export declare class UniqueThreeRiver { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4229,6 +4611,7 @@ export declare class ConcealingBabySwallow { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4238,6 +4621,7 @@ export declare class DoubleTopBottom { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4247,6 +4631,7 @@ export declare class TripleTopBottom { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4256,6 +4641,7 @@ export declare class HeadAndShoulders { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4265,6 +4651,7 @@ export declare class Triangle { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4274,6 +4661,7 @@ export declare class Wedge { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4283,6 +4671,7 @@ export declare class FlagPennant { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4292,6 +4681,7 @@ export declare class RectangleRange { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4301,6 +4691,7 @@ export declare class CupAndHandle { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4310,6 +4701,7 @@ export declare class Abcd { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4319,6 +4711,7 @@ export declare class Gartley { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4328,6 +4721,7 @@ export declare class Butterfly { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4337,6 +4731,7 @@ export declare class Bat { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4346,6 +4741,7 @@ export declare class Crab { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4355,6 +4751,7 @@ export declare class Shark { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4364,6 +4761,7 @@ export declare class Cypher { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4373,6 +4771,7 @@ export declare class ThreeDrives { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4382,6 +4781,7 @@ export declare class TDCamouflage { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4391,6 +4791,7 @@ export declare class TDClop { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4400,6 +4801,7 @@ export declare class TDClopwin { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4409,6 +4811,7 @@ export declare class TDPropulsion { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4418,6 +4821,7 @@ export declare class TDTrap { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4427,6 +4831,7 @@ export declare class Tristar { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4436,6 +4841,7 @@ export declare class HaramiCross { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4445,6 +4851,7 @@ export declare class TowerTopBottom { update(open: number, high: number, low: number, close: number): number | null batch(open: Array, high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4454,6 +4861,7 @@ export declare class OrderBookImbalanceTop1 { update(bidPx: Array, bidSz: Array, askPx: Array, askSz: Array): number | null batch(snapshots: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4463,6 +4871,7 @@ export declare class OrderBookImbalanceFull { update(bidPx: Array, bidSz: Array, askPx: Array, askSz: Array): number | null batch(snapshots: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4472,6 +4881,7 @@ export declare class Microprice { update(bidPx: Array, bidSz: Array, askPx: Array, askSz: Array): number | null batch(snapshots: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4481,6 +4891,7 @@ export declare class QuotedSpread { update(bidPx: Array, bidSz: Array, askPx: Array, askSz: Array): number | null batch(snapshots: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4490,6 +4901,7 @@ export declare class DepthSlope { update(bidPx: Array, bidSz: Array, askPx: Array, askSz: Array): number | null batch(snapshots: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4499,6 +4911,7 @@ export declare class OrderBookImbalanceTopN { update(bidPx: Array, bidSz: Array, askPx: Array, askSz: Array): number | null batch(snapshots: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4508,6 +4921,7 @@ export declare class SignedVolume { update(price: number, size: number, isBuy: boolean): number | null batch(price: Array, size: Array, isBuy: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4517,6 +4931,7 @@ export declare class CumulativeVolumeDelta { update(price: number, size: number, isBuy: boolean): number | null batch(price: Array, size: Array, isBuy: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4526,6 +4941,7 @@ export declare class TradeImbalance { update(price: number, size: number, isBuy: boolean): number | null batch(price: Array, size: Array, isBuy: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4535,6 +4951,7 @@ export declare class TradeSignAutocorrelation { update(price: number, size: number, isBuy: boolean): number | null batch(price: Array, size: Array, isBuy: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4544,6 +4961,7 @@ export declare class Pin { update(price: number, size: number, isBuy: boolean): number | null batch(price: Array, size: Array, isBuy: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4553,6 +4971,7 @@ export declare class OrderFlowImbalance { update(bidPx: Array, bidSz: Array, askPx: Array, askSz: Array): number | null batch(snapshots: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4562,6 +4981,7 @@ export declare class Vpin { update(price: number, size: number, isBuy: boolean): number | null batch(price: Array, size: Array, isBuy: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4571,6 +4991,7 @@ export declare class AmihudIlliquidity { update(price: number, size: number, isBuy: boolean): number | null batch(price: Array, size: Array, isBuy: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4580,6 +5001,7 @@ export declare class RollMeasure { update(price: number, size: number, isBuy: boolean): number | null batch(price: Array, size: Array, isBuy: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4589,6 +5011,7 @@ export declare class EffectiveSpread { update(price: number, size: number, isBuy: boolean, mid: number): number | null batch(price: Array, size: Array, isBuy: Array, mid: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4598,6 +5021,7 @@ export declare class RealizedSpread { update(price: number, size: number, isBuy: boolean, mid: number): number | null batch(price: Array, size: Array, isBuy: Array, mid: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4607,6 +5031,7 @@ export declare class KylesLambda { update(price: number, size: number, isBuy: boolean, mid: number): number | null batch(price: Array, size: Array, isBuy: Array, mid: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4616,6 +5041,7 @@ export declare class Footprint { update(price: number, size: number, isBuy: boolean): Array batch(price: Array, size: Array, isBuy: Array): Array> reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4625,6 +5051,7 @@ export declare class FundingRate { update(fundingRate: number): number | null batch(fundingRate: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4634,6 +5061,7 @@ export declare class FundingRateMean { update(fundingRate: number): number | null batch(fundingRate: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4643,6 +5071,7 @@ export declare class FundingRateZScore { update(fundingRate: number): number | null batch(fundingRate: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4652,6 +5081,7 @@ export declare class FundingBasis { update(markPrice: number, indexPrice: number): number | null batch(markPrice: Array, indexPrice: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4661,6 +5091,7 @@ export declare class OpenInterestDelta { update(openInterest: number): number | null batch(openInterest: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4670,6 +5101,7 @@ export declare class OIPriceDivergence { update(openInterest: number, markPrice: number): number | null batch(openInterest: Array, markPrice: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4679,6 +5111,7 @@ export declare class OIWeighted { update(markPrice: number, openInterest: number): number | null batch(markPrice: Array, openInterest: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4688,6 +5121,7 @@ export declare class LongShortRatio { update(longSize: number, shortSize: number): number | null batch(longSize: Array, shortSize: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4697,6 +5131,7 @@ export declare class TakerBuySellRatio { update(takerBuyVolume: number, takerSellVolume: number): number | null batch(takerBuyVolume: Array, takerSellVolume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4706,6 +5141,7 @@ export declare class LiquidationFeatures { update(longLiquidation: number, shortLiquidation: number): LiquidationFeaturesValue | null batch(longLiquidation: Array, shortLiquidation: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4715,6 +5151,7 @@ export declare class TermStructureBasis { update(futuresPrice: number, indexPrice: number): number | null batch(futuresPrice: Array, indexPrice: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4724,6 +5161,7 @@ export declare class CalendarSpread { update(futuresPrice: number, markPrice: number): number | null batch(futuresPrice: Array, markPrice: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4733,6 +5171,7 @@ export declare class EstimatedLeverageRatio { update(openInterest: number, longSize: number, shortSize: number): number | null batch(openInterest: Array, longSize: Array, shortSize: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4742,6 +5181,7 @@ export declare class OiToVolumeRatio { update(openInterest: number, takerBuyVolume: number, takerSellVolume: number): number | null batch(openInterest: Array, takerBuyVolume: Array, takerSellVolume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4751,6 +5191,7 @@ export declare class PerpetualPremiumIndex { update(markPrice: number, indexPrice: number): number | null batch(markPrice: Array, indexPrice: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4760,6 +5201,7 @@ export declare class FundingImpliedApr { update(fundingRate: number): number | null batch(fundingRate: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4769,6 +5211,7 @@ export declare class OpenInterestMomentum { update(openInterest: number): number | null batch(openInterest: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4778,6 +5221,7 @@ export declare class AdvanceDecline { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4787,6 +5231,7 @@ export declare class AdvanceDeclineRatio { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4796,6 +5241,7 @@ export declare class AdVolumeLine { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4805,6 +5251,7 @@ export declare class McClellanOscillator { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4814,6 +5261,7 @@ export declare class McClellanSummationIndex { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4823,6 +5271,7 @@ export declare class Trin { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4832,6 +5281,7 @@ export declare class BreadthThrust { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4841,6 +5291,7 @@ export declare class NewHighsNewLows { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4850,6 +5301,7 @@ export declare class HighLowIndex { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4859,6 +5311,7 @@ export declare class PercentAboveMa { update(change: Array, volume: Array, newHigh: Array, newLow: Array, aboveMa: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>, aboveMa: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4868,6 +5321,7 @@ export declare class UpDownVolumeRatio { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4877,6 +5331,7 @@ export declare class BullishPercentIndex { update(change: Array, volume: Array, newHigh: Array, newLow: Array, onBuySignal: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>, onBuySignal: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4886,6 +5341,7 @@ export declare class CumulativeVolumeIndex { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4895,6 +5351,7 @@ export declare class AbsoluteBreadthIndex { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4904,6 +5361,7 @@ export declare class TickIndex { update(change: Array, volume: Array, newHigh: Array, newLow: Array): number | null batch(change: Array>, volume: Array>, newHigh: Array>, newLow: Array>): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4913,6 +5371,7 @@ export declare class SharpeRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4922,6 +5381,7 @@ export declare class SortinoRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4931,6 +5391,7 @@ export declare class CalmarRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4940,6 +5401,7 @@ export declare class OmegaRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4949,6 +5411,7 @@ export declare class MaxDrawdown { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4958,6 +5421,7 @@ export declare class AverageDrawdown { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4967,6 +5431,7 @@ export declare class DrawdownDuration { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4976,6 +5441,7 @@ export declare class PainIndex { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4985,6 +5451,7 @@ export declare class ValueAtRisk { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -4994,6 +5461,7 @@ export declare class ConditionalValueAtRisk { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5003,6 +5471,7 @@ export declare class ProfitFactor { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5012,6 +5481,7 @@ export declare class GainLossRatio { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5021,6 +5491,7 @@ export declare class RecoveryFactor { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5030,6 +5501,7 @@ export declare class KellyCriterion { update(value: number): number | null batch(prices: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5039,6 +5511,7 @@ export declare class TreynorRatio { update(asset: number, benchmark: number): number | null batch(asset: Array, benchmark: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5048,6 +5521,7 @@ export declare class InformationRatio { update(asset: number, benchmark: number): number | null batch(asset: Array, benchmark: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5058,6 +5532,7 @@ export declare class RenkoBars { batch(close: Array): Array boxSize(): number reset(): void + name(): string } export type KagiBarsNode = KagiBars export declare class KagiBars { @@ -5066,6 +5541,7 @@ export declare class KagiBars { batch(close: Array): Array reversal(): number reset(): void + name(): string } export type PointAndFigureBarsNode = PointAndFigureBars export declare class PointAndFigureBars { @@ -5075,6 +5551,7 @@ export declare class PointAndFigureBars { boxSize(): number reversal(): number reset(): void + name(): string } export type RangeBarsNode = RangeBars export declare class RangeBars { @@ -5083,6 +5560,7 @@ export declare class RangeBars { batch(close: Array): Array range(): number reset(): void + name(): string } export type TickBarsNode = TickBars export declare class TickBars { @@ -5091,6 +5569,7 @@ export declare class TickBars { batch(open: Array, high: Array, low: Array, close: Array, volume: Array): Array ticks(): number reset(): void + name(): string } export type VolumeBarsNode = VolumeBars export declare class VolumeBars { @@ -5099,6 +5578,7 @@ export declare class VolumeBars { batch(open: Array, high: Array, low: Array, close: Array, volume: Array): Array volumePerBar(): number reset(): void + name(): string } export type DollarBarsNode = DollarBars export declare class DollarBars { @@ -5107,6 +5587,7 @@ export declare class DollarBars { batch(open: Array, high: Array, low: Array, close: Array, volume: Array): Array dollarPerBar(): number reset(): void + name(): string } export type ImbalanceBarsNode = ImbalanceBars export declare class ImbalanceBars { @@ -5115,6 +5596,7 @@ export declare class ImbalanceBars { batch(open: Array, high: Array, low: Array, close: Array): Array threshold(): number reset(): void + name(): string } export type RunBarsNode = RunBars export declare class RunBars { @@ -5123,6 +5605,7 @@ export declare class RunBars { batch(open: Array, high: Array, low: Array, close: Array): Array runLength(): number reset(): void + name(): string } export type ThreeLineBreakBarsNode = ThreeLineBreakBars export declare class ThreeLineBreakBars { @@ -5131,6 +5614,7 @@ export declare class ThreeLineBreakBars { batch(close: Array): Array lines(): number reset(): void + name(): string } export type AlphaNode = Alpha export declare class Alpha { @@ -5138,6 +5622,7 @@ export declare class Alpha { update(asset: number, benchmark: number): number | null batch(asset: Array, benchmark: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5147,6 +5632,7 @@ export declare class SessionVwap { update(open: number, high: number, low: number, close: number, volume: number, timestamp: number): number | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array, timestamp: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number utcOffsetMinutes(): number @@ -5157,6 +5643,7 @@ export declare class OvernightGap { update(open: number, high: number, low: number, close: number, volume: number, timestamp: number): number | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array, timestamp: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number utcOffsetMinutes(): number @@ -5167,6 +5654,7 @@ export declare class SeasonalZScore { update(open: number, high: number, low: number, close: number, volume: number, timestamp: number): number | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array, timestamp: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number utcOffsetMinutes(): number @@ -5177,6 +5665,7 @@ export declare class TimeOfDayReturnProfile { update(open: number, high: number, low: number, close: number, volume: number, timestamp: number): Array | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array, timestamp: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number buckets(): number @@ -5188,6 +5677,7 @@ export declare class IntradayVolatilityProfile { update(open: number, high: number, low: number, close: number, volume: number, timestamp: number): Array | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array, timestamp: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number buckets(): number @@ -5199,6 +5689,7 @@ export declare class VolumeByTimeProfile { update(open: number, high: number, low: number, close: number, volume: number, timestamp: number): Array | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array, timestamp: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number buckets(): number @@ -5210,6 +5701,7 @@ export declare class DayOfWeekProfile { update(open: number, high: number, low: number, close: number, volume: number, timestamp: number): Array | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array, timestamp: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number utcOffsetMinutes(): number @@ -5220,6 +5712,7 @@ export declare class AverageDailyRange { update(open: number, high: number, low: number, close: number, volume: number, timestamp: number): number | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array, timestamp: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5229,6 +5722,7 @@ export declare class TurnOfMonth { update(open: number, high: number, low: number, close: number, volume: number, timestamp: number): number | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array, timestamp: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5238,6 +5732,7 @@ export declare class SessionHighLow { update(open: number, high: number, low: number, close: number, volume: number, timestamp: number): SessionHighLowValue | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array, timestamp: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5247,6 +5742,7 @@ export declare class SessionRange { update(open: number, high: number, low: number, close: number, volume: number, timestamp: number): SessionRangeValue | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array, timestamp: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5256,6 +5752,7 @@ export declare class OvernightIntradayReturn { update(open: number, high: number, low: number, close: number, volume: number, timestamp: number): OvernightIntradayReturnValue | null batch(open: Array, high: Array, low: Array, close: Array, volume: Array, timestamp: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5265,6 +5762,7 @@ export declare class FibRetracement { update(high: number, low: number): FibRetracementValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5274,6 +5772,7 @@ export declare class FibExtension { update(high: number, low: number): FibExtensionValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5283,6 +5782,7 @@ export declare class FibProjection { update(high: number, low: number): FibProjectionValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5292,6 +5792,7 @@ export declare class AutoFib { update(high: number, low: number): AutoFibValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5301,6 +5802,7 @@ export declare class GoldenPocket { update(high: number, low: number): GoldenPocketValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5310,6 +5812,7 @@ export declare class FibConfluence { update(high: number, low: number): FibConfluenceValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5319,6 +5822,7 @@ export declare class FibFan { update(high: number, low: number): FibFanValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5328,6 +5832,7 @@ export declare class FibArcs { update(high: number, low: number): FibArcsValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5337,6 +5842,7 @@ export declare class FibChannel { update(high: number, low: number): FibChannelValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5346,6 +5852,7 @@ export declare class FibTimeZones { update(high: number, low: number): FibTimeZonesValue | null batch(high: Array, low: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5355,6 +5862,7 @@ export declare class VolumeRsi { update(close: number, volume: number): number | null batch(close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5364,6 +5872,7 @@ export declare class Wad { update(high: number, low: number, close: number): number | null batch(high: Array, low: Array, close: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5373,6 +5882,7 @@ export declare class TwiggsMoneyFlow { update(high: number, low: number, close: number, volume: number): number | null batch(high: Array, low: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5382,6 +5892,7 @@ export declare class TradeVolumeIndex { update(close: number, volume: number): number | null batch(close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5391,6 +5902,7 @@ export declare class IntradayIntensity { update(high: number, low: number, close: number, volume: number): number | null batch(high: Array, low: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5400,6 +5912,7 @@ export declare class BetterVolume { update(high: number, low: number, close: number, volume: number): number | null batch(high: Array, low: Array, close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } @@ -5413,6 +5926,7 @@ export declare class VolumeWeightedMacd { */ batch(close: Array, volume: Array): Array reset(): void + name(): string isReady(): boolean warmupPeriod(): number } diff --git a/bindings/node/src/lib.rs b/bindings/node/src/lib.rs index a94a68a1..69ae29cd 100644 --- a/bindings/node/src/lib.rs +++ b/bindings/node/src/lib.rs @@ -61,6 +61,11 @@ macro_rules! node_scalar_indicator { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -146,6 +151,11 @@ impl RviVolatilityNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -284,6 +294,11 @@ impl UpsidePotentialRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -320,6 +335,11 @@ impl M2MeasureNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -355,6 +375,11 @@ impl BandpassFilterNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -391,6 +416,11 @@ impl EvenBetterSinewaveNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -427,6 +457,11 @@ impl AutocorrelationPeriodogramNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -465,6 +500,11 @@ impl ShannonEntropyNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -501,6 +541,11 @@ impl SampleEntropyNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -536,6 +581,11 @@ impl EwmaVolatilityNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -571,6 +621,11 @@ impl Garch11Node { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -607,6 +662,11 @@ impl VolatilityOfVolatilityNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -688,6 +748,11 @@ impl VolatilityConeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -723,6 +788,11 @@ impl JumpIndicatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -758,6 +828,11 @@ impl RegimeLabelNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -793,6 +868,11 @@ impl RollingQuantileNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -830,6 +910,11 @@ impl AutocorrelationNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -867,6 +952,11 @@ impl HurstExponentNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -918,6 +1008,11 @@ macro_rules! node_pair_indicator { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1014,6 +1109,11 @@ impl PairSpreadZScoreNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1080,6 +1180,11 @@ impl LeadLagCrossCorrelationNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1150,6 +1255,11 @@ impl CointegrationNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1220,6 +1330,11 @@ impl RelativeStrengthABNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1271,6 +1386,11 @@ impl VarianceRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1322,6 +1442,11 @@ impl GrangerCausalityNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1391,6 +1516,11 @@ impl KalmanHedgeRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1466,6 +1596,11 @@ impl SpreadBollingerBandsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1527,6 +1662,11 @@ impl MacdNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1576,6 +1716,11 @@ impl MacdFixNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1642,6 +1787,11 @@ impl MacdExtNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1704,6 +1854,11 @@ impl BollingerNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1763,6 +1918,11 @@ impl AtrNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1816,6 +1976,11 @@ impl PlusDmNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1869,6 +2034,11 @@ impl MinusDmNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1922,6 +2092,11 @@ impl PlusDiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1975,6 +2150,11 @@ impl MinusDiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2028,6 +2208,11 @@ impl DxNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2081,6 +2266,11 @@ impl MidPriceNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2147,6 +2337,11 @@ impl AvgPriceNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2220,6 +2415,11 @@ impl SarExtNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2279,6 +2479,11 @@ impl HtPhasorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2344,6 +2549,11 @@ impl CloseVsOpenNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2409,6 +2619,11 @@ impl BodySizePctNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2474,6 +2689,11 @@ impl WickRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2539,6 +2759,11 @@ impl HighLowRangeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2592,6 +2817,11 @@ impl StochasticCciNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2653,6 +2883,11 @@ impl ImiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2705,6 +2940,11 @@ impl QqeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2775,6 +3015,11 @@ impl ElderRayNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2828,6 +3073,11 @@ impl TtmTrendNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2880,6 +3130,11 @@ impl QstickNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2916,6 +3171,11 @@ impl PolarizedFractalEfficiencyNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -2951,6 +3211,11 @@ impl WavePmNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3026,6 +3291,11 @@ impl GatorOscillatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3097,6 +3367,11 @@ impl KasePermissionStochasticNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3150,6 +3425,11 @@ impl VolatilityRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3203,6 +3483,11 @@ impl ProjectionOscillatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3256,6 +3541,11 @@ impl TimeBasedStopNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3309,6 +3599,11 @@ impl AdaptiveCciNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3371,6 +3666,11 @@ impl StochNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3425,6 +3725,11 @@ impl ObvNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3495,6 +3800,11 @@ impl AdxNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3547,6 +3857,11 @@ impl AdxrNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3573,6 +3888,11 @@ impl CciNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3625,6 +3945,11 @@ impl WilliamsRNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3677,6 +4002,11 @@ impl MfiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3736,6 +4066,11 @@ impl PsarNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3796,6 +4131,11 @@ impl KeltnerNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3868,6 +4208,11 @@ impl DonchianNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3928,6 +4273,11 @@ impl VwapNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3991,6 +4341,11 @@ impl RollingVwapNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4050,6 +4405,11 @@ impl AoNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4103,6 +4463,11 @@ impl AroonNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4196,6 +4561,11 @@ impl InertiaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4235,6 +4605,11 @@ impl ConnorsRsiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4269,6 +4644,11 @@ impl LaguerreRsiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4322,6 +4702,11 @@ impl SmiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4401,6 +4786,11 @@ impl KstNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4453,6 +4843,11 @@ impl PgoNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4512,6 +4907,11 @@ impl RviNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4564,6 +4964,11 @@ impl AwesomeOscillatorHistogramNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4599,6 +5004,11 @@ impl StcNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4644,6 +5054,11 @@ impl ElderImpulseNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4699,6 +5114,11 @@ impl ZeroLagMacdNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4733,6 +5153,11 @@ impl CfoNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4767,6 +5192,11 @@ impl ApoNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4794,6 +5224,11 @@ impl KamaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4851,6 +5286,11 @@ impl EvwmaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4887,6 +5327,11 @@ impl AlligatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4944,6 +5389,11 @@ impl JmaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4980,6 +5430,11 @@ impl VidyaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5016,6 +5471,11 @@ impl AlmaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5061,6 +5521,11 @@ impl T3Node { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5098,6 +5563,11 @@ impl GeneralizedDemaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5135,6 +5605,11 @@ impl HoltWintersNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5172,6 +5647,11 @@ impl RmiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5220,6 +5700,11 @@ impl DerivativeOscillatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5258,6 +5743,11 @@ impl MacdHistogramNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5296,6 +5786,11 @@ impl PpoHistogramNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5333,6 +5828,11 @@ impl TsiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5370,6 +5870,11 @@ impl PmoNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5409,6 +5914,11 @@ impl TiiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5477,6 +5987,11 @@ impl AdlNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5533,6 +6048,11 @@ impl VolumePriceTrendNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5595,6 +6115,11 @@ impl ChaikinMoneyFlowNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5657,6 +6182,11 @@ impl ChaikinOscillatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5707,6 +6237,11 @@ impl ForceIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5757,6 +6292,11 @@ impl NviNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5807,6 +6347,11 @@ impl PviNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5852,6 +6397,11 @@ impl VolumeOscillatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5914,6 +6464,11 @@ impl KvoNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5970,6 +6525,11 @@ impl AdOscillatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6012,6 +6572,11 @@ impl AnchoredRsiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6079,6 +6644,11 @@ impl AnchoredVwapNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6141,6 +6711,11 @@ impl DemandIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6191,6 +6766,11 @@ impl TsvNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6241,6 +6821,11 @@ impl VzoNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6297,6 +6882,11 @@ impl MarketFacilitationIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6352,6 +6942,11 @@ impl EaseOfMovementNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6426,6 +7021,11 @@ impl SuperTrendNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6500,6 +7100,11 @@ impl ChandelierExitNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6579,6 +7184,11 @@ impl ChandeKrollStopNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6634,6 +7244,11 @@ impl AtrTrailingStopNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6689,6 +7304,11 @@ impl HiLoActivatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6744,6 +7364,11 @@ impl VoltyStopNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6799,6 +7424,11 @@ impl YoyoExitNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6867,6 +7497,11 @@ impl DonchianStopNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6904,6 +7539,11 @@ impl PercentageTrailingStopNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6941,6 +7581,11 @@ impl StepTrailingStopNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6978,6 +7623,11 @@ impl RenkoTrailingStopNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7052,6 +7702,11 @@ impl KaseDevStopNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7126,6 +7781,11 @@ impl ElderSafeZoneNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7201,6 +7861,11 @@ impl AtrRatchetNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7270,6 +7935,11 @@ impl NrtrNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7344,6 +8014,11 @@ impl ModifiedMaStopNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7405,6 +8080,11 @@ impl TypicalPriceNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7461,6 +8141,11 @@ impl MedianPriceNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7522,6 +8207,11 @@ impl WeightedCloseNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7559,6 +8249,11 @@ impl LinearRegressionNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7596,6 +8291,11 @@ impl LinRegSlopeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7651,6 +8351,11 @@ impl AcceleratorOscillatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7718,6 +8423,11 @@ impl BalanceOfPowerNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7773,6 +8483,11 @@ impl ChoppinessIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7834,6 +8549,11 @@ impl TrueRangeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7885,6 +8605,11 @@ impl ChaikinVolatilityNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7948,6 +8673,11 @@ impl YangZhangVolatilityNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8011,6 +8741,11 @@ impl RogersSatchellVolatilityNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8074,6 +8809,11 @@ impl GarmanKlassVolatilityNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8125,6 +8865,11 @@ impl ParkinsonVolatilityNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8162,6 +8907,11 @@ impl LinRegAngleNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8199,6 +8949,11 @@ impl BollingerBandwidthNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8236,6 +8991,11 @@ impl PercentBNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8291,6 +9051,11 @@ impl NatrNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8329,6 +9094,11 @@ impl HistoricalVolatilityNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8379,6 +9149,11 @@ impl AroonOscillatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8477,6 +9252,11 @@ impl WaveTrendNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8537,6 +9317,11 @@ impl RwiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8597,6 +9382,11 @@ impl VortexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8647,6 +9437,11 @@ impl MassIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8685,6 +9480,11 @@ impl StochRsiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8741,6 +9541,11 @@ impl UltimateOscillatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8778,6 +9583,11 @@ impl PpoNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8816,6 +9626,11 @@ impl CoppockNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8864,6 +9679,11 @@ impl VwmaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8922,6 +9742,11 @@ impl MaEnvelopeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8997,6 +9822,11 @@ impl AccelerationBandsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9073,6 +9903,11 @@ impl StarcBandsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9148,6 +9983,11 @@ impl AtrBandsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9223,6 +10063,11 @@ impl HurstChannelNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9279,6 +10124,11 @@ impl LinRegChannelNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9335,6 +10185,11 @@ impl StandardErrorBandsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9391,6 +10246,11 @@ impl QuartileBandsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9447,6 +10307,11 @@ impl BomarBandsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9503,6 +10368,11 @@ impl MedianChannelNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9568,6 +10438,11 @@ impl ProjectionBandsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9649,6 +10524,11 @@ impl CentralPivotRangeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9741,6 +10621,11 @@ impl MurreyMathLinesNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9806,6 +10691,11 @@ impl AndrewsPitchforkNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9878,6 +10768,11 @@ impl VolumeWeightedSrNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9933,6 +10828,11 @@ impl PivotReversalNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10000,6 +10900,11 @@ impl DoubleBollingerNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10073,6 +10978,11 @@ impl TtmSqueezeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10136,6 +11046,11 @@ impl FractalChaosBandsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10220,6 +11135,11 @@ impl VwapStdDevBandsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10306,6 +11226,11 @@ impl ClassicPivotsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10397,6 +11322,11 @@ impl FibonacciPivotsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10494,6 +11424,11 @@ impl CamarillaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10579,6 +11514,11 @@ impl WoodiePivotsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10660,6 +11600,11 @@ impl DemarkPivotsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10732,6 +11677,11 @@ impl WilliamsFractalsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10802,6 +11752,11 @@ impl ZigZagNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10856,6 +11811,11 @@ impl TdSetupNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10944,6 +11904,11 @@ impl TdSequentialNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10994,6 +11959,11 @@ impl TdDeMarkerNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11044,6 +12014,11 @@ impl TdReiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11111,6 +12086,11 @@ impl TdPressureNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11177,6 +12157,11 @@ impl TdComboNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11232,6 +12217,11 @@ impl TdDWaveNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11295,6 +12285,11 @@ impl TdMovingAverageNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11361,6 +12356,11 @@ impl TdCountdownNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11435,6 +12435,11 @@ impl TdLinesNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11517,6 +12522,11 @@ impl TdRangeProjectionNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11578,6 +12588,11 @@ impl TdDifferentialNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11645,6 +12660,11 @@ impl TdOpenNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11720,6 +12740,11 @@ impl TdRiskLevelNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11757,6 +12782,11 @@ impl InverseFisherTransformNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11792,6 +12822,11 @@ impl DecyclerOscillatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11828,6 +12863,11 @@ impl RoofingFilterNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11864,6 +12904,11 @@ impl EmpiricalModeDecompositionNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11905,6 +12950,11 @@ impl HtDcPhaseNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11946,6 +12996,11 @@ impl HtTrendModeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11987,6 +13042,11 @@ impl HilbertDominantCycleNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12028,6 +13088,11 @@ impl AdaptiveCycleNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12073,6 +13138,11 @@ impl SineWaveNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12125,6 +13195,11 @@ impl MamaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12160,6 +13235,11 @@ impl FamaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12268,6 +13348,11 @@ impl IchimokuNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12354,6 +13439,11 @@ impl HeikinAshiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12414,6 +13504,11 @@ impl HeikinAshiOscillatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12469,6 +13564,11 @@ impl ThreeLineBreakNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12548,6 +13648,11 @@ impl SmoothedHeikinAshiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12620,6 +13725,11 @@ impl EquivolumeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12695,6 +13805,11 @@ impl CandleVolumeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12750,6 +13865,11 @@ impl FryPanBottomNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12805,6 +13925,11 @@ impl DumplingTopNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12860,6 +13985,11 @@ impl NewPriceLinesNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12896,6 +14026,11 @@ impl ValueAreaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13007,6 +14142,11 @@ impl NakedPocNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13060,6 +14200,11 @@ impl SinglePrintsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13121,6 +14266,11 @@ impl ProfileShapeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13195,6 +14345,11 @@ impl HighLowVolumeNodesNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13272,6 +14427,11 @@ impl CompositeProfileNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13298,6 +14458,11 @@ impl VolumeProfileNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13377,6 +14542,11 @@ impl TpoProfileNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13444,6 +14614,11 @@ impl InitialBalanceNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13511,6 +14686,11 @@ impl OpeningRangeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13627,6 +14807,11 @@ macro_rules! node_candle_pattern { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13699,6 +14884,11 @@ impl DojiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13940,6 +15130,11 @@ macro_rules! node_ob_indicator { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14004,6 +15199,11 @@ impl OrderBookImbalanceTopNNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14082,6 +15282,11 @@ macro_rules! node_trade_indicator { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14142,6 +15347,11 @@ impl TradeImbalanceNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14193,6 +15403,11 @@ impl TradeSignAutocorrelationNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14244,6 +15459,11 @@ impl PinNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14292,6 +15512,11 @@ impl OrderFlowImbalanceNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14343,6 +15568,11 @@ impl VpinNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14394,6 +15624,11 @@ impl AmihudIlliquidityNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14445,6 +15680,11 @@ impl RollMeasureNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14532,6 +15772,11 @@ macro_rules! node_trade_quote_indicator { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14596,6 +15841,11 @@ impl RealizedSpreadNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14656,6 +15906,11 @@ impl KylesLambdaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14744,6 +15999,11 @@ impl FootprintNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14994,6 +16254,11 @@ impl FundingRateNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15033,6 +16298,11 @@ impl FundingRateMeanNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15072,6 +16342,11 @@ impl FundingRateZScoreNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15126,6 +16401,11 @@ impl FundingBasisNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15171,6 +16451,11 @@ impl OpenInterestDeltaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15223,6 +16508,11 @@ impl OIPriceDivergenceNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15281,6 +16571,11 @@ impl OIWeightedNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15335,6 +16630,11 @@ impl LongShortRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15399,6 +16699,11 @@ impl TakerBuySellRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15487,6 +16792,11 @@ impl LiquidationFeaturesNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15547,6 +16857,11 @@ impl TermStructureBasisNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15607,6 +16922,11 @@ impl CalendarSpreadNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15678,6 +16998,11 @@ impl EstimatedLeverageRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15754,6 +17079,11 @@ impl OiToVolumeRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15809,6 +17139,11 @@ impl PerpetualPremiumIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15849,6 +17184,11 @@ impl FundingImpliedAprNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15889,6 +17229,11 @@ impl OpenInterestMomentumNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -15983,6 +17328,11 @@ impl AdvanceDeclineNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16113,6 +17463,11 @@ impl AdvanceDeclineRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16181,6 +17536,11 @@ impl AdVolumeLineNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16249,6 +17609,11 @@ impl McClellanOscillatorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16317,6 +17682,11 @@ impl McClellanSummationIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16385,6 +17755,11 @@ impl TrinNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16447,6 +17822,11 @@ impl BreadthThrustNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16515,6 +17895,11 @@ impl NewHighsNewLowsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16577,6 +17962,11 @@ impl HighLowIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16655,6 +18045,11 @@ impl PercentAboveMaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16723,6 +18118,11 @@ impl UpDownVolumeRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16805,6 +18205,11 @@ impl BullishPercentIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16873,6 +18278,11 @@ impl CumulativeVolumeIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -16941,6 +18351,11 @@ impl AbsoluteBreadthIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17009,6 +18424,11 @@ impl TickIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17050,6 +18470,11 @@ impl SharpeRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17085,6 +18510,11 @@ impl SortinoRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17120,6 +18550,11 @@ impl CalmarRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17155,6 +18590,11 @@ impl OmegaRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17190,6 +18630,11 @@ impl MaxDrawdownNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17225,6 +18670,11 @@ impl AverageDrawdownNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17269,6 +18719,11 @@ impl DrawdownDurationNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17304,6 +18759,11 @@ impl PainIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17339,6 +18799,11 @@ impl ValueAtRiskNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17374,6 +18839,11 @@ impl ConditionalValueAtRiskNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17409,6 +18879,11 @@ impl ProfitFactorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17444,6 +18919,11 @@ impl GainLossRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17485,6 +18965,11 @@ impl RecoveryFactorNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17520,6 +19005,11 @@ impl KellyCriterionNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17576,6 +19066,11 @@ impl TreynorRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17624,6 +19119,11 @@ impl InformationRatioNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -17696,6 +19196,11 @@ impl RenkoBarsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[napi(object)] @@ -17754,6 +19259,11 @@ impl KagiBarsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[napi(object)] @@ -17816,6 +19326,11 @@ impl PointAndFigureBarsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[napi(object)] @@ -17874,6 +19389,11 @@ impl RangeBarsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[napi(object)] @@ -17962,6 +19482,11 @@ impl TickBarsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[napi(object)] @@ -18050,6 +19575,11 @@ impl VolumeBarsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[napi(object)] @@ -18141,6 +19671,11 @@ impl DollarBarsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[napi(object)] @@ -18226,6 +19761,11 @@ impl ImbalanceBarsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[napi(object)] @@ -18311,6 +19851,11 @@ impl RunBarsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[napi(object)] @@ -18369,6 +19914,11 @@ impl ThreeLineBreakBarsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[napi(js_name = "Alpha")] @@ -18409,6 +19959,11 @@ impl AlphaNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -18506,6 +20061,11 @@ macro_rules! node_seasonality_offset_scalar { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -18582,6 +20142,11 @@ macro_rules! node_seasonality_bucket_profile { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -18661,6 +20226,11 @@ macro_rules! node_seasonality_offset_profile { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -18749,6 +20319,11 @@ impl AverageDailyRangeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -18805,6 +20380,11 @@ impl TurnOfMonthNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -18876,6 +20456,11 @@ impl SessionHighLowNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -18950,6 +20535,11 @@ impl SessionRangeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19021,6 +20611,11 @@ impl OvernightIntradayReturnNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19104,6 +20699,11 @@ impl FibRetracementNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19173,6 +20773,11 @@ impl FibExtensionNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19239,6 +20844,11 @@ impl FibProjectionNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19314,6 +20924,11 @@ impl AutoFibNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19377,6 +20992,11 @@ impl GoldenPocketNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19437,6 +21057,11 @@ impl FibConfluenceNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19536,6 +21161,11 @@ impl FibFanNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19605,6 +21235,11 @@ impl FibArcsNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19677,6 +21312,11 @@ impl FibChannelNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19743,6 +21383,11 @@ impl FibTimeZonesNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19799,6 +21444,11 @@ impl VolumeRsiNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19854,6 +21504,11 @@ impl WadNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19922,6 +21577,11 @@ impl TwiggsMoneyFlowNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -19972,6 +21632,11 @@ impl TradeVolumeIndexNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -20034,6 +21699,11 @@ impl IntradayIntensityNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -20102,6 +21772,11 @@ impl BetterVolumeNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -20176,6 +21851,11 @@ impl VolumeWeightedMacdNode { pub fn reset(&mut self) { self.inner.reset(); } + + #[napi] + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[napi(js_name = "isReady")] pub fn is_ready(&self) -> bool { self.inner.is_ready() diff --git a/bindings/python/src/lib.rs b/bindings/python/src/lib.rs index 7c141e18..41c1a551 100644 --- a/bindings/python/src/lib.rs +++ b/bindings/python/src/lib.rs @@ -156,6 +156,10 @@ impl PySma { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -211,6 +215,10 @@ impl PyEma { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -262,6 +270,10 @@ impl PyWma { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -314,6 +326,10 @@ impl PyRsi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -371,6 +387,10 @@ impl PyMacd { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -436,6 +456,10 @@ impl PyBb { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -548,6 +572,10 @@ impl PyAtr { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -616,6 +644,10 @@ impl PyPlusDm { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -684,6 +716,10 @@ impl PyMinusDm { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -752,6 +788,10 @@ impl PyPlusDi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -820,6 +860,10 @@ impl PyMinusDi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -888,6 +932,10 @@ impl PyDx { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -956,6 +1004,10 @@ impl PyMidPrice { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1004,6 +1056,10 @@ impl PyMidPoint { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1071,6 +1127,10 @@ impl PyAvgPrice { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1119,6 +1179,10 @@ impl PyRocp { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1167,6 +1231,10 @@ impl PyRocr { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1215,6 +1283,10 @@ impl PyRocr100 { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1267,6 +1339,10 @@ impl PyLinRegIntercept { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1315,6 +1391,10 @@ impl PyTsf { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1379,6 +1459,10 @@ impl PyMacdFix { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1472,6 +1556,10 @@ impl PySarExt { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1556,6 +1644,10 @@ impl PyMacdExt { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1612,6 +1704,10 @@ impl PyHtPhasor { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1660,6 +1756,10 @@ impl PyLogReturn { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1712,6 +1812,10 @@ impl PyRealizedVolatility { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1760,6 +1864,10 @@ impl PyRollingIqr { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1812,6 +1920,10 @@ impl PyRollingPercentileRank { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1868,6 +1980,10 @@ impl PyRollingQuantile { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -1939,6 +2055,10 @@ impl PyCloseVsOpen { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2006,6 +2126,10 @@ impl PyBodySizePct { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2073,6 +2197,10 @@ impl PyWickRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2140,6 +2268,10 @@ impl PyHighLowRange { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2188,6 +2320,10 @@ impl PyTrendLabel { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2240,6 +2376,10 @@ impl PyJumpIndicator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2293,6 +2433,10 @@ impl PyRegimeLabel { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2342,6 +2486,10 @@ impl PyWinRate { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2390,6 +2538,10 @@ impl PyExpectancy { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2438,6 +2590,10 @@ impl PySineWeightedMa { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2486,6 +2642,10 @@ impl PyGeometricMa { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2534,6 +2694,10 @@ impl PyEhma { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2582,6 +2746,10 @@ impl PyMedianMa { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2634,6 +2802,10 @@ impl PyAdaptiveLaguerreFilter { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2686,6 +2858,10 @@ impl PyDisparityIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2734,6 +2910,10 @@ impl PyFisherRsi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2782,6 +2962,10 @@ impl PyRsx { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2834,6 +3018,10 @@ impl PyDynamicMomentumIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2902,6 +3090,10 @@ impl PyStochasticCci { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -2970,6 +3162,10 @@ impl PyTtmTrend { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3022,6 +3218,10 @@ impl PyTrendStrengthIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3087,6 +3287,10 @@ impl PyQstick { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3140,6 +3344,10 @@ impl PyPolarizedFractalEfficiency { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3189,6 +3397,10 @@ impl PyWavePm { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3262,6 +3474,10 @@ impl PyGatorOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3334,6 +3550,10 @@ impl PyKasePermissionStochastic { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3379,6 +3599,10 @@ impl PyTsfOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3423,6 +3647,10 @@ impl PyMacdHistogram { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3468,6 +3696,10 @@ impl PyPpoHistogram { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3521,6 +3753,10 @@ impl PyBipowerVariation { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3593,6 +3829,10 @@ impl PyVolatilityRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3665,6 +3905,10 @@ impl PyProjectionOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3734,6 +3978,10 @@ impl PyTimeBasedStop { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3782,6 +4030,10 @@ impl PyJarqueBera { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3830,6 +4082,10 @@ impl PyRollingMinMaxScaler { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3878,6 +4134,10 @@ impl PyHighpassFilter { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3926,6 +4186,10 @@ impl PyReflex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -3974,6 +4238,10 @@ impl PyTrendflex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4022,6 +4290,10 @@ impl PyCorrelationTrendIndicator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4070,6 +4342,10 @@ impl PyAdaptiveRsi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4118,6 +4394,10 @@ impl PyUniversalOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4186,6 +4466,10 @@ impl PyAdaptiveCci { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4234,6 +4518,10 @@ impl PySterlingRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4282,6 +4570,10 @@ impl PyBurkeRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4330,6 +4622,10 @@ impl PyMartinRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4378,6 +4674,10 @@ impl PyTailRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4426,6 +4726,10 @@ impl PyKRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4478,6 +4782,10 @@ impl PyCommonSenseRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4530,6 +4838,10 @@ impl PyGainToPainRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4602,6 +4914,10 @@ impl PyImi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4660,6 +4976,10 @@ impl PyQqe { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4730,6 +5050,10 @@ impl PyElderRay { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4799,6 +5123,10 @@ impl PyStoch { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4863,6 +5191,10 @@ impl PyObv { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4910,6 +5242,10 @@ impl PyDema { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -4957,6 +5293,10 @@ impl PyTema { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5004,6 +5344,10 @@ impl PyHma { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5048,6 +5392,10 @@ impl PyKama { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5115,6 +5463,10 @@ impl PyInertia { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5160,6 +5512,10 @@ impl PyConnorsRsi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5209,6 +5565,10 @@ impl PyLaguerreRsi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5272,6 +5632,10 @@ impl PySmi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5345,6 +5709,10 @@ impl PyKst { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5412,6 +5780,10 @@ impl PyPgo { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5483,6 +5855,10 @@ impl PyRvi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5531,6 +5907,10 @@ impl PyFrama { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5594,6 +5974,10 @@ impl PyEvwma { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5658,6 +6042,10 @@ impl PyAlligator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5703,6 +6091,10 @@ impl PyJma { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5748,6 +6140,10 @@ impl PyVidya { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5801,6 +6197,10 @@ impl PyMcGinleyDynamic { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5857,6 +6257,10 @@ impl PyAlma { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5923,6 +6327,10 @@ impl PyAoHist { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -5968,6 +6376,10 @@ impl PyStc { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6019,6 +6431,10 @@ impl PyElderImpulse { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6077,6 +6493,10 @@ impl PyZeroLagMacd { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6126,6 +6546,10 @@ impl PyCfo { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6170,6 +6594,10 @@ impl PyApo { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6238,6 +6666,10 @@ impl PyCci { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6286,6 +6718,10 @@ impl PyRoc { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6349,6 +6785,10 @@ impl PyWilliamsR { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6418,6 +6858,10 @@ impl PyAdx { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6489,6 +6933,10 @@ impl PyAdxr { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6556,6 +7004,10 @@ impl PyMfi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6597,6 +7049,10 @@ impl PyTrix { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6657,6 +7113,10 @@ impl PyPsar { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6726,6 +7186,10 @@ impl PyKeltner { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6787,6 +7251,10 @@ impl PyDonchian { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6850,6 +7318,10 @@ impl PyVwap { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6917,6 +7389,10 @@ impl PyRollingVwap { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -6978,6 +7454,10 @@ impl PyAo { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7038,6 +7518,10 @@ impl PyAroon { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7106,6 +7590,10 @@ impl PyAdl { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7173,6 +7661,10 @@ impl PyVolumePriceTrend { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7233,6 +7725,10 @@ impl PyBollingerBandwidth { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7293,6 +7789,10 @@ impl PyPercentB { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7369,6 +7869,10 @@ impl PyNatr { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7421,6 +7925,10 @@ impl PyStdDev { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7473,6 +7981,10 @@ impl PyUlcerIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7529,6 +8041,10 @@ impl PyHistoricalVolatility { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7600,6 +8116,10 @@ impl PyAroonOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7675,6 +8195,10 @@ impl PyVortex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7750,6 +8274,10 @@ impl PyRwi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7830,6 +8358,10 @@ impl PyWaveTrend { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7897,6 +8429,10 @@ impl PyMassIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -7950,6 +8486,10 @@ impl PyPpo { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8007,6 +8547,10 @@ impl PyDpo { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8059,6 +8603,10 @@ impl PyCoppock { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8112,6 +8660,10 @@ impl PyStochRsi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8189,6 +8741,10 @@ impl PyUltimateOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8242,6 +8798,10 @@ impl PyMom { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8294,6 +8854,10 @@ impl PyCmo { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8346,6 +8910,10 @@ impl PyTsi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8399,6 +8967,10 @@ impl PyPmo { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8452,6 +9024,10 @@ impl PyTii { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8508,6 +9084,10 @@ impl PyZlema { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8564,6 +9144,10 @@ impl PyT3 { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8620,6 +9204,10 @@ impl PyGeneralizedDema { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8688,6 +9276,10 @@ impl PyHoltWinters { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8744,6 +9336,10 @@ impl PyRmi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8802,6 +9398,10 @@ impl PyDerivativeOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8866,6 +9466,10 @@ impl PyVwma { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8917,6 +9521,10 @@ impl PySmma { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -8968,6 +9576,10 @@ impl PyTrima { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9044,6 +9656,10 @@ impl PyChaikinMoneyFlow { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9120,6 +9736,10 @@ impl PyChaikinOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9185,6 +9805,10 @@ impl PyForceIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9245,6 +9869,10 @@ impl PyNvi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9304,6 +9932,10 @@ impl PyPvi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9363,6 +9995,10 @@ impl PyVolumeOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9436,6 +10072,10 @@ impl PyKvo { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9500,6 +10140,10 @@ impl PyAdOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9552,6 +10196,10 @@ impl PyAnchoredRsi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9623,6 +10271,10 @@ impl PyAnchoredVwap { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9695,6 +10347,10 @@ impl PyDemandIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9759,6 +10415,10 @@ impl PyTsv { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9823,6 +10483,10 @@ impl PyVzo { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9890,6 +10554,10 @@ impl PyMarketFacilitationIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -9966,6 +10634,10 @@ impl PyEaseOfMovement { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10045,6 +10717,10 @@ impl PySuperTrend { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10125,6 +10801,10 @@ impl PyChandelierExit { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10206,6 +10886,10 @@ impl PyChandeKrollStop { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10281,6 +10965,10 @@ impl PyAtrTrailingStop { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10349,6 +11037,10 @@ impl PyHiLoActivator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10416,6 +11108,10 @@ impl PyVoltyStop { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10488,6 +11184,10 @@ impl PyYoyoExit { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10556,6 +11256,10 @@ impl PyDonchianStop { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10608,6 +11312,10 @@ impl PyPercentageTrailingStop { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10660,6 +11368,10 @@ impl PyStepTrailingStop { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10712,6 +11424,10 @@ impl PyRenkoTrailingStop { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10787,6 +11503,10 @@ impl PyKaseDevStop { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10863,6 +11583,10 @@ impl PyElderSafeZone { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -10939,6 +11663,10 @@ impl PyAtrRatchet { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11017,6 +11745,10 @@ impl PyNrtr { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11096,6 +11828,10 @@ impl PyModifiedMaStop { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11159,6 +11895,10 @@ impl PyTypicalPrice { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11216,6 +11956,10 @@ impl PyMedianPrice { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11279,6 +12023,10 @@ impl PyWeightedClose { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11331,6 +12079,10 @@ impl PyLinearRegression { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11379,6 +12131,10 @@ impl PyLinRegSlope { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11446,6 +12202,10 @@ impl PyAcceleratorOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11518,6 +12278,10 @@ impl PyBalanceOfPower { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11590,6 +12354,10 @@ impl PyChoppinessIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11642,6 +12410,10 @@ impl PyVerticalHorizontalFilter { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11705,6 +12477,10 @@ impl PyTrueRange { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11771,6 +12547,10 @@ impl PyChaikinVolatility { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11820,6 +12600,10 @@ impl PyZScore { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11868,6 +12652,10 @@ impl PyLinRegAngle { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -11946,6 +12734,10 @@ impl PyYangZhangVolatility { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12023,6 +12815,10 @@ impl PyRogersSatchellVolatility { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12100,6 +12896,10 @@ impl PyGarmanKlassVolatility { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12167,6 +12967,10 @@ impl PyParkinsonVolatility { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12224,6 +13028,10 @@ impl PyRviVolatility { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12283,6 +13091,10 @@ impl PyMaEnvelope { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12354,6 +13166,10 @@ impl PyAccelerationBands { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12421,6 +13237,10 @@ impl PyStarcBands { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12488,6 +13308,10 @@ impl PyAtrBands { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12555,6 +13379,10 @@ impl PyHurstChannel { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12609,6 +13437,10 @@ impl PyLinRegChannel { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12667,6 +13499,10 @@ impl PyStandardErrorBands { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12721,6 +13557,10 @@ impl PyQuartileBands { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12775,6 +13615,10 @@ impl PyBomarBands { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12829,6 +13673,10 @@ impl PyMedianChannel { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12894,6 +13742,10 @@ impl PyProjectionBands { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -12965,6 +13817,10 @@ impl PyCentralPivotRange { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13045,6 +13901,10 @@ impl PyMurreyMathLines { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13111,6 +13971,10 @@ impl PyAndrewsPitchfork { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13182,6 +14046,10 @@ impl PyVolumeWeightedSr { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13243,6 +14111,10 @@ impl PyPivotReversal { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13312,6 +14184,10 @@ impl PyDoubleBollinger { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13381,6 +14257,10 @@ impl PyTtmSqueeze { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13447,6 +14327,10 @@ impl PyFractalChaosBands { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13529,6 +14413,10 @@ impl PyVwapStdDevBands { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13605,6 +14493,10 @@ impl PyClassicPivots { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13682,6 +14574,10 @@ impl PyFibonacciPivots { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13764,6 +14660,10 @@ impl PyCamarilla { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13835,6 +14735,10 @@ impl PyWoodiePivots { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13908,6 +14812,10 @@ impl PyDemarkPivots { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -13984,6 +14892,10 @@ impl PyWilliamsFractals { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14052,6 +14964,10 @@ impl PyZigZag { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14111,6 +15027,10 @@ impl PyTdSetup { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14202,6 +15122,10 @@ impl PyTdSequential { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14264,6 +15188,10 @@ impl PyTdDeMarker { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14329,6 +15257,10 @@ impl PyTdRei { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14409,6 +15341,10 @@ impl PyTdPressure { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14483,6 +15419,10 @@ impl PyTdCombo { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14543,6 +15483,10 @@ impl PyTdDWave { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14608,6 +15552,10 @@ impl PyTdMovingAverage { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14679,6 +15627,10 @@ impl PyTdCountdown { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14748,6 +15700,10 @@ impl PyTdLines { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14823,6 +15779,10 @@ impl PyTdRangeProjection { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14886,6 +15846,10 @@ impl PyTdDifferential { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -14949,6 +15913,10 @@ impl PyTdOpen { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15018,6 +15986,10 @@ impl PyTdRiskLevel { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15068,6 +16040,10 @@ macro_rules! py_scalar_one_period { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15138,6 +16114,10 @@ impl PyInverseFisherTransform { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15189,6 +16169,10 @@ impl PyDecyclerOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15238,6 +16222,10 @@ impl PyRoofingFilter { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15295,6 +16283,10 @@ impl PyEmd { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15348,6 +16340,10 @@ macro_rules! py_no_params_scalar { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15410,6 +16406,10 @@ impl PySineWave { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15470,6 +16470,10 @@ impl PyMama { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15523,6 +16527,10 @@ impl PyFama { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15624,6 +16632,10 @@ impl PyIchimoku { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15705,6 +16717,10 @@ impl PyHeikinAshi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15751,6 +16767,10 @@ impl PyVariance { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15822,6 +16842,10 @@ impl PyHeikinAshiOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15886,6 +16910,10 @@ impl PyThreeLineBreak { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -15966,6 +16994,10 @@ impl PySmoothedHeikinAshi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16033,6 +17065,10 @@ impl PyEquivolume { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16102,6 +17138,10 @@ impl PyCandleVolume { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16162,6 +17202,10 @@ impl PyFryPanBottom { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16222,6 +17266,10 @@ impl PyDumplingTop { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16282,6 +17330,10 @@ impl PyNewPriceLines { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16331,6 +17383,10 @@ impl PyCoefficientOfVariation { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16379,6 +17435,10 @@ impl PySkewness { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16427,6 +17487,10 @@ impl PyKurtosis { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16475,6 +17539,10 @@ impl PyStandardError { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16527,6 +17595,10 @@ impl PyDetrendedStdDev { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16575,6 +17647,10 @@ impl PyRSquared { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16631,6 +17707,10 @@ impl PyAutocorrelation { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16687,6 +17767,10 @@ impl PyMedianAbsoluteDeviation { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16739,6 +17823,10 @@ impl PyHurstExponent { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16807,6 +17895,10 @@ impl PyPearsonCorrelation { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16869,6 +17961,10 @@ impl PyBeta { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16929,6 +18025,10 @@ impl PyPairwiseBeta { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -16993,6 +18093,10 @@ impl PySpreadAr1Coefficient { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17061,6 +18165,10 @@ impl PyPairSpreadZScore { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17142,6 +18250,10 @@ impl PyLeadLagCrossCorrelation { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17222,6 +18334,10 @@ impl PyCointegration { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17306,6 +18422,10 @@ impl PyRelativeStrengthAB { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17374,6 +18494,10 @@ impl PyRollingCorrelation { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17438,6 +18562,10 @@ impl PyHasbrouckInformationShare { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17502,6 +18630,10 @@ impl PyRollingCovariance { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17562,6 +18694,10 @@ impl PyOuHalfLife { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17622,6 +18758,10 @@ impl PySpreadHurst { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17682,6 +18822,10 @@ impl PyDistanceSsd { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17746,6 +18890,10 @@ impl PyBetaNeutralSpread { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17810,6 +18958,10 @@ impl PyVarianceRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17882,6 +19034,10 @@ impl PyGrangerCausality { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -17966,6 +19122,10 @@ impl PyKalmanHedgeRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18051,6 +19211,10 @@ impl PySpreadBollingerBands { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18119,6 +19283,10 @@ impl PySpearmanCorrelation { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18197,6 +19365,10 @@ impl PyValueArea { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18291,6 +19463,10 @@ impl PyVolumeProfile { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18374,6 +19550,10 @@ impl PyTpoProfile { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18452,6 +19632,10 @@ impl PyInitialBalance { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18534,6 +19718,10 @@ impl PyOpeningRange { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18601,6 +19789,10 @@ impl PyNakedPoc { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18660,6 +19852,10 @@ impl PySinglePrints { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18725,6 +19921,10 @@ impl PyProfileShape { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18800,6 +20000,10 @@ impl PyHighLowVolumeNodes { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18876,6 +20080,10 @@ impl PyCompositeProfile { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -18951,6 +20159,10 @@ macro_rules! candle_pattern_no_param { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19023,6 +20235,10 @@ impl PyDoji { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19250,6 +20466,10 @@ macro_rules! py_ob_indicator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19322,6 +20542,10 @@ impl PyOrderBookImbalanceTopN { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19389,6 +20613,10 @@ macro_rules! py_trade_indicator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19453,6 +20681,10 @@ impl PyTradeImbalance { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19508,6 +20740,10 @@ impl PyTradeSignAutocorrelation { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19559,6 +20795,10 @@ impl PyPin { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19616,6 +20856,10 @@ impl PyOrderFlowImbalance { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19667,6 +20911,10 @@ impl PyVpin { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19723,6 +20971,10 @@ impl PyAmihudIlliquidity { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19774,6 +21026,10 @@ impl PyRollMeasure { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19850,6 +21106,10 @@ macro_rules! py_trade_quote_indicator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19912,6 +21172,10 @@ impl PyRealizedSpread { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -19966,6 +21230,10 @@ impl PyKylesLambda { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20053,6 +21321,10 @@ impl PyFootprint { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20302,6 +21574,10 @@ impl PyFundingRate { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20349,6 +21625,10 @@ impl PyFundingRateMean { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20396,6 +21676,10 @@ impl PyFundingRateZScore { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20449,6 +21733,10 @@ impl PyFundingBasis { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20496,6 +21784,10 @@ impl PyOpenInterestDelta { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20554,6 +21846,10 @@ impl PyOIPriceDivergence { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20607,6 +21903,10 @@ impl PyOIWeighted { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20664,6 +21964,10 @@ impl PyLongShortRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20724,6 +22028,10 @@ impl PyTakerBuySellRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20802,6 +22110,10 @@ impl PyLiquidationFeatures { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20862,6 +22174,10 @@ impl PyTermStructureBasis { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20921,6 +22237,10 @@ impl PyCalendarSpread { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -20990,6 +22310,10 @@ impl PyEstimatedLeverageRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21063,6 +22387,10 @@ impl PyOiToVolumeRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21120,6 +22448,10 @@ impl PyPerpetualPremiumIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21167,6 +22499,10 @@ impl PyFundingImpliedApr { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21217,6 +22553,10 @@ impl PyOpenInterestMomentum { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21312,6 +22652,10 @@ impl PyAdvanceDecline { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21440,6 +22784,10 @@ impl PyAdvanceDeclineRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21502,6 +22850,10 @@ impl PyAdVolumeLine { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21568,6 +22920,10 @@ impl PyMcClellanOscillator { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21634,6 +22990,10 @@ impl PyMcClellanSummationIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21696,6 +23056,10 @@ impl PyTrin { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21758,6 +23122,10 @@ impl PyBreadthThrust { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21824,6 +23192,10 @@ impl PyNewHighsNewLows { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21886,6 +23258,10 @@ impl PyHighLowIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -21961,6 +23337,10 @@ impl PyPercentAboveMa { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22027,6 +23407,10 @@ impl PyUpDownVolumeRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22106,6 +23490,10 @@ impl PyBullishPercentIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22172,6 +23560,10 @@ impl PyCumulativeVolumeIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22238,6 +23630,10 @@ impl PyAbsoluteBreadthIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22300,6 +23696,10 @@ impl PyTickIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22356,6 +23756,10 @@ impl PyUpsidePotentialRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22414,6 +23818,10 @@ impl PyM2Measure { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22469,6 +23877,10 @@ impl PySharpeRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22523,6 +23935,10 @@ impl PySortinoRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22572,6 +23988,10 @@ impl PyCalmarRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22622,6 +24042,10 @@ impl PyOmegaRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22671,6 +24095,10 @@ impl PyMaxDrawdown { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22720,6 +24148,10 @@ impl PyAverageDrawdown { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22771,6 +24203,10 @@ impl PyDrawdownDuration { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22816,6 +24252,10 @@ impl PyPainIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22866,6 +24306,10 @@ impl PyValueAtRisk { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22924,6 +24368,10 @@ impl PyConditionalValueAtRisk { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -22973,6 +24421,10 @@ impl PyProfitFactor { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -23018,6 +24470,10 @@ impl PyGainLossRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -23063,6 +24519,10 @@ impl PyRecoveryFactor { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -23112,6 +24572,10 @@ impl PyKellyCriterion { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -23177,6 +24641,10 @@ impl PyTreynorRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -23243,6 +24711,10 @@ impl PyInformationRatio { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -23306,6 +24778,10 @@ impl PyAlpha { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -23382,6 +24858,10 @@ impl PyRenkoBars { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn __repr__(&self) -> String { format!("RenkoBars(box_size={})", self.inner.box_size()) } @@ -23442,6 +24922,10 @@ impl PyKagiBars { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn __repr__(&self) -> String { format!("KagiBars(reversal={})", self.inner.reversal()) } @@ -23511,6 +24995,10 @@ impl PyPointAndFigureBars { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn __repr__(&self) -> String { format!( "PointAndFigureBars(box_size={}, reversal={})", @@ -23575,6 +25063,10 @@ impl PyRangeBars { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn __repr__(&self) -> String { format!("RangeBars(range={})", self.inner.range()) } @@ -23643,6 +25135,10 @@ impl PyTickBars { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn __repr__(&self) -> String { format!("TickBars(ticks={})", self.inner.ticks()) } @@ -23711,6 +25207,10 @@ impl PyVolumeBars { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn __repr__(&self) -> String { format!("VolumeBars(volume_per_bar={})", self.inner.volume_per_bar()) } @@ -23779,6 +25279,10 @@ impl PyDollarBars { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn __repr__(&self) -> String { format!("DollarBars(dollar_per_bar={})", self.inner.dollar_per_bar()) } @@ -23854,6 +25358,10 @@ impl PyImbalanceBars { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn __repr__(&self) -> String { format!("ImbalanceBars(threshold={})", self.inner.threshold()) } @@ -23930,6 +25438,10 @@ impl PyRunBars { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn __repr__(&self) -> String { format!("RunBars(run_length={})", self.inner.run_length()) } @@ -23995,6 +25507,10 @@ impl PyThreeLineBreakBars { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn __repr__(&self) -> String { format!("ThreeLineBreakBars(lines={})", self.inner.lines()) } @@ -24095,6 +25611,10 @@ macro_rules! py_seasonality_offset_scalar { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -24170,6 +25690,10 @@ macro_rules! py_seasonality_bucket_profile { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -24242,6 +25766,10 @@ macro_rules! py_seasonality_offset_profile { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -24325,6 +25853,10 @@ impl PyAverageDailyRange { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -24379,6 +25911,10 @@ impl PyTurnOfMonth { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -24444,6 +25980,10 @@ impl PySessionHighLow { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -24508,6 +26048,10 @@ impl PySessionRange { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -24575,6 +26119,10 @@ impl PyOvernightIntradayReturn { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -24671,6 +26219,10 @@ impl PyFibRetracement { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -24746,6 +26298,10 @@ impl PyFibExtension { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -24815,6 +26371,10 @@ impl PyFibProjection { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -24894,6 +26454,10 @@ impl PyAutoFib { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -24959,6 +26523,10 @@ impl PyGoldenPocket { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25023,6 +26591,10 @@ impl PyFibConfluence { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25091,6 +26663,10 @@ impl PyFibFan { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25159,6 +26735,10 @@ impl PyFibArcs { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25228,6 +26808,10 @@ impl PyFibChannel { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25292,6 +26876,10 @@ impl PyFibTimeZones { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25348,6 +26936,10 @@ impl PyEwmaVolatility { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25401,6 +26993,10 @@ impl PyGarch11 { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25454,6 +27050,10 @@ impl PyVolatilityOfVolatility { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25534,6 +27134,10 @@ impl PyVolatilityCone { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25595,6 +27199,10 @@ impl PyVolumeRsi { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25658,6 +27266,10 @@ impl PyWad { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25734,6 +27346,10 @@ impl PyTwiggsMoneyFlow { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25802,6 +27418,10 @@ impl PyTradeVolumeIndex { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25873,6 +27493,10 @@ impl PyIntradayIntensity { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -25945,6 +27569,10 @@ impl PyBetterVolume { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -26024,6 +27652,10 @@ impl PyVolumeWeightedMacd { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -26077,6 +27709,10 @@ impl PyShannonEntropy { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -26130,6 +27766,10 @@ impl PySampleEntropy { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -26195,6 +27835,10 @@ impl PyKendallTau { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -26247,6 +27891,10 @@ impl PyBandpassFilter { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -26304,6 +27952,10 @@ impl PyEvenBetterSinewave { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } @@ -26357,6 +28009,10 @@ impl PyAutocorrelationPeriodogram { fn reset(&mut self) { self.inner.reset(); } + + fn name(&self) -> &'static str { + self.inner.name() + } fn is_ready(&self) -> bool { self.inner.is_ready() } diff --git a/bindings/python/tests/test_golden_names.py b/bindings/python/tests/test_golden_names.py new file mode 100644 index 00000000..e2d65707 --- /dev/null +++ b/bindings/python/tests/test_golden_names.py @@ -0,0 +1,28 @@ +"""Canonical-name parity: every one of the 514 indicators must report the same +``Indicator::name()`` the Rust core defines — the identical string every other +binding returns. Names are recorded in ``testdata/golden/names.json`` (keyed by +the Rust canonical); the construction recipe (native class + ctor args) is the +shared ``node_manifest.json``. The core name may differ from the registered +class name (e.g. ``ChaikinMoneyFlow`` -> ``"CMF"``), which is exactly what this +pins across languages. +""" +import json +import os + +import pytest +import wickra as ta + +HERE = os.path.dirname(__file__) +GOLDEN = os.path.normpath(os.path.join(HERE, "..", "..", "..", "testdata", "golden")) + +with open(os.path.join(GOLDEN, "node_manifest.json")) as _mf: + MANIFEST = json.load(_mf) +with open(os.path.join(GOLDEN, "names.json")) as _nf: + NAMES = json.load(_nf) + + +@pytest.mark.parametrize("spec", MANIFEST, ids=[m["canonical"] for m in MANIFEST]) +def test_name_matches_core(spec): + cls = getattr(ta, spec["native"]) + ind = cls(*spec["ctor"]) + assert ind.name() == NAMES[spec["canonical"]] diff --git a/bindings/r/NAMESPACE b/bindings/r/NAMESPACE index 095c1863..6be8f6ad 100644 --- a/bindings/r/NAMESPACE +++ b/bindings/r/NAMESPACE @@ -2,6 +2,7 @@ S3method(batch,wickra_indicator) S3method(is_ready,wickra_indicator) +S3method(name,wickra_indicator) S3method(reset,wickra_indicator) S3method(update,wickra_indicator) S3method(warmup_period,wickra_indicator) @@ -521,6 +522,7 @@ export(ZigZag) export(Zlema) export(batch) export(is_ready) +export(name) export(reset) export(warmup_period) importFrom(stats,update) diff --git a/bindings/r/R/indicators.R b/bindings/r/R/indicators.R index 6271f7fd..a4f28785 100644 --- a/bindings/r/R/indicators.R +++ b/bindings/r/R/indicators.R @@ -314,8 +314,8 @@ AwesomeOscillator <- function(fast, slow) { #' AwesomeOscillatorHistogram indicator #' @keywords internal #' @export -AwesomeOscillatorHistogram <- function(fast, slow, sma_period) { - ptr <- .Call("wk_awesome_oscillator_histogram_new", fast, slow, sma_period, PACKAGE = "wickra") +AwesomeOscillatorHistogram <- function(fast, slow, lookback) { + ptr <- .Call("wk_awesome_oscillator_histogram_new", fast, slow, lookback, PACKAGE = "wickra") .wk_obj("awesome_oscillator_histogram", ptr, "AwesomeOscillatorHistogram") } diff --git a/bindings/r/R/methods.R b/bindings/r/R/methods.R index 7d5810e0..6bf5cb34 100644 --- a/bindings/r/R/methods.R +++ b/bindings/r/R/methods.R @@ -118,3 +118,23 @@ is_ready <- function(object) { is_ready.wickra_indicator <- function(object) { .Call(paste0("wk_", object$prefix, "_is_ready"), object$ptr, PACKAGE = "wickra") } + +#' Canonical name of an indicator +#' +#' Returns the stable, human-readable name of the indicator (the same name +#' reported by every other Wickra binding), e.g. `"SMA"` for [Sma()]. +#' +#' @param object A `wickra_indicator`. +#' @return A single character string. +#' @examples +#' name(Sma(14)) # "SMA" +#' @export +name <- function(object) { + UseMethod("name") +} + +#' @rdname name +#' @export +name.wickra_indicator <- function(object) { + .Call(paste0("wk_", object$prefix, "_name"), object$ptr, PACKAGE = "wickra") +} diff --git a/bindings/r/gen_golden_test.py b/bindings/r/gen_golden_test.py index 9d812d80..61872e86 100644 --- a/bindings/r/gen_golden_test.py +++ b/bindings/r/gen_golden_test.py @@ -9,16 +9,21 @@ import os ROOT = os.path.normpath(os.path.join(os.path.dirname(__file__), "..", "..")) MAN = json.load(open(os.path.join(ROOT, "testdata", "golden", "golden_manifest.json"))) +# Canonical core Indicator::name() per indicator, shared across every binding. +NAMES = json.load(open(os.path.join(ROOT, "testdata", "golden", "names.json"))) lines = [ "# Code generated by gen_golden_test.py. DO NOT EDIT.", - "# Per-indicator golden spec: canonical name, archetype, ctor params, output width.", + "# Per-indicator golden spec: canonical name, archetype, ctor params, output width, core name.", "GOLDEN_SPECS <- list(", ] for e in MAN: n = e.get("n", e.get("width", 0)) params = ",".join(repr(float(p)) for p in e["params"]) - lines.append(f' list(canon="{e["canonical"]}", arch="{e["arch"]}", params=c({params}), width={n}L),') + nm = NAMES[e["canonical"]].replace("\\", "\\\\").replace('"', '\\"') + lines.append( + f' list(canon="{e["canonical"]}", arch="{e["arch"]}", params=c({params}), width={n}L, name="{nm}"),' + ) lines[-1] = lines[-1].rstrip(",") lines.append(")") diff --git a/bindings/r/src/wickra.c b/bindings/r/src/wickra.c index ed642263..0c4a6f80 100644 --- a/bindings/r/src/wickra.c +++ b/bindings/r/src/wickra.c @@ -57,6 +57,10 @@ SEXP wk_abandoned_baby_is_ready(SEXP e) { struct AbandonedBaby *h = (struct AbandonedBaby *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_abandoned_baby_is_ready(h)); } +SEXP wk_abandoned_baby_name(SEXP e) { + struct AbandonedBaby *h = (struct AbandonedBaby *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_abandoned_baby_name(h)); +} SEXP wk_abandoned_baby_reset(SEXP e) { struct AbandonedBaby *h = (struct AbandonedBaby *)R_ExternalPtrAddr(e); wickra_abandoned_baby_reset(h); @@ -98,6 +102,10 @@ SEXP wk_abcd_is_ready(SEXP e) { struct Abcd *h = (struct Abcd *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_abcd_is_ready(h)); } +SEXP wk_abcd_name(SEXP e) { + struct Abcd *h = (struct Abcd *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_abcd_name(h)); +} SEXP wk_abcd_reset(SEXP e) { struct Abcd *h = (struct Abcd *)R_ExternalPtrAddr(e); wickra_abcd_reset(h); @@ -129,6 +137,10 @@ SEXP wk_absolute_breadth_index_is_ready(SEXP e) { struct AbsoluteBreadthIndex *h = (struct AbsoluteBreadthIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_absolute_breadth_index_is_ready(h)); } +SEXP wk_absolute_breadth_index_name(SEXP e) { + struct AbsoluteBreadthIndex *h = (struct AbsoluteBreadthIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_absolute_breadth_index_name(h)); +} SEXP wk_absolute_breadth_index_reset(SEXP e) { struct AbsoluteBreadthIndex *h = (struct AbsoluteBreadthIndex *)R_ExternalPtrAddr(e); wickra_absolute_breadth_index_reset(h); @@ -172,6 +184,10 @@ SEXP wk_acceleration_bands_is_ready(SEXP e) { struct AccelerationBands *h = (struct AccelerationBands *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_acceleration_bands_is_ready(h)); } +SEXP wk_acceleration_bands_name(SEXP e) { + struct AccelerationBands *h = (struct AccelerationBands *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_acceleration_bands_name(h)); +} SEXP wk_acceleration_bands_reset(SEXP e) { struct AccelerationBands *h = (struct AccelerationBands *)R_ExternalPtrAddr(e); wickra_acceleration_bands_reset(h); @@ -213,6 +229,10 @@ SEXP wk_accelerator_oscillator_is_ready(SEXP e) { struct AcceleratorOscillator *h = (struct AcceleratorOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_accelerator_oscillator_is_ready(h)); } +SEXP wk_accelerator_oscillator_name(SEXP e) { + struct AcceleratorOscillator *h = (struct AcceleratorOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_accelerator_oscillator_name(h)); +} SEXP wk_accelerator_oscillator_reset(SEXP e) { struct AcceleratorOscillator *h = (struct AcceleratorOscillator *)R_ExternalPtrAddr(e); wickra_accelerator_oscillator_reset(h); @@ -254,6 +274,10 @@ SEXP wk_ad_oscillator_is_ready(SEXP e) { struct AdOscillator *h = (struct AdOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ad_oscillator_is_ready(h)); } +SEXP wk_ad_oscillator_name(SEXP e) { + struct AdOscillator *h = (struct AdOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ad_oscillator_name(h)); +} SEXP wk_ad_oscillator_reset(SEXP e) { struct AdOscillator *h = (struct AdOscillator *)R_ExternalPtrAddr(e); wickra_ad_oscillator_reset(h); @@ -285,6 +309,10 @@ SEXP wk_ad_volume_line_is_ready(SEXP e) { struct AdVolumeLine *h = (struct AdVolumeLine *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ad_volume_line_is_ready(h)); } +SEXP wk_ad_volume_line_name(SEXP e) { + struct AdVolumeLine *h = (struct AdVolumeLine *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ad_volume_line_name(h)); +} SEXP wk_ad_volume_line_reset(SEXP e) { struct AdVolumeLine *h = (struct AdVolumeLine *)R_ExternalPtrAddr(e); wickra_ad_volume_line_reset(h); @@ -326,6 +354,10 @@ SEXP wk_adaptive_cci_is_ready(SEXP e) { struct AdaptiveCci *h = (struct AdaptiveCci *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_adaptive_cci_is_ready(h)); } +SEXP wk_adaptive_cci_name(SEXP e) { + struct AdaptiveCci *h = (struct AdaptiveCci *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_adaptive_cci_name(h)); +} SEXP wk_adaptive_cci_reset(SEXP e) { struct AdaptiveCci *h = (struct AdaptiveCci *)R_ExternalPtrAddr(e); wickra_adaptive_cci_reset(h); @@ -365,6 +397,10 @@ SEXP wk_adaptive_cycle_is_ready(SEXP e) { struct AdaptiveCycle *h = (struct AdaptiveCycle *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_adaptive_cycle_is_ready(h)); } +SEXP wk_adaptive_cycle_name(SEXP e) { + struct AdaptiveCycle *h = (struct AdaptiveCycle *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_adaptive_cycle_name(h)); +} SEXP wk_adaptive_cycle_reset(SEXP e) { struct AdaptiveCycle *h = (struct AdaptiveCycle *)R_ExternalPtrAddr(e); wickra_adaptive_cycle_reset(h); @@ -404,6 +440,10 @@ SEXP wk_adaptive_laguerre_filter_is_ready(SEXP e) { struct AdaptiveLaguerreFilter *h = (struct AdaptiveLaguerreFilter *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_adaptive_laguerre_filter_is_ready(h)); } +SEXP wk_adaptive_laguerre_filter_name(SEXP e) { + struct AdaptiveLaguerreFilter *h = (struct AdaptiveLaguerreFilter *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_adaptive_laguerre_filter_name(h)); +} SEXP wk_adaptive_laguerre_filter_reset(SEXP e) { struct AdaptiveLaguerreFilter *h = (struct AdaptiveLaguerreFilter *)R_ExternalPtrAddr(e); wickra_adaptive_laguerre_filter_reset(h); @@ -443,6 +483,10 @@ SEXP wk_adaptive_rsi_is_ready(SEXP e) { struct AdaptiveRsi *h = (struct AdaptiveRsi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_adaptive_rsi_is_ready(h)); } +SEXP wk_adaptive_rsi_name(SEXP e) { + struct AdaptiveRsi *h = (struct AdaptiveRsi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_adaptive_rsi_name(h)); +} SEXP wk_adaptive_rsi_reset(SEXP e) { struct AdaptiveRsi *h = (struct AdaptiveRsi *)R_ExternalPtrAddr(e); wickra_adaptive_rsi_reset(h); @@ -484,6 +528,10 @@ SEXP wk_adl_is_ready(SEXP e) { struct Adl *h = (struct Adl *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_adl_is_ready(h)); } +SEXP wk_adl_name(SEXP e) { + struct Adl *h = (struct Adl *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_adl_name(h)); +} SEXP wk_adl_reset(SEXP e) { struct Adl *h = (struct Adl *)R_ExternalPtrAddr(e); wickra_adl_reset(h); @@ -525,6 +573,10 @@ SEXP wk_advance_block_is_ready(SEXP e) { struct AdvanceBlock *h = (struct AdvanceBlock *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_advance_block_is_ready(h)); } +SEXP wk_advance_block_name(SEXP e) { + struct AdvanceBlock *h = (struct AdvanceBlock *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_advance_block_name(h)); +} SEXP wk_advance_block_reset(SEXP e) { struct AdvanceBlock *h = (struct AdvanceBlock *)R_ExternalPtrAddr(e); wickra_advance_block_reset(h); @@ -556,6 +608,10 @@ SEXP wk_advance_decline_is_ready(SEXP e) { struct AdvanceDecline *h = (struct AdvanceDecline *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_advance_decline_is_ready(h)); } +SEXP wk_advance_decline_name(SEXP e) { + struct AdvanceDecline *h = (struct AdvanceDecline *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_advance_decline_name(h)); +} SEXP wk_advance_decline_reset(SEXP e) { struct AdvanceDecline *h = (struct AdvanceDecline *)R_ExternalPtrAddr(e); wickra_advance_decline_reset(h); @@ -587,6 +643,10 @@ SEXP wk_advance_decline_ratio_is_ready(SEXP e) { struct AdvanceDeclineRatio *h = (struct AdvanceDeclineRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_advance_decline_ratio_is_ready(h)); } +SEXP wk_advance_decline_ratio_name(SEXP e) { + struct AdvanceDeclineRatio *h = (struct AdvanceDeclineRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_advance_decline_ratio_name(h)); +} SEXP wk_advance_decline_ratio_reset(SEXP e) { struct AdvanceDeclineRatio *h = (struct AdvanceDeclineRatio *)R_ExternalPtrAddr(e); wickra_advance_decline_ratio_reset(h); @@ -630,6 +690,10 @@ SEXP wk_adx_is_ready(SEXP e) { struct Adx *h = (struct Adx *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_adx_is_ready(h)); } +SEXP wk_adx_name(SEXP e) { + struct Adx *h = (struct Adx *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_adx_name(h)); +} SEXP wk_adx_reset(SEXP e) { struct Adx *h = (struct Adx *)R_ExternalPtrAddr(e); wickra_adx_reset(h); @@ -671,6 +735,10 @@ SEXP wk_adxr_is_ready(SEXP e) { struct Adxr *h = (struct Adxr *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_adxr_is_ready(h)); } +SEXP wk_adxr_name(SEXP e) { + struct Adxr *h = (struct Adxr *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_adxr_name(h)); +} SEXP wk_adxr_reset(SEXP e) { struct Adxr *h = (struct Adxr *)R_ExternalPtrAddr(e); wickra_adxr_reset(h); @@ -714,6 +782,10 @@ SEXP wk_alligator_is_ready(SEXP e) { struct Alligator *h = (struct Alligator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_alligator_is_ready(h)); } +SEXP wk_alligator_name(SEXP e) { + struct Alligator *h = (struct Alligator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_alligator_name(h)); +} SEXP wk_alligator_reset(SEXP e) { struct Alligator *h = (struct Alligator *)R_ExternalPtrAddr(e); wickra_alligator_reset(h); @@ -753,6 +825,10 @@ SEXP wk_alma_is_ready(SEXP e) { struct Alma *h = (struct Alma *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_alma_is_ready(h)); } +SEXP wk_alma_name(SEXP e) { + struct Alma *h = (struct Alma *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_alma_name(h)); +} SEXP wk_alma_reset(SEXP e) { struct Alma *h = (struct Alma *)R_ExternalPtrAddr(e); wickra_alma_reset(h); @@ -792,6 +868,10 @@ SEXP wk_alpha_is_ready(SEXP e) { struct Alpha *h = (struct Alpha *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_alpha_is_ready(h)); } +SEXP wk_alpha_name(SEXP e) { + struct Alpha *h = (struct Alpha *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_alpha_name(h)); +} SEXP wk_alpha_reset(SEXP e) { struct Alpha *h = (struct Alpha *)R_ExternalPtrAddr(e); wickra_alpha_reset(h); @@ -823,6 +903,10 @@ SEXP wk_amihud_illiquidity_is_ready(SEXP e) { struct AmihudIlliquidity *h = (struct AmihudIlliquidity *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_amihud_illiquidity_is_ready(h)); } +SEXP wk_amihud_illiquidity_name(SEXP e) { + struct AmihudIlliquidity *h = (struct AmihudIlliquidity *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_amihud_illiquidity_name(h)); +} SEXP wk_amihud_illiquidity_reset(SEXP e) { struct AmihudIlliquidity *h = (struct AmihudIlliquidity *)R_ExternalPtrAddr(e); wickra_amihud_illiquidity_reset(h); @@ -862,6 +946,10 @@ SEXP wk_anchored_rsi_is_ready(SEXP e) { struct AnchoredRsi *h = (struct AnchoredRsi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_anchored_rsi_is_ready(h)); } +SEXP wk_anchored_rsi_name(SEXP e) { + struct AnchoredRsi *h = (struct AnchoredRsi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_anchored_rsi_name(h)); +} SEXP wk_anchored_rsi_reset(SEXP e) { struct AnchoredRsi *h = (struct AnchoredRsi *)R_ExternalPtrAddr(e); wickra_anchored_rsi_reset(h); @@ -903,6 +991,10 @@ SEXP wk_anchored_vwap_is_ready(SEXP e) { struct AnchoredVwap *h = (struct AnchoredVwap *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_anchored_vwap_is_ready(h)); } +SEXP wk_anchored_vwap_name(SEXP e) { + struct AnchoredVwap *h = (struct AnchoredVwap *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_anchored_vwap_name(h)); +} SEXP wk_anchored_vwap_reset(SEXP e) { struct AnchoredVwap *h = (struct AnchoredVwap *)R_ExternalPtrAddr(e); wickra_anchored_vwap_reset(h); @@ -946,6 +1038,10 @@ SEXP wk_andrews_pitchfork_is_ready(SEXP e) { struct AndrewsPitchfork *h = (struct AndrewsPitchfork *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_andrews_pitchfork_is_ready(h)); } +SEXP wk_andrews_pitchfork_name(SEXP e) { + struct AndrewsPitchfork *h = (struct AndrewsPitchfork *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_andrews_pitchfork_name(h)); +} SEXP wk_andrews_pitchfork_reset(SEXP e) { struct AndrewsPitchfork *h = (struct AndrewsPitchfork *)R_ExternalPtrAddr(e); wickra_andrews_pitchfork_reset(h); @@ -985,6 +1081,10 @@ SEXP wk_apo_is_ready(SEXP e) { struct Apo *h = (struct Apo *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_apo_is_ready(h)); } +SEXP wk_apo_name(SEXP e) { + struct Apo *h = (struct Apo *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_apo_name(h)); +} SEXP wk_apo_reset(SEXP e) { struct Apo *h = (struct Apo *)R_ExternalPtrAddr(e); wickra_apo_reset(h); @@ -1026,6 +1126,10 @@ SEXP wk_aroon_is_ready(SEXP e) { struct Aroon *h = (struct Aroon *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_aroon_is_ready(h)); } +SEXP wk_aroon_name(SEXP e) { + struct Aroon *h = (struct Aroon *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_aroon_name(h)); +} SEXP wk_aroon_reset(SEXP e) { struct Aroon *h = (struct Aroon *)R_ExternalPtrAddr(e); wickra_aroon_reset(h); @@ -1067,6 +1171,10 @@ SEXP wk_aroon_oscillator_is_ready(SEXP e) { struct AroonOscillator *h = (struct AroonOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_aroon_oscillator_is_ready(h)); } +SEXP wk_aroon_oscillator_name(SEXP e) { + struct AroonOscillator *h = (struct AroonOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_aroon_oscillator_name(h)); +} SEXP wk_aroon_oscillator_reset(SEXP e) { struct AroonOscillator *h = (struct AroonOscillator *)R_ExternalPtrAddr(e); wickra_aroon_oscillator_reset(h); @@ -1108,6 +1216,10 @@ SEXP wk_atr_is_ready(SEXP e) { struct Atr *h = (struct Atr *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_atr_is_ready(h)); } +SEXP wk_atr_name(SEXP e) { + struct Atr *h = (struct Atr *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_atr_name(h)); +} SEXP wk_atr_reset(SEXP e) { struct Atr *h = (struct Atr *)R_ExternalPtrAddr(e); wickra_atr_reset(h); @@ -1151,6 +1263,10 @@ SEXP wk_atr_bands_is_ready(SEXP e) { struct AtrBands *h = (struct AtrBands *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_atr_bands_is_ready(h)); } +SEXP wk_atr_bands_name(SEXP e) { + struct AtrBands *h = (struct AtrBands *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_atr_bands_name(h)); +} SEXP wk_atr_bands_reset(SEXP e) { struct AtrBands *h = (struct AtrBands *)R_ExternalPtrAddr(e); wickra_atr_bands_reset(h); @@ -1192,6 +1308,10 @@ SEXP wk_atr_ratchet_is_ready(SEXP e) { struct AtrRatchet *h = (struct AtrRatchet *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_atr_ratchet_is_ready(h)); } +SEXP wk_atr_ratchet_name(SEXP e) { + struct AtrRatchet *h = (struct AtrRatchet *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_atr_ratchet_name(h)); +} SEXP wk_atr_ratchet_reset(SEXP e) { struct AtrRatchet *h = (struct AtrRatchet *)R_ExternalPtrAddr(e); wickra_atr_ratchet_reset(h); @@ -1233,6 +1353,10 @@ SEXP wk_atr_trailing_stop_is_ready(SEXP e) { struct AtrTrailingStop *h = (struct AtrTrailingStop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_atr_trailing_stop_is_ready(h)); } +SEXP wk_atr_trailing_stop_name(SEXP e) { + struct AtrTrailingStop *h = (struct AtrTrailingStop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_atr_trailing_stop_name(h)); +} SEXP wk_atr_trailing_stop_reset(SEXP e) { struct AtrTrailingStop *h = (struct AtrTrailingStop *)R_ExternalPtrAddr(e); wickra_atr_trailing_stop_reset(h); @@ -1284,6 +1408,10 @@ SEXP wk_auto_fib_is_ready(SEXP e) { struct AutoFib *h = (struct AutoFib *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_auto_fib_is_ready(h)); } +SEXP wk_auto_fib_name(SEXP e) { + struct AutoFib *h = (struct AutoFib *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_auto_fib_name(h)); +} SEXP wk_auto_fib_reset(SEXP e) { struct AutoFib *h = (struct AutoFib *)R_ExternalPtrAddr(e); wickra_auto_fib_reset(h); @@ -1323,6 +1451,10 @@ SEXP wk_autocorrelation_is_ready(SEXP e) { struct Autocorrelation *h = (struct Autocorrelation *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_autocorrelation_is_ready(h)); } +SEXP wk_autocorrelation_name(SEXP e) { + struct Autocorrelation *h = (struct Autocorrelation *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_autocorrelation_name(h)); +} SEXP wk_autocorrelation_reset(SEXP e) { struct Autocorrelation *h = (struct Autocorrelation *)R_ExternalPtrAddr(e); wickra_autocorrelation_reset(h); @@ -1362,6 +1494,10 @@ SEXP wk_autocorrelation_periodogram_is_ready(SEXP e) { struct AutocorrelationPeriodogram *h = (struct AutocorrelationPeriodogram *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_autocorrelation_periodogram_is_ready(h)); } +SEXP wk_autocorrelation_periodogram_name(SEXP e) { + struct AutocorrelationPeriodogram *h = (struct AutocorrelationPeriodogram *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_autocorrelation_periodogram_name(h)); +} SEXP wk_autocorrelation_periodogram_reset(SEXP e) { struct AutocorrelationPeriodogram *h = (struct AutocorrelationPeriodogram *)R_ExternalPtrAddr(e); wickra_autocorrelation_periodogram_reset(h); @@ -1403,6 +1539,10 @@ SEXP wk_average_daily_range_is_ready(SEXP e) { struct AverageDailyRange *h = (struct AverageDailyRange *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_average_daily_range_is_ready(h)); } +SEXP wk_average_daily_range_name(SEXP e) { + struct AverageDailyRange *h = (struct AverageDailyRange *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_average_daily_range_name(h)); +} SEXP wk_average_daily_range_reset(SEXP e) { struct AverageDailyRange *h = (struct AverageDailyRange *)R_ExternalPtrAddr(e); wickra_average_daily_range_reset(h); @@ -1442,6 +1582,10 @@ SEXP wk_average_drawdown_is_ready(SEXP e) { struct AverageDrawdown *h = (struct AverageDrawdown *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_average_drawdown_is_ready(h)); } +SEXP wk_average_drawdown_name(SEXP e) { + struct AverageDrawdown *h = (struct AverageDrawdown *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_average_drawdown_name(h)); +} SEXP wk_average_drawdown_reset(SEXP e) { struct AverageDrawdown *h = (struct AverageDrawdown *)R_ExternalPtrAddr(e); wickra_average_drawdown_reset(h); @@ -1483,6 +1627,10 @@ SEXP wk_avg_price_is_ready(SEXP e) { struct AvgPrice *h = (struct AvgPrice *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_avg_price_is_ready(h)); } +SEXP wk_avg_price_name(SEXP e) { + struct AvgPrice *h = (struct AvgPrice *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_avg_price_name(h)); +} SEXP wk_avg_price_reset(SEXP e) { struct AvgPrice *h = (struct AvgPrice *)R_ExternalPtrAddr(e); wickra_avg_price_reset(h); @@ -1524,6 +1672,10 @@ SEXP wk_awesome_oscillator_is_ready(SEXP e) { struct AwesomeOscillator *h = (struct AwesomeOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_awesome_oscillator_is_ready(h)); } +SEXP wk_awesome_oscillator_name(SEXP e) { + struct AwesomeOscillator *h = (struct AwesomeOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_awesome_oscillator_name(h)); +} SEXP wk_awesome_oscillator_reset(SEXP e) { struct AwesomeOscillator *h = (struct AwesomeOscillator *)R_ExternalPtrAddr(e); wickra_awesome_oscillator_reset(h); @@ -1565,6 +1717,10 @@ SEXP wk_awesome_oscillator_histogram_is_ready(SEXP e) { struct AwesomeOscillatorHistogram *h = (struct AwesomeOscillatorHistogram *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_awesome_oscillator_histogram_is_ready(h)); } +SEXP wk_awesome_oscillator_histogram_name(SEXP e) { + struct AwesomeOscillatorHistogram *h = (struct AwesomeOscillatorHistogram *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_awesome_oscillator_histogram_name(h)); +} SEXP wk_awesome_oscillator_histogram_reset(SEXP e) { struct AwesomeOscillatorHistogram *h = (struct AwesomeOscillatorHistogram *)R_ExternalPtrAddr(e); wickra_awesome_oscillator_histogram_reset(h); @@ -1606,6 +1762,10 @@ SEXP wk_balance_of_power_is_ready(SEXP e) { struct BalanceOfPower *h = (struct BalanceOfPower *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_balance_of_power_is_ready(h)); } +SEXP wk_balance_of_power_name(SEXP e) { + struct BalanceOfPower *h = (struct BalanceOfPower *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_balance_of_power_name(h)); +} SEXP wk_balance_of_power_reset(SEXP e) { struct BalanceOfPower *h = (struct BalanceOfPower *)R_ExternalPtrAddr(e); wickra_balance_of_power_reset(h); @@ -1645,6 +1805,10 @@ SEXP wk_bandpass_filter_is_ready(SEXP e) { struct BandpassFilter *h = (struct BandpassFilter *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_bandpass_filter_is_ready(h)); } +SEXP wk_bandpass_filter_name(SEXP e) { + struct BandpassFilter *h = (struct BandpassFilter *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_bandpass_filter_name(h)); +} SEXP wk_bandpass_filter_reset(SEXP e) { struct BandpassFilter *h = (struct BandpassFilter *)R_ExternalPtrAddr(e); wickra_bandpass_filter_reset(h); @@ -1686,6 +1850,10 @@ SEXP wk_bat_is_ready(SEXP e) { struct Bat *h = (struct Bat *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_bat_is_ready(h)); } +SEXP wk_bat_name(SEXP e) { + struct Bat *h = (struct Bat *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_bat_name(h)); +} SEXP wk_bat_reset(SEXP e) { struct Bat *h = (struct Bat *)R_ExternalPtrAddr(e); wickra_bat_reset(h); @@ -1727,6 +1895,10 @@ SEXP wk_belt_hold_is_ready(SEXP e) { struct BeltHold *h = (struct BeltHold *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_belt_hold_is_ready(h)); } +SEXP wk_belt_hold_name(SEXP e) { + struct BeltHold *h = (struct BeltHold *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_belt_hold_name(h)); +} SEXP wk_belt_hold_reset(SEXP e) { struct BeltHold *h = (struct BeltHold *)R_ExternalPtrAddr(e); wickra_belt_hold_reset(h); @@ -1766,6 +1938,10 @@ SEXP wk_beta_is_ready(SEXP e) { struct Beta *h = (struct Beta *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_beta_is_ready(h)); } +SEXP wk_beta_name(SEXP e) { + struct Beta *h = (struct Beta *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_beta_name(h)); +} SEXP wk_beta_reset(SEXP e) { struct Beta *h = (struct Beta *)R_ExternalPtrAddr(e); wickra_beta_reset(h); @@ -1805,6 +1981,10 @@ SEXP wk_beta_neutral_spread_is_ready(SEXP e) { struct BetaNeutralSpread *h = (struct BetaNeutralSpread *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_beta_neutral_spread_is_ready(h)); } +SEXP wk_beta_neutral_spread_name(SEXP e) { + struct BetaNeutralSpread *h = (struct BetaNeutralSpread *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_beta_neutral_spread_name(h)); +} SEXP wk_beta_neutral_spread_reset(SEXP e) { struct BetaNeutralSpread *h = (struct BetaNeutralSpread *)R_ExternalPtrAddr(e); wickra_beta_neutral_spread_reset(h); @@ -1846,6 +2026,10 @@ SEXP wk_better_volume_is_ready(SEXP e) { struct BetterVolume *h = (struct BetterVolume *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_better_volume_is_ready(h)); } +SEXP wk_better_volume_name(SEXP e) { + struct BetterVolume *h = (struct BetterVolume *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_better_volume_name(h)); +} SEXP wk_better_volume_reset(SEXP e) { struct BetterVolume *h = (struct BetterVolume *)R_ExternalPtrAddr(e); wickra_better_volume_reset(h); @@ -1885,6 +2069,10 @@ SEXP wk_bipower_variation_is_ready(SEXP e) { struct BipowerVariation *h = (struct BipowerVariation *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_bipower_variation_is_ready(h)); } +SEXP wk_bipower_variation_name(SEXP e) { + struct BipowerVariation *h = (struct BipowerVariation *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_bipower_variation_name(h)); +} SEXP wk_bipower_variation_reset(SEXP e) { struct BipowerVariation *h = (struct BipowerVariation *)R_ExternalPtrAddr(e); wickra_bipower_variation_reset(h); @@ -1926,6 +2114,10 @@ SEXP wk_body_size_pct_is_ready(SEXP e) { struct BodySizePct *h = (struct BodySizePct *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_body_size_pct_is_ready(h)); } +SEXP wk_body_size_pct_name(SEXP e) { + struct BodySizePct *h = (struct BodySizePct *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_body_size_pct_name(h)); +} SEXP wk_body_size_pct_reset(SEXP e) { struct BodySizePct *h = (struct BodySizePct *)R_ExternalPtrAddr(e); wickra_body_size_pct_reset(h); @@ -1971,6 +2163,10 @@ SEXP wk_bollinger_bands_is_ready(SEXP e) { struct BollingerBands *h = (struct BollingerBands *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_bollinger_bands_is_ready(h)); } +SEXP wk_bollinger_bands_name(SEXP e) { + struct BollingerBands *h = (struct BollingerBands *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_bollinger_bands_name(h)); +} SEXP wk_bollinger_bands_reset(SEXP e) { struct BollingerBands *h = (struct BollingerBands *)R_ExternalPtrAddr(e); wickra_bollinger_bands_reset(h); @@ -2010,6 +2206,10 @@ SEXP wk_bollinger_bandwidth_is_ready(SEXP e) { struct BollingerBandwidth *h = (struct BollingerBandwidth *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_bollinger_bandwidth_is_ready(h)); } +SEXP wk_bollinger_bandwidth_name(SEXP e) { + struct BollingerBandwidth *h = (struct BollingerBandwidth *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_bollinger_bandwidth_name(h)); +} SEXP wk_bollinger_bandwidth_reset(SEXP e) { struct BollingerBandwidth *h = (struct BollingerBandwidth *)R_ExternalPtrAddr(e); wickra_bollinger_bandwidth_reset(h); @@ -2053,6 +2253,10 @@ SEXP wk_bomar_bands_is_ready(SEXP e) { struct BomarBands *h = (struct BomarBands *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_bomar_bands_is_ready(h)); } +SEXP wk_bomar_bands_name(SEXP e) { + struct BomarBands *h = (struct BomarBands *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_bomar_bands_name(h)); +} SEXP wk_bomar_bands_reset(SEXP e) { struct BomarBands *h = (struct BomarBands *)R_ExternalPtrAddr(e); wickra_bomar_bands_reset(h); @@ -2084,6 +2288,10 @@ SEXP wk_breadth_thrust_is_ready(SEXP e) { struct BreadthThrust *h = (struct BreadthThrust *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_breadth_thrust_is_ready(h)); } +SEXP wk_breadth_thrust_name(SEXP e) { + struct BreadthThrust *h = (struct BreadthThrust *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_breadth_thrust_name(h)); +} SEXP wk_breadth_thrust_reset(SEXP e) { struct BreadthThrust *h = (struct BreadthThrust *)R_ExternalPtrAddr(e); wickra_breadth_thrust_reset(h); @@ -2125,6 +2333,10 @@ SEXP wk_breakaway_is_ready(SEXP e) { struct Breakaway *h = (struct Breakaway *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_breakaway_is_ready(h)); } +SEXP wk_breakaway_name(SEXP e) { + struct Breakaway *h = (struct Breakaway *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_breakaway_name(h)); +} SEXP wk_breakaway_reset(SEXP e) { struct Breakaway *h = (struct Breakaway *)R_ExternalPtrAddr(e); wickra_breakaway_reset(h); @@ -2156,6 +2368,10 @@ SEXP wk_bullish_percent_index_is_ready(SEXP e) { struct BullishPercentIndex *h = (struct BullishPercentIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_bullish_percent_index_is_ready(h)); } +SEXP wk_bullish_percent_index_name(SEXP e) { + struct BullishPercentIndex *h = (struct BullishPercentIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_bullish_percent_index_name(h)); +} SEXP wk_bullish_percent_index_reset(SEXP e) { struct BullishPercentIndex *h = (struct BullishPercentIndex *)R_ExternalPtrAddr(e); wickra_bullish_percent_index_reset(h); @@ -2195,6 +2411,10 @@ SEXP wk_burke_ratio_is_ready(SEXP e) { struct BurkeRatio *h = (struct BurkeRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_burke_ratio_is_ready(h)); } +SEXP wk_burke_ratio_name(SEXP e) { + struct BurkeRatio *h = (struct BurkeRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_burke_ratio_name(h)); +} SEXP wk_burke_ratio_reset(SEXP e) { struct BurkeRatio *h = (struct BurkeRatio *)R_ExternalPtrAddr(e); wickra_burke_ratio_reset(h); @@ -2236,6 +2456,10 @@ SEXP wk_butterfly_is_ready(SEXP e) { struct Butterfly *h = (struct Butterfly *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_butterfly_is_ready(h)); } +SEXP wk_butterfly_name(SEXP e) { + struct Butterfly *h = (struct Butterfly *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_butterfly_name(h)); +} SEXP wk_butterfly_reset(SEXP e) { struct Butterfly *h = (struct Butterfly *)R_ExternalPtrAddr(e); wickra_butterfly_reset(h); @@ -2267,6 +2491,10 @@ SEXP wk_calendar_spread_is_ready(SEXP e) { struct CalendarSpread *h = (struct CalendarSpread *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_calendar_spread_is_ready(h)); } +SEXP wk_calendar_spread_name(SEXP e) { + struct CalendarSpread *h = (struct CalendarSpread *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_calendar_spread_name(h)); +} SEXP wk_calendar_spread_reset(SEXP e) { struct CalendarSpread *h = (struct CalendarSpread *)R_ExternalPtrAddr(e); wickra_calendar_spread_reset(h); @@ -2306,6 +2534,10 @@ SEXP wk_calmar_ratio_is_ready(SEXP e) { struct CalmarRatio *h = (struct CalmarRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_calmar_ratio_is_ready(h)); } +SEXP wk_calmar_ratio_name(SEXP e) { + struct CalmarRatio *h = (struct CalmarRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_calmar_ratio_name(h)); +} SEXP wk_calmar_ratio_reset(SEXP e) { struct CalmarRatio *h = (struct CalmarRatio *)R_ExternalPtrAddr(e); wickra_calmar_ratio_reset(h); @@ -2361,6 +2593,10 @@ SEXP wk_camarilla_is_ready(SEXP e) { struct Camarilla *h = (struct Camarilla *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_camarilla_is_ready(h)); } +SEXP wk_camarilla_name(SEXP e) { + struct Camarilla *h = (struct Camarilla *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_camarilla_name(h)); +} SEXP wk_camarilla_reset(SEXP e) { struct Camarilla *h = (struct Camarilla *)R_ExternalPtrAddr(e); wickra_camarilla_reset(h); @@ -2402,6 +2638,10 @@ SEXP wk_candle_volume_is_ready(SEXP e) { struct CandleVolume *h = (struct CandleVolume *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_candle_volume_is_ready(h)); } +SEXP wk_candle_volume_name(SEXP e) { + struct CandleVolume *h = (struct CandleVolume *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_candle_volume_name(h)); +} SEXP wk_candle_volume_reset(SEXP e) { struct CandleVolume *h = (struct CandleVolume *)R_ExternalPtrAddr(e); wickra_candle_volume_reset(h); @@ -2443,6 +2683,10 @@ SEXP wk_cci_is_ready(SEXP e) { struct Cci *h = (struct Cci *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_cci_is_ready(h)); } +SEXP wk_cci_name(SEXP e) { + struct Cci *h = (struct Cci *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_cci_name(h)); +} SEXP wk_cci_reset(SEXP e) { struct Cci *h = (struct Cci *)R_ExternalPtrAddr(e); wickra_cci_reset(h); @@ -2482,6 +2726,10 @@ SEXP wk_center_of_gravity_is_ready(SEXP e) { struct CenterOfGravity *h = (struct CenterOfGravity *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_center_of_gravity_is_ready(h)); } +SEXP wk_center_of_gravity_name(SEXP e) { + struct CenterOfGravity *h = (struct CenterOfGravity *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_center_of_gravity_name(h)); +} SEXP wk_center_of_gravity_reset(SEXP e) { struct CenterOfGravity *h = (struct CenterOfGravity *)R_ExternalPtrAddr(e); wickra_center_of_gravity_reset(h); @@ -2525,6 +2773,10 @@ SEXP wk_central_pivot_range_is_ready(SEXP e) { struct CentralPivotRange *h = (struct CentralPivotRange *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_central_pivot_range_is_ready(h)); } +SEXP wk_central_pivot_range_name(SEXP e) { + struct CentralPivotRange *h = (struct CentralPivotRange *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_central_pivot_range_name(h)); +} SEXP wk_central_pivot_range_reset(SEXP e) { struct CentralPivotRange *h = (struct CentralPivotRange *)R_ExternalPtrAddr(e); wickra_central_pivot_range_reset(h); @@ -2564,6 +2816,10 @@ SEXP wk_cfo_is_ready(SEXP e) { struct Cfo *h = (struct Cfo *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_cfo_is_ready(h)); } +SEXP wk_cfo_name(SEXP e) { + struct Cfo *h = (struct Cfo *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_cfo_name(h)); +} SEXP wk_cfo_reset(SEXP e) { struct Cfo *h = (struct Cfo *)R_ExternalPtrAddr(e); wickra_cfo_reset(h); @@ -2605,6 +2861,10 @@ SEXP wk_chaikin_money_flow_is_ready(SEXP e) { struct ChaikinMoneyFlow *h = (struct ChaikinMoneyFlow *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_chaikin_money_flow_is_ready(h)); } +SEXP wk_chaikin_money_flow_name(SEXP e) { + struct ChaikinMoneyFlow *h = (struct ChaikinMoneyFlow *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_chaikin_money_flow_name(h)); +} SEXP wk_chaikin_money_flow_reset(SEXP e) { struct ChaikinMoneyFlow *h = (struct ChaikinMoneyFlow *)R_ExternalPtrAddr(e); wickra_chaikin_money_flow_reset(h); @@ -2646,6 +2906,10 @@ SEXP wk_chaikin_oscillator_is_ready(SEXP e) { struct ChaikinOscillator *h = (struct ChaikinOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_chaikin_oscillator_is_ready(h)); } +SEXP wk_chaikin_oscillator_name(SEXP e) { + struct ChaikinOscillator *h = (struct ChaikinOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_chaikin_oscillator_name(h)); +} SEXP wk_chaikin_oscillator_reset(SEXP e) { struct ChaikinOscillator *h = (struct ChaikinOscillator *)R_ExternalPtrAddr(e); wickra_chaikin_oscillator_reset(h); @@ -2687,6 +2951,10 @@ SEXP wk_chaikin_volatility_is_ready(SEXP e) { struct ChaikinVolatility *h = (struct ChaikinVolatility *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_chaikin_volatility_is_ready(h)); } +SEXP wk_chaikin_volatility_name(SEXP e) { + struct ChaikinVolatility *h = (struct ChaikinVolatility *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_chaikin_volatility_name(h)); +} SEXP wk_chaikin_volatility_reset(SEXP e) { struct ChaikinVolatility *h = (struct ChaikinVolatility *)R_ExternalPtrAddr(e); wickra_chaikin_volatility_reset(h); @@ -2728,6 +2996,10 @@ SEXP wk_chande_kroll_stop_is_ready(SEXP e) { struct ChandeKrollStop *h = (struct ChandeKrollStop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_chande_kroll_stop_is_ready(h)); } +SEXP wk_chande_kroll_stop_name(SEXP e) { + struct ChandeKrollStop *h = (struct ChandeKrollStop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_chande_kroll_stop_name(h)); +} SEXP wk_chande_kroll_stop_reset(SEXP e) { struct ChandeKrollStop *h = (struct ChandeKrollStop *)R_ExternalPtrAddr(e); wickra_chande_kroll_stop_reset(h); @@ -2769,6 +3041,10 @@ SEXP wk_chandelier_exit_is_ready(SEXP e) { struct ChandelierExit *h = (struct ChandelierExit *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_chandelier_exit_is_ready(h)); } +SEXP wk_chandelier_exit_name(SEXP e) { + struct ChandelierExit *h = (struct ChandelierExit *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_chandelier_exit_name(h)); +} SEXP wk_chandelier_exit_reset(SEXP e) { struct ChandelierExit *h = (struct ChandelierExit *)R_ExternalPtrAddr(e); wickra_chandelier_exit_reset(h); @@ -2810,6 +3086,10 @@ SEXP wk_choppiness_index_is_ready(SEXP e) { struct ChoppinessIndex *h = (struct ChoppinessIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_choppiness_index_is_ready(h)); } +SEXP wk_choppiness_index_name(SEXP e) { + struct ChoppinessIndex *h = (struct ChoppinessIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_choppiness_index_name(h)); +} SEXP wk_choppiness_index_reset(SEXP e) { struct ChoppinessIndex *h = (struct ChoppinessIndex *)R_ExternalPtrAddr(e); wickra_choppiness_index_reset(h); @@ -2861,6 +3141,10 @@ SEXP wk_classic_pivots_is_ready(SEXP e) { struct ClassicPivots *h = (struct ClassicPivots *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_classic_pivots_is_ready(h)); } +SEXP wk_classic_pivots_name(SEXP e) { + struct ClassicPivots *h = (struct ClassicPivots *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_classic_pivots_name(h)); +} SEXP wk_classic_pivots_reset(SEXP e) { struct ClassicPivots *h = (struct ClassicPivots *)R_ExternalPtrAddr(e); wickra_classic_pivots_reset(h); @@ -2902,6 +3186,10 @@ SEXP wk_close_vs_open_is_ready(SEXP e) { struct CloseVsOpen *h = (struct CloseVsOpen *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_close_vs_open_is_ready(h)); } +SEXP wk_close_vs_open_name(SEXP e) { + struct CloseVsOpen *h = (struct CloseVsOpen *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_close_vs_open_name(h)); +} SEXP wk_close_vs_open_reset(SEXP e) { struct CloseVsOpen *h = (struct CloseVsOpen *)R_ExternalPtrAddr(e); wickra_close_vs_open_reset(h); @@ -2943,6 +3231,10 @@ SEXP wk_closing_marubozu_is_ready(SEXP e) { struct ClosingMarubozu *h = (struct ClosingMarubozu *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_closing_marubozu_is_ready(h)); } +SEXP wk_closing_marubozu_name(SEXP e) { + struct ClosingMarubozu *h = (struct ClosingMarubozu *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_closing_marubozu_name(h)); +} SEXP wk_closing_marubozu_reset(SEXP e) { struct ClosingMarubozu *h = (struct ClosingMarubozu *)R_ExternalPtrAddr(e); wickra_closing_marubozu_reset(h); @@ -2982,6 +3274,10 @@ SEXP wk_cmo_is_ready(SEXP e) { struct Cmo *h = (struct Cmo *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_cmo_is_ready(h)); } +SEXP wk_cmo_name(SEXP e) { + struct Cmo *h = (struct Cmo *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_cmo_name(h)); +} SEXP wk_cmo_reset(SEXP e) { struct Cmo *h = (struct Cmo *)R_ExternalPtrAddr(e); wickra_cmo_reset(h); @@ -3021,6 +3317,10 @@ SEXP wk_coefficient_of_variation_is_ready(SEXP e) { struct CoefficientOfVariation *h = (struct CoefficientOfVariation *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_coefficient_of_variation_is_ready(h)); } +SEXP wk_coefficient_of_variation_name(SEXP e) { + struct CoefficientOfVariation *h = (struct CoefficientOfVariation *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_coefficient_of_variation_name(h)); +} SEXP wk_coefficient_of_variation_reset(SEXP e) { struct CoefficientOfVariation *h = (struct CoefficientOfVariation *)R_ExternalPtrAddr(e); wickra_coefficient_of_variation_reset(h); @@ -3064,6 +3364,10 @@ SEXP wk_cointegration_is_ready(SEXP e) { struct Cointegration *h = (struct Cointegration *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_cointegration_is_ready(h)); } +SEXP wk_cointegration_name(SEXP e) { + struct Cointegration *h = (struct Cointegration *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_cointegration_name(h)); +} SEXP wk_cointegration_reset(SEXP e) { struct Cointegration *h = (struct Cointegration *)R_ExternalPtrAddr(e); wickra_cointegration_reset(h); @@ -3103,6 +3407,10 @@ SEXP wk_common_sense_ratio_is_ready(SEXP e) { struct CommonSenseRatio *h = (struct CommonSenseRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_common_sense_ratio_is_ready(h)); } +SEXP wk_common_sense_ratio_name(SEXP e) { + struct CommonSenseRatio *h = (struct CommonSenseRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_common_sense_ratio_name(h)); +} SEXP wk_common_sense_ratio_reset(SEXP e) { struct CommonSenseRatio *h = (struct CommonSenseRatio *)R_ExternalPtrAddr(e); wickra_common_sense_ratio_reset(h); @@ -3146,6 +3454,10 @@ SEXP wk_composite_profile_is_ready(SEXP e) { struct CompositeProfile *h = (struct CompositeProfile *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_composite_profile_is_ready(h)); } +SEXP wk_composite_profile_name(SEXP e) { + struct CompositeProfile *h = (struct CompositeProfile *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_composite_profile_name(h)); +} SEXP wk_composite_profile_reset(SEXP e) { struct CompositeProfile *h = (struct CompositeProfile *)R_ExternalPtrAddr(e); wickra_composite_profile_reset(h); @@ -3187,6 +3499,10 @@ SEXP wk_concealing_baby_swallow_is_ready(SEXP e) { struct ConcealingBabySwallow *h = (struct ConcealingBabySwallow *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_concealing_baby_swallow_is_ready(h)); } +SEXP wk_concealing_baby_swallow_name(SEXP e) { + struct ConcealingBabySwallow *h = (struct ConcealingBabySwallow *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_concealing_baby_swallow_name(h)); +} SEXP wk_concealing_baby_swallow_reset(SEXP e) { struct ConcealingBabySwallow *h = (struct ConcealingBabySwallow *)R_ExternalPtrAddr(e); wickra_concealing_baby_swallow_reset(h); @@ -3226,6 +3542,10 @@ SEXP wk_conditional_value_at_risk_is_ready(SEXP e) { struct ConditionalValueAtRisk *h = (struct ConditionalValueAtRisk *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_conditional_value_at_risk_is_ready(h)); } +SEXP wk_conditional_value_at_risk_name(SEXP e) { + struct ConditionalValueAtRisk *h = (struct ConditionalValueAtRisk *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_conditional_value_at_risk_name(h)); +} SEXP wk_conditional_value_at_risk_reset(SEXP e) { struct ConditionalValueAtRisk *h = (struct ConditionalValueAtRisk *)R_ExternalPtrAddr(e); wickra_conditional_value_at_risk_reset(h); @@ -3265,6 +3585,10 @@ SEXP wk_connors_rsi_is_ready(SEXP e) { struct ConnorsRsi *h = (struct ConnorsRsi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_connors_rsi_is_ready(h)); } +SEXP wk_connors_rsi_name(SEXP e) { + struct ConnorsRsi *h = (struct ConnorsRsi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_connors_rsi_name(h)); +} SEXP wk_connors_rsi_reset(SEXP e) { struct ConnorsRsi *h = (struct ConnorsRsi *)R_ExternalPtrAddr(e); wickra_connors_rsi_reset(h); @@ -3304,6 +3628,10 @@ SEXP wk_coppock_is_ready(SEXP e) { struct Coppock *h = (struct Coppock *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_coppock_is_ready(h)); } +SEXP wk_coppock_name(SEXP e) { + struct Coppock *h = (struct Coppock *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_coppock_name(h)); +} SEXP wk_coppock_reset(SEXP e) { struct Coppock *h = (struct Coppock *)R_ExternalPtrAddr(e); wickra_coppock_reset(h); @@ -3343,6 +3671,10 @@ SEXP wk_correlation_trend_indicator_is_ready(SEXP e) { struct CorrelationTrendIndicator *h = (struct CorrelationTrendIndicator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_correlation_trend_indicator_is_ready(h)); } +SEXP wk_correlation_trend_indicator_name(SEXP e) { + struct CorrelationTrendIndicator *h = (struct CorrelationTrendIndicator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_correlation_trend_indicator_name(h)); +} SEXP wk_correlation_trend_indicator_reset(SEXP e) { struct CorrelationTrendIndicator *h = (struct CorrelationTrendIndicator *)R_ExternalPtrAddr(e); wickra_correlation_trend_indicator_reset(h); @@ -3384,6 +3716,10 @@ SEXP wk_counterattack_is_ready(SEXP e) { struct Counterattack *h = (struct Counterattack *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_counterattack_is_ready(h)); } +SEXP wk_counterattack_name(SEXP e) { + struct Counterattack *h = (struct Counterattack *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_counterattack_name(h)); +} SEXP wk_counterattack_reset(SEXP e) { struct Counterattack *h = (struct Counterattack *)R_ExternalPtrAddr(e); wickra_counterattack_reset(h); @@ -3425,6 +3761,10 @@ SEXP wk_crab_is_ready(SEXP e) { struct Crab *h = (struct Crab *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_crab_is_ready(h)); } +SEXP wk_crab_name(SEXP e) { + struct Crab *h = (struct Crab *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_crab_name(h)); +} SEXP wk_crab_reset(SEXP e) { struct Crab *h = (struct Crab *)R_ExternalPtrAddr(e); wickra_crab_reset(h); @@ -3456,6 +3796,10 @@ SEXP wk_cumulative_volume_delta_is_ready(SEXP e) { struct CumulativeVolumeDelta *h = (struct CumulativeVolumeDelta *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_cumulative_volume_delta_is_ready(h)); } +SEXP wk_cumulative_volume_delta_name(SEXP e) { + struct CumulativeVolumeDelta *h = (struct CumulativeVolumeDelta *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_cumulative_volume_delta_name(h)); +} SEXP wk_cumulative_volume_delta_reset(SEXP e) { struct CumulativeVolumeDelta *h = (struct CumulativeVolumeDelta *)R_ExternalPtrAddr(e); wickra_cumulative_volume_delta_reset(h); @@ -3487,6 +3831,10 @@ SEXP wk_cumulative_volume_index_is_ready(SEXP e) { struct CumulativeVolumeIndex *h = (struct CumulativeVolumeIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_cumulative_volume_index_is_ready(h)); } +SEXP wk_cumulative_volume_index_name(SEXP e) { + struct CumulativeVolumeIndex *h = (struct CumulativeVolumeIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_cumulative_volume_index_name(h)); +} SEXP wk_cumulative_volume_index_reset(SEXP e) { struct CumulativeVolumeIndex *h = (struct CumulativeVolumeIndex *)R_ExternalPtrAddr(e); wickra_cumulative_volume_index_reset(h); @@ -3528,6 +3876,10 @@ SEXP wk_cup_and_handle_is_ready(SEXP e) { struct CupAndHandle *h = (struct CupAndHandle *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_cup_and_handle_is_ready(h)); } +SEXP wk_cup_and_handle_name(SEXP e) { + struct CupAndHandle *h = (struct CupAndHandle *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_cup_and_handle_name(h)); +} SEXP wk_cup_and_handle_reset(SEXP e) { struct CupAndHandle *h = (struct CupAndHandle *)R_ExternalPtrAddr(e); wickra_cup_and_handle_reset(h); @@ -3567,6 +3919,10 @@ SEXP wk_cybernetic_cycle_is_ready(SEXP e) { struct CyberneticCycle *h = (struct CyberneticCycle *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_cybernetic_cycle_is_ready(h)); } +SEXP wk_cybernetic_cycle_name(SEXP e) { + struct CyberneticCycle *h = (struct CyberneticCycle *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_cybernetic_cycle_name(h)); +} SEXP wk_cybernetic_cycle_reset(SEXP e) { struct CyberneticCycle *h = (struct CyberneticCycle *)R_ExternalPtrAddr(e); wickra_cybernetic_cycle_reset(h); @@ -3608,6 +3964,10 @@ SEXP wk_cypher_is_ready(SEXP e) { struct Cypher *h = (struct Cypher *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_cypher_is_ready(h)); } +SEXP wk_cypher_name(SEXP e) { + struct Cypher *h = (struct Cypher *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_cypher_name(h)); +} SEXP wk_cypher_reset(SEXP e) { struct Cypher *h = (struct Cypher *)R_ExternalPtrAddr(e); wickra_cypher_reset(h); @@ -3646,6 +4006,10 @@ SEXP wk_day_of_week_profile_is_ready(SEXP e) { struct DayOfWeekProfile *h = (struct DayOfWeekProfile *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_day_of_week_profile_is_ready(h)); } +SEXP wk_day_of_week_profile_name(SEXP e) { + struct DayOfWeekProfile *h = (struct DayOfWeekProfile *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_day_of_week_profile_name(h)); +} SEXP wk_day_of_week_profile_reset(SEXP e) { struct DayOfWeekProfile *h = (struct DayOfWeekProfile *)R_ExternalPtrAddr(e); wickra_day_of_week_profile_reset(h); @@ -3685,6 +4049,10 @@ SEXP wk_decycler_is_ready(SEXP e) { struct Decycler *h = (struct Decycler *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_decycler_is_ready(h)); } +SEXP wk_decycler_name(SEXP e) { + struct Decycler *h = (struct Decycler *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_decycler_name(h)); +} SEXP wk_decycler_reset(SEXP e) { struct Decycler *h = (struct Decycler *)R_ExternalPtrAddr(e); wickra_decycler_reset(h); @@ -3724,6 +4092,10 @@ SEXP wk_decycler_oscillator_is_ready(SEXP e) { struct DecyclerOscillator *h = (struct DecyclerOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_decycler_oscillator_is_ready(h)); } +SEXP wk_decycler_oscillator_name(SEXP e) { + struct DecyclerOscillator *h = (struct DecyclerOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_decycler_oscillator_name(h)); +} SEXP wk_decycler_oscillator_reset(SEXP e) { struct DecyclerOscillator *h = (struct DecyclerOscillator *)R_ExternalPtrAddr(e); wickra_decycler_oscillator_reset(h); @@ -3763,6 +4135,10 @@ SEXP wk_dema_is_ready(SEXP e) { struct Dema *h = (struct Dema *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_dema_is_ready(h)); } +SEXP wk_dema_name(SEXP e) { + struct Dema *h = (struct Dema *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_dema_name(h)); +} SEXP wk_dema_reset(SEXP e) { struct Dema *h = (struct Dema *)R_ExternalPtrAddr(e); wickra_dema_reset(h); @@ -3804,6 +4180,10 @@ SEXP wk_demand_index_is_ready(SEXP e) { struct DemandIndex *h = (struct DemandIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_demand_index_is_ready(h)); } +SEXP wk_demand_index_name(SEXP e) { + struct DemandIndex *h = (struct DemandIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_demand_index_name(h)); +} SEXP wk_demand_index_reset(SEXP e) { struct DemandIndex *h = (struct DemandIndex *)R_ExternalPtrAddr(e); wickra_demand_index_reset(h); @@ -3847,6 +4227,10 @@ SEXP wk_demark_pivots_is_ready(SEXP e) { struct DemarkPivots *h = (struct DemarkPivots *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_demark_pivots_is_ready(h)); } +SEXP wk_demark_pivots_name(SEXP e) { + struct DemarkPivots *h = (struct DemarkPivots *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_demark_pivots_name(h)); +} SEXP wk_demark_pivots_reset(SEXP e) { struct DemarkPivots *h = (struct DemarkPivots *)R_ExternalPtrAddr(e); wickra_demark_pivots_reset(h); @@ -3878,6 +4262,10 @@ SEXP wk_depth_slope_is_ready(SEXP e) { struct DepthSlope *h = (struct DepthSlope *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_depth_slope_is_ready(h)); } +SEXP wk_depth_slope_name(SEXP e) { + struct DepthSlope *h = (struct DepthSlope *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_depth_slope_name(h)); +} SEXP wk_depth_slope_reset(SEXP e) { struct DepthSlope *h = (struct DepthSlope *)R_ExternalPtrAddr(e); wickra_depth_slope_reset(h); @@ -3917,6 +4305,10 @@ SEXP wk_derivative_oscillator_is_ready(SEXP e) { struct DerivativeOscillator *h = (struct DerivativeOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_derivative_oscillator_is_ready(h)); } +SEXP wk_derivative_oscillator_name(SEXP e) { + struct DerivativeOscillator *h = (struct DerivativeOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_derivative_oscillator_name(h)); +} SEXP wk_derivative_oscillator_reset(SEXP e) { struct DerivativeOscillator *h = (struct DerivativeOscillator *)R_ExternalPtrAddr(e); wickra_derivative_oscillator_reset(h); @@ -3956,6 +4348,10 @@ SEXP wk_detrended_std_dev_is_ready(SEXP e) { struct DetrendedStdDev *h = (struct DetrendedStdDev *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_detrended_std_dev_is_ready(h)); } +SEXP wk_detrended_std_dev_name(SEXP e) { + struct DetrendedStdDev *h = (struct DetrendedStdDev *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_detrended_std_dev_name(h)); +} SEXP wk_detrended_std_dev_reset(SEXP e) { struct DetrendedStdDev *h = (struct DetrendedStdDev *)R_ExternalPtrAddr(e); wickra_detrended_std_dev_reset(h); @@ -3995,6 +4391,10 @@ SEXP wk_disparity_index_is_ready(SEXP e) { struct DisparityIndex *h = (struct DisparityIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_disparity_index_is_ready(h)); } +SEXP wk_disparity_index_name(SEXP e) { + struct DisparityIndex *h = (struct DisparityIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_disparity_index_name(h)); +} SEXP wk_disparity_index_reset(SEXP e) { struct DisparityIndex *h = (struct DisparityIndex *)R_ExternalPtrAddr(e); wickra_disparity_index_reset(h); @@ -4034,6 +4434,10 @@ SEXP wk_distance_ssd_is_ready(SEXP e) { struct DistanceSsd *h = (struct DistanceSsd *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_distance_ssd_is_ready(h)); } +SEXP wk_distance_ssd_name(SEXP e) { + struct DistanceSsd *h = (struct DistanceSsd *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_distance_ssd_name(h)); +} SEXP wk_distance_ssd_reset(SEXP e) { struct DistanceSsd *h = (struct DistanceSsd *)R_ExternalPtrAddr(e); wickra_distance_ssd_reset(h); @@ -4075,6 +4479,10 @@ SEXP wk_doji_is_ready(SEXP e) { struct Doji *h = (struct Doji *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_doji_is_ready(h)); } +SEXP wk_doji_name(SEXP e) { + struct Doji *h = (struct Doji *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_doji_name(h)); +} SEXP wk_doji_reset(SEXP e) { struct Doji *h = (struct Doji *)R_ExternalPtrAddr(e); wickra_doji_reset(h); @@ -4116,6 +4524,10 @@ SEXP wk_doji_star_is_ready(SEXP e) { struct DojiStar *h = (struct DojiStar *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_doji_star_is_ready(h)); } +SEXP wk_doji_star_name(SEXP e) { + struct DojiStar *h = (struct DojiStar *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_doji_star_name(h)); +} SEXP wk_doji_star_reset(SEXP e) { struct DojiStar *h = (struct DojiStar *)R_ExternalPtrAddr(e); wickra_doji_star_reset(h); @@ -4161,6 +4573,10 @@ SEXP wk_dollar_bars_update(SEXP e, SEXP a0, SEXP a1, SEXP a2, SEXP a3, SEXP a4, UNPROTECT(3); return r; } +SEXP wk_dollar_bars_name(SEXP e) { + struct DollarBars *h = (struct DollarBars *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_dollar_bars_name(h)); +} SEXP wk_dollar_bars_reset(SEXP e) { struct DollarBars *h = (struct DollarBars *)R_ExternalPtrAddr(e); wickra_dollar_bars_reset(h); @@ -4204,6 +4620,10 @@ SEXP wk_donchian_is_ready(SEXP e) { struct Donchian *h = (struct Donchian *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_donchian_is_ready(h)); } +SEXP wk_donchian_name(SEXP e) { + struct Donchian *h = (struct Donchian *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_donchian_name(h)); +} SEXP wk_donchian_reset(SEXP e) { struct Donchian *h = (struct Donchian *)R_ExternalPtrAddr(e); wickra_donchian_reset(h); @@ -4245,6 +4665,10 @@ SEXP wk_donchian_stop_is_ready(SEXP e) { struct DonchianStop *h = (struct DonchianStop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_donchian_stop_is_ready(h)); } +SEXP wk_donchian_stop_name(SEXP e) { + struct DonchianStop *h = (struct DonchianStop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_donchian_stop_name(h)); +} SEXP wk_donchian_stop_reset(SEXP e) { struct DonchianStop *h = (struct DonchianStop *)R_ExternalPtrAddr(e); wickra_donchian_stop_reset(h); @@ -4292,6 +4716,10 @@ SEXP wk_double_bollinger_is_ready(SEXP e) { struct DoubleBollinger *h = (struct DoubleBollinger *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_double_bollinger_is_ready(h)); } +SEXP wk_double_bollinger_name(SEXP e) { + struct DoubleBollinger *h = (struct DoubleBollinger *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_double_bollinger_name(h)); +} SEXP wk_double_bollinger_reset(SEXP e) { struct DoubleBollinger *h = (struct DoubleBollinger *)R_ExternalPtrAddr(e); wickra_double_bollinger_reset(h); @@ -4333,6 +4761,10 @@ SEXP wk_double_top_bottom_is_ready(SEXP e) { struct DoubleTopBottom *h = (struct DoubleTopBottom *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_double_top_bottom_is_ready(h)); } +SEXP wk_double_top_bottom_name(SEXP e) { + struct DoubleTopBottom *h = (struct DoubleTopBottom *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_double_top_bottom_name(h)); +} SEXP wk_double_top_bottom_reset(SEXP e) { struct DoubleTopBottom *h = (struct DoubleTopBottom *)R_ExternalPtrAddr(e); wickra_double_top_bottom_reset(h); @@ -4374,6 +4806,10 @@ SEXP wk_downside_gap_three_methods_is_ready(SEXP e) { struct DownsideGapThreeMethods *h = (struct DownsideGapThreeMethods *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_downside_gap_three_methods_is_ready(h)); } +SEXP wk_downside_gap_three_methods_name(SEXP e) { + struct DownsideGapThreeMethods *h = (struct DownsideGapThreeMethods *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_downside_gap_three_methods_name(h)); +} SEXP wk_downside_gap_three_methods_reset(SEXP e) { struct DownsideGapThreeMethods *h = (struct DownsideGapThreeMethods *)R_ExternalPtrAddr(e); wickra_downside_gap_three_methods_reset(h); @@ -4413,6 +4849,10 @@ SEXP wk_dpo_is_ready(SEXP e) { struct Dpo *h = (struct Dpo *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_dpo_is_ready(h)); } +SEXP wk_dpo_name(SEXP e) { + struct Dpo *h = (struct Dpo *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_dpo_name(h)); +} SEXP wk_dpo_reset(SEXP e) { struct Dpo *h = (struct Dpo *)R_ExternalPtrAddr(e); wickra_dpo_reset(h); @@ -4454,6 +4894,10 @@ SEXP wk_dragonfly_doji_is_ready(SEXP e) { struct DragonflyDoji *h = (struct DragonflyDoji *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_dragonfly_doji_is_ready(h)); } +SEXP wk_dragonfly_doji_name(SEXP e) { + struct DragonflyDoji *h = (struct DragonflyDoji *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_dragonfly_doji_name(h)); +} SEXP wk_dragonfly_doji_reset(SEXP e) { struct DragonflyDoji *h = (struct DragonflyDoji *)R_ExternalPtrAddr(e); wickra_dragonfly_doji_reset(h); @@ -4493,6 +4937,10 @@ SEXP wk_drawdown_duration_is_ready(SEXP e) { struct DrawdownDuration *h = (struct DrawdownDuration *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_drawdown_duration_is_ready(h)); } +SEXP wk_drawdown_duration_name(SEXP e) { + struct DrawdownDuration *h = (struct DrawdownDuration *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_drawdown_duration_name(h)); +} SEXP wk_drawdown_duration_reset(SEXP e) { struct DrawdownDuration *h = (struct DrawdownDuration *)R_ExternalPtrAddr(e); wickra_drawdown_duration_reset(h); @@ -4534,6 +4982,10 @@ SEXP wk_dumpling_top_is_ready(SEXP e) { struct DumplingTop *h = (struct DumplingTop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_dumpling_top_is_ready(h)); } +SEXP wk_dumpling_top_name(SEXP e) { + struct DumplingTop *h = (struct DumplingTop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_dumpling_top_name(h)); +} SEXP wk_dumpling_top_reset(SEXP e) { struct DumplingTop *h = (struct DumplingTop *)R_ExternalPtrAddr(e); wickra_dumpling_top_reset(h); @@ -4575,6 +5027,10 @@ SEXP wk_dx_is_ready(SEXP e) { struct Dx *h = (struct Dx *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_dx_is_ready(h)); } +SEXP wk_dx_name(SEXP e) { + struct Dx *h = (struct Dx *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_dx_name(h)); +} SEXP wk_dx_reset(SEXP e) { struct Dx *h = (struct Dx *)R_ExternalPtrAddr(e); wickra_dx_reset(h); @@ -4614,6 +5070,10 @@ SEXP wk_dynamic_momentum_index_is_ready(SEXP e) { struct DynamicMomentumIndex *h = (struct DynamicMomentumIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_dynamic_momentum_index_is_ready(h)); } +SEXP wk_dynamic_momentum_index_name(SEXP e) { + struct DynamicMomentumIndex *h = (struct DynamicMomentumIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_dynamic_momentum_index_name(h)); +} SEXP wk_dynamic_momentum_index_reset(SEXP e) { struct DynamicMomentumIndex *h = (struct DynamicMomentumIndex *)R_ExternalPtrAddr(e); wickra_dynamic_momentum_index_reset(h); @@ -4655,6 +5115,10 @@ SEXP wk_ease_of_movement_is_ready(SEXP e) { struct EaseOfMovement *h = (struct EaseOfMovement *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ease_of_movement_is_ready(h)); } +SEXP wk_ease_of_movement_name(SEXP e) { + struct EaseOfMovement *h = (struct EaseOfMovement *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ease_of_movement_name(h)); +} SEXP wk_ease_of_movement_reset(SEXP e) { struct EaseOfMovement *h = (struct EaseOfMovement *)R_ExternalPtrAddr(e); wickra_ease_of_movement_reset(h); @@ -4686,6 +5150,10 @@ SEXP wk_effective_spread_is_ready(SEXP e) { struct EffectiveSpread *h = (struct EffectiveSpread *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_effective_spread_is_ready(h)); } +SEXP wk_effective_spread_name(SEXP e) { + struct EffectiveSpread *h = (struct EffectiveSpread *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_effective_spread_name(h)); +} SEXP wk_effective_spread_reset(SEXP e) { struct EffectiveSpread *h = (struct EffectiveSpread *)R_ExternalPtrAddr(e); wickra_effective_spread_reset(h); @@ -4725,6 +5193,10 @@ SEXP wk_ehlers_stochastic_is_ready(SEXP e) { struct EhlersStochastic *h = (struct EhlersStochastic *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ehlers_stochastic_is_ready(h)); } +SEXP wk_ehlers_stochastic_name(SEXP e) { + struct EhlersStochastic *h = (struct EhlersStochastic *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ehlers_stochastic_name(h)); +} SEXP wk_ehlers_stochastic_reset(SEXP e) { struct EhlersStochastic *h = (struct EhlersStochastic *)R_ExternalPtrAddr(e); wickra_ehlers_stochastic_reset(h); @@ -4764,6 +5236,10 @@ SEXP wk_ehma_is_ready(SEXP e) { struct Ehma *h = (struct Ehma *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ehma_is_ready(h)); } +SEXP wk_ehma_name(SEXP e) { + struct Ehma *h = (struct Ehma *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ehma_name(h)); +} SEXP wk_ehma_reset(SEXP e) { struct Ehma *h = (struct Ehma *)R_ExternalPtrAddr(e); wickra_ehma_reset(h); @@ -4803,6 +5279,10 @@ SEXP wk_elder_impulse_is_ready(SEXP e) { struct ElderImpulse *h = (struct ElderImpulse *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_elder_impulse_is_ready(h)); } +SEXP wk_elder_impulse_name(SEXP e) { + struct ElderImpulse *h = (struct ElderImpulse *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_elder_impulse_name(h)); +} SEXP wk_elder_impulse_reset(SEXP e) { struct ElderImpulse *h = (struct ElderImpulse *)R_ExternalPtrAddr(e); wickra_elder_impulse_reset(h); @@ -4844,6 +5324,10 @@ SEXP wk_elder_ray_is_ready(SEXP e) { struct ElderRay *h = (struct ElderRay *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_elder_ray_is_ready(h)); } +SEXP wk_elder_ray_name(SEXP e) { + struct ElderRay *h = (struct ElderRay *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_elder_ray_name(h)); +} SEXP wk_elder_ray_reset(SEXP e) { struct ElderRay *h = (struct ElderRay *)R_ExternalPtrAddr(e); wickra_elder_ray_reset(h); @@ -4885,6 +5369,10 @@ SEXP wk_elder_safe_zone_is_ready(SEXP e) { struct ElderSafeZone *h = (struct ElderSafeZone *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_elder_safe_zone_is_ready(h)); } +SEXP wk_elder_safe_zone_name(SEXP e) { + struct ElderSafeZone *h = (struct ElderSafeZone *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_elder_safe_zone_name(h)); +} SEXP wk_elder_safe_zone_reset(SEXP e) { struct ElderSafeZone *h = (struct ElderSafeZone *)R_ExternalPtrAddr(e); wickra_elder_safe_zone_reset(h); @@ -4924,6 +5412,10 @@ SEXP wk_ema_is_ready(SEXP e) { struct Ema *h = (struct Ema *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ema_is_ready(h)); } +SEXP wk_ema_name(SEXP e) { + struct Ema *h = (struct Ema *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ema_name(h)); +} SEXP wk_ema_reset(SEXP e) { struct Ema *h = (struct Ema *)R_ExternalPtrAddr(e); wickra_ema_reset(h); @@ -4963,6 +5455,10 @@ SEXP wk_empirical_mode_decomposition_is_ready(SEXP e) { struct EmpiricalModeDecomposition *h = (struct EmpiricalModeDecomposition *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_empirical_mode_decomposition_is_ready(h)); } +SEXP wk_empirical_mode_decomposition_name(SEXP e) { + struct EmpiricalModeDecomposition *h = (struct EmpiricalModeDecomposition *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_empirical_mode_decomposition_name(h)); +} SEXP wk_empirical_mode_decomposition_reset(SEXP e) { struct EmpiricalModeDecomposition *h = (struct EmpiricalModeDecomposition *)R_ExternalPtrAddr(e); wickra_empirical_mode_decomposition_reset(h); @@ -5004,6 +5500,10 @@ SEXP wk_engulfing_is_ready(SEXP e) { struct Engulfing *h = (struct Engulfing *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_engulfing_is_ready(h)); } +SEXP wk_engulfing_name(SEXP e) { + struct Engulfing *h = (struct Engulfing *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_engulfing_name(h)); +} SEXP wk_engulfing_reset(SEXP e) { struct Engulfing *h = (struct Engulfing *)R_ExternalPtrAddr(e); wickra_engulfing_reset(h); @@ -5045,6 +5545,10 @@ SEXP wk_equivolume_is_ready(SEXP e) { struct Equivolume *h = (struct Equivolume *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_equivolume_is_ready(h)); } +SEXP wk_equivolume_name(SEXP e) { + struct Equivolume *h = (struct Equivolume *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_equivolume_name(h)); +} SEXP wk_equivolume_reset(SEXP e) { struct Equivolume *h = (struct Equivolume *)R_ExternalPtrAddr(e); wickra_equivolume_reset(h); @@ -5076,6 +5580,10 @@ SEXP wk_estimated_leverage_ratio_is_ready(SEXP e) { struct EstimatedLeverageRatio *h = (struct EstimatedLeverageRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_estimated_leverage_ratio_is_ready(h)); } +SEXP wk_estimated_leverage_ratio_name(SEXP e) { + struct EstimatedLeverageRatio *h = (struct EstimatedLeverageRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_estimated_leverage_ratio_name(h)); +} SEXP wk_estimated_leverage_ratio_reset(SEXP e) { struct EstimatedLeverageRatio *h = (struct EstimatedLeverageRatio *)R_ExternalPtrAddr(e); wickra_estimated_leverage_ratio_reset(h); @@ -5115,6 +5623,10 @@ SEXP wk_even_better_sinewave_is_ready(SEXP e) { struct EvenBetterSinewave *h = (struct EvenBetterSinewave *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_even_better_sinewave_is_ready(h)); } +SEXP wk_even_better_sinewave_name(SEXP e) { + struct EvenBetterSinewave *h = (struct EvenBetterSinewave *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_even_better_sinewave_name(h)); +} SEXP wk_even_better_sinewave_reset(SEXP e) { struct EvenBetterSinewave *h = (struct EvenBetterSinewave *)R_ExternalPtrAddr(e); wickra_even_better_sinewave_reset(h); @@ -5156,6 +5668,10 @@ SEXP wk_evening_doji_star_is_ready(SEXP e) { struct EveningDojiStar *h = (struct EveningDojiStar *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_evening_doji_star_is_ready(h)); } +SEXP wk_evening_doji_star_name(SEXP e) { + struct EveningDojiStar *h = (struct EveningDojiStar *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_evening_doji_star_name(h)); +} SEXP wk_evening_doji_star_reset(SEXP e) { struct EveningDojiStar *h = (struct EveningDojiStar *)R_ExternalPtrAddr(e); wickra_evening_doji_star_reset(h); @@ -5197,6 +5713,10 @@ SEXP wk_evwma_is_ready(SEXP e) { struct Evwma *h = (struct Evwma *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_evwma_is_ready(h)); } +SEXP wk_evwma_name(SEXP e) { + struct Evwma *h = (struct Evwma *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_evwma_name(h)); +} SEXP wk_evwma_reset(SEXP e) { struct Evwma *h = (struct Evwma *)R_ExternalPtrAddr(e); wickra_evwma_reset(h); @@ -5236,6 +5756,10 @@ SEXP wk_ewma_volatility_is_ready(SEXP e) { struct EwmaVolatility *h = (struct EwmaVolatility *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ewma_volatility_is_ready(h)); } +SEXP wk_ewma_volatility_name(SEXP e) { + struct EwmaVolatility *h = (struct EwmaVolatility *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ewma_volatility_name(h)); +} SEXP wk_ewma_volatility_reset(SEXP e) { struct EwmaVolatility *h = (struct EwmaVolatility *)R_ExternalPtrAddr(e); wickra_ewma_volatility_reset(h); @@ -5275,6 +5799,10 @@ SEXP wk_expectancy_is_ready(SEXP e) { struct Expectancy *h = (struct Expectancy *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_expectancy_is_ready(h)); } +SEXP wk_expectancy_name(SEXP e) { + struct Expectancy *h = (struct Expectancy *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_expectancy_name(h)); +} SEXP wk_expectancy_reset(SEXP e) { struct Expectancy *h = (struct Expectancy *)R_ExternalPtrAddr(e); wickra_expectancy_reset(h); @@ -5316,6 +5844,10 @@ SEXP wk_falling_three_methods_is_ready(SEXP e) { struct FallingThreeMethods *h = (struct FallingThreeMethods *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_falling_three_methods_is_ready(h)); } +SEXP wk_falling_three_methods_name(SEXP e) { + struct FallingThreeMethods *h = (struct FallingThreeMethods *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_falling_three_methods_name(h)); +} SEXP wk_falling_three_methods_reset(SEXP e) { struct FallingThreeMethods *h = (struct FallingThreeMethods *)R_ExternalPtrAddr(e); wickra_falling_three_methods_reset(h); @@ -5355,6 +5887,10 @@ SEXP wk_fama_is_ready(SEXP e) { struct Fama *h = (struct Fama *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fama_is_ready(h)); } +SEXP wk_fama_name(SEXP e) { + struct Fama *h = (struct Fama *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fama_name(h)); +} SEXP wk_fama_reset(SEXP e) { struct Fama *h = (struct Fama *)R_ExternalPtrAddr(e); wickra_fama_reset(h); @@ -5398,6 +5934,10 @@ SEXP wk_fib_arcs_is_ready(SEXP e) { struct FibArcs *h = (struct FibArcs *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fib_arcs_is_ready(h)); } +SEXP wk_fib_arcs_name(SEXP e) { + struct FibArcs *h = (struct FibArcs *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fib_arcs_name(h)); +} SEXP wk_fib_arcs_reset(SEXP e) { struct FibArcs *h = (struct FibArcs *)R_ExternalPtrAddr(e); wickra_fib_arcs_reset(h); @@ -5443,6 +5983,10 @@ SEXP wk_fib_channel_is_ready(SEXP e) { struct FibChannel *h = (struct FibChannel *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fib_channel_is_ready(h)); } +SEXP wk_fib_channel_name(SEXP e) { + struct FibChannel *h = (struct FibChannel *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fib_channel_name(h)); +} SEXP wk_fib_channel_reset(SEXP e) { struct FibChannel *h = (struct FibChannel *)R_ExternalPtrAddr(e); wickra_fib_channel_reset(h); @@ -5484,6 +6028,10 @@ SEXP wk_fib_confluence_is_ready(SEXP e) { struct FibConfluence *h = (struct FibConfluence *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fib_confluence_is_ready(h)); } +SEXP wk_fib_confluence_name(SEXP e) { + struct FibConfluence *h = (struct FibConfluence *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fib_confluence_name(h)); +} SEXP wk_fib_confluence_reset(SEXP e) { struct FibConfluence *h = (struct FibConfluence *)R_ExternalPtrAddr(e); wickra_fib_confluence_reset(h); @@ -5531,6 +6079,10 @@ SEXP wk_fib_extension_is_ready(SEXP e) { struct FibExtension *h = (struct FibExtension *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fib_extension_is_ready(h)); } +SEXP wk_fib_extension_name(SEXP e) { + struct FibExtension *h = (struct FibExtension *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fib_extension_name(h)); +} SEXP wk_fib_extension_reset(SEXP e) { struct FibExtension *h = (struct FibExtension *)R_ExternalPtrAddr(e); wickra_fib_extension_reset(h); @@ -5574,6 +6126,10 @@ SEXP wk_fib_fan_is_ready(SEXP e) { struct FibFan *h = (struct FibFan *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fib_fan_is_ready(h)); } +SEXP wk_fib_fan_name(SEXP e) { + struct FibFan *h = (struct FibFan *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fib_fan_name(h)); +} SEXP wk_fib_fan_reset(SEXP e) { struct FibFan *h = (struct FibFan *)R_ExternalPtrAddr(e); wickra_fib_fan_reset(h); @@ -5619,6 +6175,10 @@ SEXP wk_fib_projection_is_ready(SEXP e) { struct FibProjection *h = (struct FibProjection *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fib_projection_is_ready(h)); } +SEXP wk_fib_projection_name(SEXP e) { + struct FibProjection *h = (struct FibProjection *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fib_projection_name(h)); +} SEXP wk_fib_projection_reset(SEXP e) { struct FibProjection *h = (struct FibProjection *)R_ExternalPtrAddr(e); wickra_fib_projection_reset(h); @@ -5670,6 +6230,10 @@ SEXP wk_fib_retracement_is_ready(SEXP e) { struct FibRetracement *h = (struct FibRetracement *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fib_retracement_is_ready(h)); } +SEXP wk_fib_retracement_name(SEXP e) { + struct FibRetracement *h = (struct FibRetracement *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fib_retracement_name(h)); +} SEXP wk_fib_retracement_reset(SEXP e) { struct FibRetracement *h = (struct FibRetracement *)R_ExternalPtrAddr(e); wickra_fib_retracement_reset(h); @@ -5711,6 +6275,10 @@ SEXP wk_fib_time_zones_is_ready(SEXP e) { struct FibTimeZones *h = (struct FibTimeZones *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fib_time_zones_is_ready(h)); } +SEXP wk_fib_time_zones_name(SEXP e) { + struct FibTimeZones *h = (struct FibTimeZones *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fib_time_zones_name(h)); +} SEXP wk_fib_time_zones_reset(SEXP e) { struct FibTimeZones *h = (struct FibTimeZones *)R_ExternalPtrAddr(e); wickra_fib_time_zones_reset(h); @@ -5762,6 +6330,10 @@ SEXP wk_fibonacci_pivots_is_ready(SEXP e) { struct FibonacciPivots *h = (struct FibonacciPivots *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fibonacci_pivots_is_ready(h)); } +SEXP wk_fibonacci_pivots_name(SEXP e) { + struct FibonacciPivots *h = (struct FibonacciPivots *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fibonacci_pivots_name(h)); +} SEXP wk_fibonacci_pivots_reset(SEXP e) { struct FibonacciPivots *h = (struct FibonacciPivots *)R_ExternalPtrAddr(e); wickra_fibonacci_pivots_reset(h); @@ -5801,6 +6373,10 @@ SEXP wk_fisher_rsi_is_ready(SEXP e) { struct FisherRsi *h = (struct FisherRsi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fisher_rsi_is_ready(h)); } +SEXP wk_fisher_rsi_name(SEXP e) { + struct FisherRsi *h = (struct FisherRsi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fisher_rsi_name(h)); +} SEXP wk_fisher_rsi_reset(SEXP e) { struct FisherRsi *h = (struct FisherRsi *)R_ExternalPtrAddr(e); wickra_fisher_rsi_reset(h); @@ -5840,6 +6416,10 @@ SEXP wk_fisher_transform_is_ready(SEXP e) { struct FisherTransform *h = (struct FisherTransform *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fisher_transform_is_ready(h)); } +SEXP wk_fisher_transform_name(SEXP e) { + struct FisherTransform *h = (struct FisherTransform *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fisher_transform_name(h)); +} SEXP wk_fisher_transform_reset(SEXP e) { struct FisherTransform *h = (struct FisherTransform *)R_ExternalPtrAddr(e); wickra_fisher_transform_reset(h); @@ -5881,6 +6461,10 @@ SEXP wk_flag_pennant_is_ready(SEXP e) { struct FlagPennant *h = (struct FlagPennant *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_flag_pennant_is_ready(h)); } +SEXP wk_flag_pennant_name(SEXP e) { + struct FlagPennant *h = (struct FlagPennant *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_flag_pennant_name(h)); +} SEXP wk_flag_pennant_reset(SEXP e) { struct FlagPennant *h = (struct FlagPennant *)R_ExternalPtrAddr(e); wickra_flag_pennant_reset(h); @@ -5928,6 +6512,10 @@ SEXP wk_footprint_is_ready(SEXP e) { struct Footprint *h = (struct Footprint *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_footprint_is_ready(h)); } +SEXP wk_footprint_name(SEXP e) { + struct Footprint *h = (struct Footprint *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_footprint_name(h)); +} SEXP wk_footprint_reset(SEXP e) { struct Footprint *h = (struct Footprint *)R_ExternalPtrAddr(e); wickra_footprint_reset(h); @@ -5969,6 +6557,10 @@ SEXP wk_force_index_is_ready(SEXP e) { struct ForceIndex *h = (struct ForceIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_force_index_is_ready(h)); } +SEXP wk_force_index_name(SEXP e) { + struct ForceIndex *h = (struct ForceIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_force_index_name(h)); +} SEXP wk_force_index_reset(SEXP e) { struct ForceIndex *h = (struct ForceIndex *)R_ExternalPtrAddr(e); wickra_force_index_reset(h); @@ -6010,6 +6602,10 @@ SEXP wk_fractal_chaos_bands_is_ready(SEXP e) { struct FractalChaosBands *h = (struct FractalChaosBands *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fractal_chaos_bands_is_ready(h)); } +SEXP wk_fractal_chaos_bands_name(SEXP e) { + struct FractalChaosBands *h = (struct FractalChaosBands *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fractal_chaos_bands_name(h)); +} SEXP wk_fractal_chaos_bands_reset(SEXP e) { struct FractalChaosBands *h = (struct FractalChaosBands *)R_ExternalPtrAddr(e); wickra_fractal_chaos_bands_reset(h); @@ -6049,6 +6645,10 @@ SEXP wk_frama_is_ready(SEXP e) { struct Frama *h = (struct Frama *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_frama_is_ready(h)); } +SEXP wk_frama_name(SEXP e) { + struct Frama *h = (struct Frama *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_frama_name(h)); +} SEXP wk_frama_reset(SEXP e) { struct Frama *h = (struct Frama *)R_ExternalPtrAddr(e); wickra_frama_reset(h); @@ -6090,6 +6690,10 @@ SEXP wk_fry_pan_bottom_is_ready(SEXP e) { struct FryPanBottom *h = (struct FryPanBottom *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_fry_pan_bottom_is_ready(h)); } +SEXP wk_fry_pan_bottom_name(SEXP e) { + struct FryPanBottom *h = (struct FryPanBottom *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_fry_pan_bottom_name(h)); +} SEXP wk_fry_pan_bottom_reset(SEXP e) { struct FryPanBottom *h = (struct FryPanBottom *)R_ExternalPtrAddr(e); wickra_fry_pan_bottom_reset(h); @@ -6121,6 +6725,10 @@ SEXP wk_funding_basis_is_ready(SEXP e) { struct FundingBasis *h = (struct FundingBasis *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_funding_basis_is_ready(h)); } +SEXP wk_funding_basis_name(SEXP e) { + struct FundingBasis *h = (struct FundingBasis *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_funding_basis_name(h)); +} SEXP wk_funding_basis_reset(SEXP e) { struct FundingBasis *h = (struct FundingBasis *)R_ExternalPtrAddr(e); wickra_funding_basis_reset(h); @@ -6152,6 +6760,10 @@ SEXP wk_funding_implied_apr_is_ready(SEXP e) { struct FundingImpliedApr *h = (struct FundingImpliedApr *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_funding_implied_apr_is_ready(h)); } +SEXP wk_funding_implied_apr_name(SEXP e) { + struct FundingImpliedApr *h = (struct FundingImpliedApr *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_funding_implied_apr_name(h)); +} SEXP wk_funding_implied_apr_reset(SEXP e) { struct FundingImpliedApr *h = (struct FundingImpliedApr *)R_ExternalPtrAddr(e); wickra_funding_implied_apr_reset(h); @@ -6183,6 +6795,10 @@ SEXP wk_funding_rate_is_ready(SEXP e) { struct FundingRate *h = (struct FundingRate *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_funding_rate_is_ready(h)); } +SEXP wk_funding_rate_name(SEXP e) { + struct FundingRate *h = (struct FundingRate *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_funding_rate_name(h)); +} SEXP wk_funding_rate_reset(SEXP e) { struct FundingRate *h = (struct FundingRate *)R_ExternalPtrAddr(e); wickra_funding_rate_reset(h); @@ -6214,6 +6830,10 @@ SEXP wk_funding_rate_mean_is_ready(SEXP e) { struct FundingRateMean *h = (struct FundingRateMean *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_funding_rate_mean_is_ready(h)); } +SEXP wk_funding_rate_mean_name(SEXP e) { + struct FundingRateMean *h = (struct FundingRateMean *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_funding_rate_mean_name(h)); +} SEXP wk_funding_rate_mean_reset(SEXP e) { struct FundingRateMean *h = (struct FundingRateMean *)R_ExternalPtrAddr(e); wickra_funding_rate_mean_reset(h); @@ -6245,6 +6865,10 @@ SEXP wk_funding_rate_z_score_is_ready(SEXP e) { struct FundingRateZScore *h = (struct FundingRateZScore *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_funding_rate_z_score_is_ready(h)); } +SEXP wk_funding_rate_z_score_name(SEXP e) { + struct FundingRateZScore *h = (struct FundingRateZScore *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_funding_rate_z_score_name(h)); +} SEXP wk_funding_rate_z_score_reset(SEXP e) { struct FundingRateZScore *h = (struct FundingRateZScore *)R_ExternalPtrAddr(e); wickra_funding_rate_z_score_reset(h); @@ -6284,6 +6908,10 @@ SEXP wk_gain_loss_ratio_is_ready(SEXP e) { struct GainLossRatio *h = (struct GainLossRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_gain_loss_ratio_is_ready(h)); } +SEXP wk_gain_loss_ratio_name(SEXP e) { + struct GainLossRatio *h = (struct GainLossRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_gain_loss_ratio_name(h)); +} SEXP wk_gain_loss_ratio_reset(SEXP e) { struct GainLossRatio *h = (struct GainLossRatio *)R_ExternalPtrAddr(e); wickra_gain_loss_ratio_reset(h); @@ -6323,6 +6951,10 @@ SEXP wk_gain_to_pain_ratio_is_ready(SEXP e) { struct GainToPainRatio *h = (struct GainToPainRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_gain_to_pain_ratio_is_ready(h)); } +SEXP wk_gain_to_pain_ratio_name(SEXP e) { + struct GainToPainRatio *h = (struct GainToPainRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_gain_to_pain_ratio_name(h)); +} SEXP wk_gain_to_pain_ratio_reset(SEXP e) { struct GainToPainRatio *h = (struct GainToPainRatio *)R_ExternalPtrAddr(e); wickra_gain_to_pain_ratio_reset(h); @@ -6364,6 +6996,10 @@ SEXP wk_gap_side_by_side_white_is_ready(SEXP e) { struct GapSideBySideWhite *h = (struct GapSideBySideWhite *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_gap_side_by_side_white_is_ready(h)); } +SEXP wk_gap_side_by_side_white_name(SEXP e) { + struct GapSideBySideWhite *h = (struct GapSideBySideWhite *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_gap_side_by_side_white_name(h)); +} SEXP wk_gap_side_by_side_white_reset(SEXP e) { struct GapSideBySideWhite *h = (struct GapSideBySideWhite *)R_ExternalPtrAddr(e); wickra_gap_side_by_side_white_reset(h); @@ -6403,6 +7039,10 @@ SEXP wk_garch11_is_ready(SEXP e) { struct Garch11 *h = (struct Garch11 *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_garch11_is_ready(h)); } +SEXP wk_garch11_name(SEXP e) { + struct Garch11 *h = (struct Garch11 *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_garch11_name(h)); +} SEXP wk_garch11_reset(SEXP e) { struct Garch11 *h = (struct Garch11 *)R_ExternalPtrAddr(e); wickra_garch11_reset(h); @@ -6444,6 +7084,10 @@ SEXP wk_garman_klass_volatility_is_ready(SEXP e) { struct GarmanKlassVolatility *h = (struct GarmanKlassVolatility *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_garman_klass_volatility_is_ready(h)); } +SEXP wk_garman_klass_volatility_name(SEXP e) { + struct GarmanKlassVolatility *h = (struct GarmanKlassVolatility *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_garman_klass_volatility_name(h)); +} SEXP wk_garman_klass_volatility_reset(SEXP e) { struct GarmanKlassVolatility *h = (struct GarmanKlassVolatility *)R_ExternalPtrAddr(e); wickra_garman_klass_volatility_reset(h); @@ -6485,6 +7129,10 @@ SEXP wk_gartley_is_ready(SEXP e) { struct Gartley *h = (struct Gartley *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_gartley_is_ready(h)); } +SEXP wk_gartley_name(SEXP e) { + struct Gartley *h = (struct Gartley *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_gartley_name(h)); +} SEXP wk_gartley_reset(SEXP e) { struct Gartley *h = (struct Gartley *)R_ExternalPtrAddr(e); wickra_gartley_reset(h); @@ -6526,6 +7174,10 @@ SEXP wk_gator_oscillator_is_ready(SEXP e) { struct GatorOscillator *h = (struct GatorOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_gator_oscillator_is_ready(h)); } +SEXP wk_gator_oscillator_name(SEXP e) { + struct GatorOscillator *h = (struct GatorOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_gator_oscillator_name(h)); +} SEXP wk_gator_oscillator_reset(SEXP e) { struct GatorOscillator *h = (struct GatorOscillator *)R_ExternalPtrAddr(e); wickra_gator_oscillator_reset(h); @@ -6565,6 +7217,10 @@ SEXP wk_generalized_dema_is_ready(SEXP e) { struct GeneralizedDema *h = (struct GeneralizedDema *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_generalized_dema_is_ready(h)); } +SEXP wk_generalized_dema_name(SEXP e) { + struct GeneralizedDema *h = (struct GeneralizedDema *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_generalized_dema_name(h)); +} SEXP wk_generalized_dema_reset(SEXP e) { struct GeneralizedDema *h = (struct GeneralizedDema *)R_ExternalPtrAddr(e); wickra_generalized_dema_reset(h); @@ -6604,6 +7260,10 @@ SEXP wk_geometric_ma_is_ready(SEXP e) { struct GeometricMa *h = (struct GeometricMa *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_geometric_ma_is_ready(h)); } +SEXP wk_geometric_ma_name(SEXP e) { + struct GeometricMa *h = (struct GeometricMa *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_geometric_ma_name(h)); +} SEXP wk_geometric_ma_reset(SEXP e) { struct GeometricMa *h = (struct GeometricMa *)R_ExternalPtrAddr(e); wickra_geometric_ma_reset(h); @@ -6647,6 +7307,10 @@ SEXP wk_golden_pocket_is_ready(SEXP e) { struct GoldenPocket *h = (struct GoldenPocket *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_golden_pocket_is_ready(h)); } +SEXP wk_golden_pocket_name(SEXP e) { + struct GoldenPocket *h = (struct GoldenPocket *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_golden_pocket_name(h)); +} SEXP wk_golden_pocket_reset(SEXP e) { struct GoldenPocket *h = (struct GoldenPocket *)R_ExternalPtrAddr(e); wickra_golden_pocket_reset(h); @@ -6686,6 +7350,10 @@ SEXP wk_granger_causality_is_ready(SEXP e) { struct GrangerCausality *h = (struct GrangerCausality *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_granger_causality_is_ready(h)); } +SEXP wk_granger_causality_name(SEXP e) { + struct GrangerCausality *h = (struct GrangerCausality *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_granger_causality_name(h)); +} SEXP wk_granger_causality_reset(SEXP e) { struct GrangerCausality *h = (struct GrangerCausality *)R_ExternalPtrAddr(e); wickra_granger_causality_reset(h); @@ -6727,6 +7395,10 @@ SEXP wk_gravestone_doji_is_ready(SEXP e) { struct GravestoneDoji *h = (struct GravestoneDoji *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_gravestone_doji_is_ready(h)); } +SEXP wk_gravestone_doji_name(SEXP e) { + struct GravestoneDoji *h = (struct GravestoneDoji *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_gravestone_doji_name(h)); +} SEXP wk_gravestone_doji_reset(SEXP e) { struct GravestoneDoji *h = (struct GravestoneDoji *)R_ExternalPtrAddr(e); wickra_gravestone_doji_reset(h); @@ -6768,6 +7440,10 @@ SEXP wk_hammer_is_ready(SEXP e) { struct Hammer *h = (struct Hammer *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_hammer_is_ready(h)); } +SEXP wk_hammer_name(SEXP e) { + struct Hammer *h = (struct Hammer *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_hammer_name(h)); +} SEXP wk_hammer_reset(SEXP e) { struct Hammer *h = (struct Hammer *)R_ExternalPtrAddr(e); wickra_hammer_reset(h); @@ -6809,6 +7485,10 @@ SEXP wk_hanging_man_is_ready(SEXP e) { struct HangingMan *h = (struct HangingMan *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_hanging_man_is_ready(h)); } +SEXP wk_hanging_man_name(SEXP e) { + struct HangingMan *h = (struct HangingMan *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_hanging_man_name(h)); +} SEXP wk_hanging_man_reset(SEXP e) { struct HangingMan *h = (struct HangingMan *)R_ExternalPtrAddr(e); wickra_hanging_man_reset(h); @@ -6850,6 +7530,10 @@ SEXP wk_harami_is_ready(SEXP e) { struct Harami *h = (struct Harami *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_harami_is_ready(h)); } +SEXP wk_harami_name(SEXP e) { + struct Harami *h = (struct Harami *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_harami_name(h)); +} SEXP wk_harami_reset(SEXP e) { struct Harami *h = (struct Harami *)R_ExternalPtrAddr(e); wickra_harami_reset(h); @@ -6891,6 +7575,10 @@ SEXP wk_harami_cross_is_ready(SEXP e) { struct HaramiCross *h = (struct HaramiCross *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_harami_cross_is_ready(h)); } +SEXP wk_harami_cross_name(SEXP e) { + struct HaramiCross *h = (struct HaramiCross *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_harami_cross_name(h)); +} SEXP wk_harami_cross_reset(SEXP e) { struct HaramiCross *h = (struct HaramiCross *)R_ExternalPtrAddr(e); wickra_harami_cross_reset(h); @@ -6930,6 +7618,10 @@ SEXP wk_hasbrouck_information_share_is_ready(SEXP e) { struct HasbrouckInformationShare *h = (struct HasbrouckInformationShare *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_hasbrouck_information_share_is_ready(h)); } +SEXP wk_hasbrouck_information_share_name(SEXP e) { + struct HasbrouckInformationShare *h = (struct HasbrouckInformationShare *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_hasbrouck_information_share_name(h)); +} SEXP wk_hasbrouck_information_share_reset(SEXP e) { struct HasbrouckInformationShare *h = (struct HasbrouckInformationShare *)R_ExternalPtrAddr(e); wickra_hasbrouck_information_share_reset(h); @@ -6971,6 +7663,10 @@ SEXP wk_head_and_shoulders_is_ready(SEXP e) { struct HeadAndShoulders *h = (struct HeadAndShoulders *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_head_and_shoulders_is_ready(h)); } +SEXP wk_head_and_shoulders_name(SEXP e) { + struct HeadAndShoulders *h = (struct HeadAndShoulders *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_head_and_shoulders_name(h)); +} SEXP wk_head_and_shoulders_reset(SEXP e) { struct HeadAndShoulders *h = (struct HeadAndShoulders *)R_ExternalPtrAddr(e); wickra_head_and_shoulders_reset(h); @@ -7016,6 +7712,10 @@ SEXP wk_heikin_ashi_is_ready(SEXP e) { struct HeikinAshi *h = (struct HeikinAshi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_heikin_ashi_is_ready(h)); } +SEXP wk_heikin_ashi_name(SEXP e) { + struct HeikinAshi *h = (struct HeikinAshi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_heikin_ashi_name(h)); +} SEXP wk_heikin_ashi_reset(SEXP e) { struct HeikinAshi *h = (struct HeikinAshi *)R_ExternalPtrAddr(e); wickra_heikin_ashi_reset(h); @@ -7057,6 +7757,10 @@ SEXP wk_heikin_ashi_oscillator_is_ready(SEXP e) { struct HeikinAshiOscillator *h = (struct HeikinAshiOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_heikin_ashi_oscillator_is_ready(h)); } +SEXP wk_heikin_ashi_oscillator_name(SEXP e) { + struct HeikinAshiOscillator *h = (struct HeikinAshiOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_heikin_ashi_oscillator_name(h)); +} SEXP wk_heikin_ashi_oscillator_reset(SEXP e) { struct HeikinAshiOscillator *h = (struct HeikinAshiOscillator *)R_ExternalPtrAddr(e); wickra_heikin_ashi_oscillator_reset(h); @@ -7098,6 +7802,10 @@ SEXP wk_hi_lo_activator_is_ready(SEXP e) { struct HiLoActivator *h = (struct HiLoActivator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_hi_lo_activator_is_ready(h)); } +SEXP wk_hi_lo_activator_name(SEXP e) { + struct HiLoActivator *h = (struct HiLoActivator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_hi_lo_activator_name(h)); +} SEXP wk_hi_lo_activator_reset(SEXP e) { struct HiLoActivator *h = (struct HiLoActivator *)R_ExternalPtrAddr(e); wickra_hi_lo_activator_reset(h); @@ -7129,6 +7837,10 @@ SEXP wk_high_low_index_is_ready(SEXP e) { struct HighLowIndex *h = (struct HighLowIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_high_low_index_is_ready(h)); } +SEXP wk_high_low_index_name(SEXP e) { + struct HighLowIndex *h = (struct HighLowIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_high_low_index_name(h)); +} SEXP wk_high_low_index_reset(SEXP e) { struct HighLowIndex *h = (struct HighLowIndex *)R_ExternalPtrAddr(e); wickra_high_low_index_reset(h); @@ -7170,6 +7882,10 @@ SEXP wk_high_low_range_is_ready(SEXP e) { struct HighLowRange *h = (struct HighLowRange *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_high_low_range_is_ready(h)); } +SEXP wk_high_low_range_name(SEXP e) { + struct HighLowRange *h = (struct HighLowRange *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_high_low_range_name(h)); +} SEXP wk_high_low_range_reset(SEXP e) { struct HighLowRange *h = (struct HighLowRange *)R_ExternalPtrAddr(e); wickra_high_low_range_reset(h); @@ -7211,6 +7927,10 @@ SEXP wk_high_low_volume_nodes_is_ready(SEXP e) { struct HighLowVolumeNodes *h = (struct HighLowVolumeNodes *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_high_low_volume_nodes_is_ready(h)); } +SEXP wk_high_low_volume_nodes_name(SEXP e) { + struct HighLowVolumeNodes *h = (struct HighLowVolumeNodes *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_high_low_volume_nodes_name(h)); +} SEXP wk_high_low_volume_nodes_reset(SEXP e) { struct HighLowVolumeNodes *h = (struct HighLowVolumeNodes *)R_ExternalPtrAddr(e); wickra_high_low_volume_nodes_reset(h); @@ -7252,6 +7972,10 @@ SEXP wk_high_wave_is_ready(SEXP e) { struct HighWave *h = (struct HighWave *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_high_wave_is_ready(h)); } +SEXP wk_high_wave_name(SEXP e) { + struct HighWave *h = (struct HighWave *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_high_wave_name(h)); +} SEXP wk_high_wave_reset(SEXP e) { struct HighWave *h = (struct HighWave *)R_ExternalPtrAddr(e); wickra_high_wave_reset(h); @@ -7291,6 +8015,10 @@ SEXP wk_highpass_filter_is_ready(SEXP e) { struct HighpassFilter *h = (struct HighpassFilter *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_highpass_filter_is_ready(h)); } +SEXP wk_highpass_filter_name(SEXP e) { + struct HighpassFilter *h = (struct HighpassFilter *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_highpass_filter_name(h)); +} SEXP wk_highpass_filter_reset(SEXP e) { struct HighpassFilter *h = (struct HighpassFilter *)R_ExternalPtrAddr(e); wickra_highpass_filter_reset(h); @@ -7332,6 +8060,10 @@ SEXP wk_hikkake_is_ready(SEXP e) { struct Hikkake *h = (struct Hikkake *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_hikkake_is_ready(h)); } +SEXP wk_hikkake_name(SEXP e) { + struct Hikkake *h = (struct Hikkake *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_hikkake_name(h)); +} SEXP wk_hikkake_reset(SEXP e) { struct Hikkake *h = (struct Hikkake *)R_ExternalPtrAddr(e); wickra_hikkake_reset(h); @@ -7373,6 +8105,10 @@ SEXP wk_hikkake_modified_is_ready(SEXP e) { struct HikkakeModified *h = (struct HikkakeModified *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_hikkake_modified_is_ready(h)); } +SEXP wk_hikkake_modified_name(SEXP e) { + struct HikkakeModified *h = (struct HikkakeModified *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_hikkake_modified_name(h)); +} SEXP wk_hikkake_modified_reset(SEXP e) { struct HikkakeModified *h = (struct HikkakeModified *)R_ExternalPtrAddr(e); wickra_hikkake_modified_reset(h); @@ -7412,6 +8148,10 @@ SEXP wk_hilbert_dominant_cycle_is_ready(SEXP e) { struct HilbertDominantCycle *h = (struct HilbertDominantCycle *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_hilbert_dominant_cycle_is_ready(h)); } +SEXP wk_hilbert_dominant_cycle_name(SEXP e) { + struct HilbertDominantCycle *h = (struct HilbertDominantCycle *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_hilbert_dominant_cycle_name(h)); +} SEXP wk_hilbert_dominant_cycle_reset(SEXP e) { struct HilbertDominantCycle *h = (struct HilbertDominantCycle *)R_ExternalPtrAddr(e); wickra_hilbert_dominant_cycle_reset(h); @@ -7451,6 +8191,10 @@ SEXP wk_historical_volatility_is_ready(SEXP e) { struct HistoricalVolatility *h = (struct HistoricalVolatility *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_historical_volatility_is_ready(h)); } +SEXP wk_historical_volatility_name(SEXP e) { + struct HistoricalVolatility *h = (struct HistoricalVolatility *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_historical_volatility_name(h)); +} SEXP wk_historical_volatility_reset(SEXP e) { struct HistoricalVolatility *h = (struct HistoricalVolatility *)R_ExternalPtrAddr(e); wickra_historical_volatility_reset(h); @@ -7490,6 +8234,10 @@ SEXP wk_hma_is_ready(SEXP e) { struct Hma *h = (struct Hma *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_hma_is_ready(h)); } +SEXP wk_hma_name(SEXP e) { + struct Hma *h = (struct Hma *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_hma_name(h)); +} SEXP wk_hma_reset(SEXP e) { struct Hma *h = (struct Hma *)R_ExternalPtrAddr(e); wickra_hma_reset(h); @@ -7529,6 +8277,10 @@ SEXP wk_holt_winters_is_ready(SEXP e) { struct HoltWinters *h = (struct HoltWinters *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_holt_winters_is_ready(h)); } +SEXP wk_holt_winters_name(SEXP e) { + struct HoltWinters *h = (struct HoltWinters *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_holt_winters_name(h)); +} SEXP wk_holt_winters_reset(SEXP e) { struct HoltWinters *h = (struct HoltWinters *)R_ExternalPtrAddr(e); wickra_holt_winters_reset(h); @@ -7570,6 +8322,10 @@ SEXP wk_homing_pigeon_is_ready(SEXP e) { struct HomingPigeon *h = (struct HomingPigeon *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_homing_pigeon_is_ready(h)); } +SEXP wk_homing_pigeon_name(SEXP e) { + struct HomingPigeon *h = (struct HomingPigeon *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_homing_pigeon_name(h)); +} SEXP wk_homing_pigeon_reset(SEXP e) { struct HomingPigeon *h = (struct HomingPigeon *)R_ExternalPtrAddr(e); wickra_homing_pigeon_reset(h); @@ -7609,6 +8365,10 @@ SEXP wk_ht_dc_phase_is_ready(SEXP e) { struct HtDcPhase *h = (struct HtDcPhase *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ht_dc_phase_is_ready(h)); } +SEXP wk_ht_dc_phase_name(SEXP e) { + struct HtDcPhase *h = (struct HtDcPhase *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ht_dc_phase_name(h)); +} SEXP wk_ht_dc_phase_reset(SEXP e) { struct HtDcPhase *h = (struct HtDcPhase *)R_ExternalPtrAddr(e); wickra_ht_dc_phase_reset(h); @@ -7650,6 +8410,10 @@ SEXP wk_ht_phasor_is_ready(SEXP e) { struct HtPhasor *h = (struct HtPhasor *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ht_phasor_is_ready(h)); } +SEXP wk_ht_phasor_name(SEXP e) { + struct HtPhasor *h = (struct HtPhasor *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ht_phasor_name(h)); +} SEXP wk_ht_phasor_reset(SEXP e) { struct HtPhasor *h = (struct HtPhasor *)R_ExternalPtrAddr(e); wickra_ht_phasor_reset(h); @@ -7689,6 +8453,10 @@ SEXP wk_ht_trend_mode_is_ready(SEXP e) { struct HtTrendMode *h = (struct HtTrendMode *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ht_trend_mode_is_ready(h)); } +SEXP wk_ht_trend_mode_name(SEXP e) { + struct HtTrendMode *h = (struct HtTrendMode *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ht_trend_mode_name(h)); +} SEXP wk_ht_trend_mode_reset(SEXP e) { struct HtTrendMode *h = (struct HtTrendMode *)R_ExternalPtrAddr(e); wickra_ht_trend_mode_reset(h); @@ -7732,6 +8500,10 @@ SEXP wk_hurst_channel_is_ready(SEXP e) { struct HurstChannel *h = (struct HurstChannel *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_hurst_channel_is_ready(h)); } +SEXP wk_hurst_channel_name(SEXP e) { + struct HurstChannel *h = (struct HurstChannel *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_hurst_channel_name(h)); +} SEXP wk_hurst_channel_reset(SEXP e) { struct HurstChannel *h = (struct HurstChannel *)R_ExternalPtrAddr(e); wickra_hurst_channel_reset(h); @@ -7771,6 +8543,10 @@ SEXP wk_hurst_exponent_is_ready(SEXP e) { struct HurstExponent *h = (struct HurstExponent *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_hurst_exponent_is_ready(h)); } +SEXP wk_hurst_exponent_name(SEXP e) { + struct HurstExponent *h = (struct HurstExponent *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_hurst_exponent_name(h)); +} SEXP wk_hurst_exponent_reset(SEXP e) { struct HurstExponent *h = (struct HurstExponent *)R_ExternalPtrAddr(e); wickra_hurst_exponent_reset(h); @@ -7818,6 +8594,10 @@ SEXP wk_ichimoku_is_ready(SEXP e) { struct Ichimoku *h = (struct Ichimoku *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ichimoku_is_ready(h)); } +SEXP wk_ichimoku_name(SEXP e) { + struct Ichimoku *h = (struct Ichimoku *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ichimoku_name(h)); +} SEXP wk_ichimoku_reset(SEXP e) { struct Ichimoku *h = (struct Ichimoku *)R_ExternalPtrAddr(e); wickra_ichimoku_reset(h); @@ -7859,6 +8639,10 @@ SEXP wk_identical_three_crows_is_ready(SEXP e) { struct IdenticalThreeCrows *h = (struct IdenticalThreeCrows *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_identical_three_crows_is_ready(h)); } +SEXP wk_identical_three_crows_name(SEXP e) { + struct IdenticalThreeCrows *h = (struct IdenticalThreeCrows *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_identical_three_crows_name(h)); +} SEXP wk_identical_three_crows_reset(SEXP e) { struct IdenticalThreeCrows *h = (struct IdenticalThreeCrows *)R_ExternalPtrAddr(e); wickra_identical_three_crows_reset(h); @@ -7904,6 +8688,10 @@ SEXP wk_imbalance_bars_update(SEXP e, SEXP a0, SEXP a1, SEXP a2, SEXP a3, SEXP a UNPROTECT(3); return r; } +SEXP wk_imbalance_bars_name(SEXP e) { + struct ImbalanceBars *h = (struct ImbalanceBars *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_imbalance_bars_name(h)); +} SEXP wk_imbalance_bars_reset(SEXP e) { struct ImbalanceBars *h = (struct ImbalanceBars *)R_ExternalPtrAddr(e); wickra_imbalance_bars_reset(h); @@ -7945,6 +8733,10 @@ SEXP wk_in_neck_is_ready(SEXP e) { struct InNeck *h = (struct InNeck *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_in_neck_is_ready(h)); } +SEXP wk_in_neck_name(SEXP e) { + struct InNeck *h = (struct InNeck *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_in_neck_name(h)); +} SEXP wk_in_neck_reset(SEXP e) { struct InNeck *h = (struct InNeck *)R_ExternalPtrAddr(e); wickra_in_neck_reset(h); @@ -7986,6 +8778,10 @@ SEXP wk_inertia_is_ready(SEXP e) { struct Inertia *h = (struct Inertia *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_inertia_is_ready(h)); } +SEXP wk_inertia_name(SEXP e) { + struct Inertia *h = (struct Inertia *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_inertia_name(h)); +} SEXP wk_inertia_reset(SEXP e) { struct Inertia *h = (struct Inertia *)R_ExternalPtrAddr(e); wickra_inertia_reset(h); @@ -8025,6 +8821,10 @@ SEXP wk_information_ratio_is_ready(SEXP e) { struct InformationRatio *h = (struct InformationRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_information_ratio_is_ready(h)); } +SEXP wk_information_ratio_name(SEXP e) { + struct InformationRatio *h = (struct InformationRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_information_ratio_name(h)); +} SEXP wk_information_ratio_reset(SEXP e) { struct InformationRatio *h = (struct InformationRatio *)R_ExternalPtrAddr(e); wickra_information_ratio_reset(h); @@ -8066,6 +8866,10 @@ SEXP wk_initial_balance_is_ready(SEXP e) { struct InitialBalance *h = (struct InitialBalance *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_initial_balance_is_ready(h)); } +SEXP wk_initial_balance_name(SEXP e) { + struct InitialBalance *h = (struct InitialBalance *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_initial_balance_name(h)); +} SEXP wk_initial_balance_reset(SEXP e) { struct InitialBalance *h = (struct InitialBalance *)R_ExternalPtrAddr(e); wickra_initial_balance_reset(h); @@ -8105,6 +8909,10 @@ SEXP wk_instantaneous_trendline_is_ready(SEXP e) { struct InstantaneousTrendline *h = (struct InstantaneousTrendline *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_instantaneous_trendline_is_ready(h)); } +SEXP wk_instantaneous_trendline_name(SEXP e) { + struct InstantaneousTrendline *h = (struct InstantaneousTrendline *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_instantaneous_trendline_name(h)); +} SEXP wk_instantaneous_trendline_reset(SEXP e) { struct InstantaneousTrendline *h = (struct InstantaneousTrendline *)R_ExternalPtrAddr(e); wickra_instantaneous_trendline_reset(h); @@ -8146,6 +8954,10 @@ SEXP wk_intraday_intensity_is_ready(SEXP e) { struct IntradayIntensity *h = (struct IntradayIntensity *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_intraday_intensity_is_ready(h)); } +SEXP wk_intraday_intensity_name(SEXP e) { + struct IntradayIntensity *h = (struct IntradayIntensity *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_intraday_intensity_name(h)); +} SEXP wk_intraday_intensity_reset(SEXP e) { struct IntradayIntensity *h = (struct IntradayIntensity *)R_ExternalPtrAddr(e); wickra_intraday_intensity_reset(h); @@ -8187,6 +8999,10 @@ SEXP wk_intraday_momentum_index_is_ready(SEXP e) { struct IntradayMomentumIndex *h = (struct IntradayMomentumIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_intraday_momentum_index_is_ready(h)); } +SEXP wk_intraday_momentum_index_name(SEXP e) { + struct IntradayMomentumIndex *h = (struct IntradayMomentumIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_intraday_momentum_index_name(h)); +} SEXP wk_intraday_momentum_index_reset(SEXP e) { struct IntradayMomentumIndex *h = (struct IntradayMomentumIndex *)R_ExternalPtrAddr(e); wickra_intraday_momentum_index_reset(h); @@ -8225,6 +9041,10 @@ SEXP wk_intraday_volatility_profile_is_ready(SEXP e) { struct IntradayVolatilityProfile *h = (struct IntradayVolatilityProfile *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_intraday_volatility_profile_is_ready(h)); } +SEXP wk_intraday_volatility_profile_name(SEXP e) { + struct IntradayVolatilityProfile *h = (struct IntradayVolatilityProfile *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_intraday_volatility_profile_name(h)); +} SEXP wk_intraday_volatility_profile_reset(SEXP e) { struct IntradayVolatilityProfile *h = (struct IntradayVolatilityProfile *)R_ExternalPtrAddr(e); wickra_intraday_volatility_profile_reset(h); @@ -8264,6 +9084,10 @@ SEXP wk_inverse_fisher_transform_is_ready(SEXP e) { struct InverseFisherTransform *h = (struct InverseFisherTransform *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_inverse_fisher_transform_is_ready(h)); } +SEXP wk_inverse_fisher_transform_name(SEXP e) { + struct InverseFisherTransform *h = (struct InverseFisherTransform *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_inverse_fisher_transform_name(h)); +} SEXP wk_inverse_fisher_transform_reset(SEXP e) { struct InverseFisherTransform *h = (struct InverseFisherTransform *)R_ExternalPtrAddr(e); wickra_inverse_fisher_transform_reset(h); @@ -8305,6 +9129,10 @@ SEXP wk_inverted_hammer_is_ready(SEXP e) { struct InvertedHammer *h = (struct InvertedHammer *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_inverted_hammer_is_ready(h)); } +SEXP wk_inverted_hammer_name(SEXP e) { + struct InvertedHammer *h = (struct InvertedHammer *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_inverted_hammer_name(h)); +} SEXP wk_inverted_hammer_reset(SEXP e) { struct InvertedHammer *h = (struct InvertedHammer *)R_ExternalPtrAddr(e); wickra_inverted_hammer_reset(h); @@ -8344,6 +9172,10 @@ SEXP wk_jarque_bera_is_ready(SEXP e) { struct JarqueBera *h = (struct JarqueBera *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_jarque_bera_is_ready(h)); } +SEXP wk_jarque_bera_name(SEXP e) { + struct JarqueBera *h = (struct JarqueBera *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_jarque_bera_name(h)); +} SEXP wk_jarque_bera_reset(SEXP e) { struct JarqueBera *h = (struct JarqueBera *)R_ExternalPtrAddr(e); wickra_jarque_bera_reset(h); @@ -8383,6 +9215,10 @@ SEXP wk_jma_is_ready(SEXP e) { struct Jma *h = (struct Jma *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_jma_is_ready(h)); } +SEXP wk_jma_name(SEXP e) { + struct Jma *h = (struct Jma *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_jma_name(h)); +} SEXP wk_jma_reset(SEXP e) { struct Jma *h = (struct Jma *)R_ExternalPtrAddr(e); wickra_jma_reset(h); @@ -8422,6 +9258,10 @@ SEXP wk_jump_indicator_is_ready(SEXP e) { struct JumpIndicator *h = (struct JumpIndicator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_jump_indicator_is_ready(h)); } +SEXP wk_jump_indicator_name(SEXP e) { + struct JumpIndicator *h = (struct JumpIndicator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_jump_indicator_name(h)); +} SEXP wk_jump_indicator_reset(SEXP e) { struct JumpIndicator *h = (struct JumpIndicator *)R_ExternalPtrAddr(e); wickra_jump_indicator_reset(h); @@ -8461,6 +9301,10 @@ SEXP wk_k_ratio_is_ready(SEXP e) { struct KRatio *h = (struct KRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_k_ratio_is_ready(h)); } +SEXP wk_k_ratio_name(SEXP e) { + struct KRatio *h = (struct KRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_k_ratio_name(h)); +} SEXP wk_k_ratio_reset(SEXP e) { struct KRatio *h = (struct KRatio *)R_ExternalPtrAddr(e); wickra_k_ratio_reset(h); @@ -8500,6 +9344,10 @@ SEXP wk_kagi_bars_update(SEXP e, SEXP a0, SEXP a1, SEXP a2, SEXP a3, SEXP a4, SE UNPROTECT(3); return r; } +SEXP wk_kagi_bars_name(SEXP e) { + struct KagiBars *h = (struct KagiBars *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kagi_bars_name(h)); +} SEXP wk_kagi_bars_reset(SEXP e) { struct KagiBars *h = (struct KagiBars *)R_ExternalPtrAddr(e); wickra_kagi_bars_reset(h); @@ -8543,6 +9391,10 @@ SEXP wk_kalman_hedge_ratio_is_ready(SEXP e) { struct KalmanHedgeRatio *h = (struct KalmanHedgeRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_kalman_hedge_ratio_is_ready(h)); } +SEXP wk_kalman_hedge_ratio_name(SEXP e) { + struct KalmanHedgeRatio *h = (struct KalmanHedgeRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kalman_hedge_ratio_name(h)); +} SEXP wk_kalman_hedge_ratio_reset(SEXP e) { struct KalmanHedgeRatio *h = (struct KalmanHedgeRatio *)R_ExternalPtrAddr(e); wickra_kalman_hedge_ratio_reset(h); @@ -8582,6 +9434,10 @@ SEXP wk_kama_is_ready(SEXP e) { struct Kama *h = (struct Kama *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_kama_is_ready(h)); } +SEXP wk_kama_name(SEXP e) { + struct Kama *h = (struct Kama *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kama_name(h)); +} SEXP wk_kama_reset(SEXP e) { struct Kama *h = (struct Kama *)R_ExternalPtrAddr(e); wickra_kama_reset(h); @@ -8623,6 +9479,10 @@ SEXP wk_kase_dev_stop_is_ready(SEXP e) { struct KaseDevStop *h = (struct KaseDevStop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_kase_dev_stop_is_ready(h)); } +SEXP wk_kase_dev_stop_name(SEXP e) { + struct KaseDevStop *h = (struct KaseDevStop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kase_dev_stop_name(h)); +} SEXP wk_kase_dev_stop_reset(SEXP e) { struct KaseDevStop *h = (struct KaseDevStop *)R_ExternalPtrAddr(e); wickra_kase_dev_stop_reset(h); @@ -8664,6 +9524,10 @@ SEXP wk_kase_permission_stochastic_is_ready(SEXP e) { struct KasePermissionStochastic *h = (struct KasePermissionStochastic *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_kase_permission_stochastic_is_ready(h)); } +SEXP wk_kase_permission_stochastic_name(SEXP e) { + struct KasePermissionStochastic *h = (struct KasePermissionStochastic *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kase_permission_stochastic_name(h)); +} SEXP wk_kase_permission_stochastic_reset(SEXP e) { struct KasePermissionStochastic *h = (struct KasePermissionStochastic *)R_ExternalPtrAddr(e); wickra_kase_permission_stochastic_reset(h); @@ -8703,6 +9567,10 @@ SEXP wk_kelly_criterion_is_ready(SEXP e) { struct KellyCriterion *h = (struct KellyCriterion *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_kelly_criterion_is_ready(h)); } +SEXP wk_kelly_criterion_name(SEXP e) { + struct KellyCriterion *h = (struct KellyCriterion *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kelly_criterion_name(h)); +} SEXP wk_kelly_criterion_reset(SEXP e) { struct KellyCriterion *h = (struct KellyCriterion *)R_ExternalPtrAddr(e); wickra_kelly_criterion_reset(h); @@ -8746,6 +9614,10 @@ SEXP wk_keltner_is_ready(SEXP e) { struct Keltner *h = (struct Keltner *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_keltner_is_ready(h)); } +SEXP wk_keltner_name(SEXP e) { + struct Keltner *h = (struct Keltner *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_keltner_name(h)); +} SEXP wk_keltner_reset(SEXP e) { struct Keltner *h = (struct Keltner *)R_ExternalPtrAddr(e); wickra_keltner_reset(h); @@ -8785,6 +9657,10 @@ SEXP wk_kendall_tau_is_ready(SEXP e) { struct KendallTau *h = (struct KendallTau *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_kendall_tau_is_ready(h)); } +SEXP wk_kendall_tau_name(SEXP e) { + struct KendallTau *h = (struct KendallTau *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kendall_tau_name(h)); +} SEXP wk_kendall_tau_reset(SEXP e) { struct KendallTau *h = (struct KendallTau *)R_ExternalPtrAddr(e); wickra_kendall_tau_reset(h); @@ -8826,6 +9702,10 @@ SEXP wk_kicking_is_ready(SEXP e) { struct Kicking *h = (struct Kicking *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_kicking_is_ready(h)); } +SEXP wk_kicking_name(SEXP e) { + struct Kicking *h = (struct Kicking *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kicking_name(h)); +} SEXP wk_kicking_reset(SEXP e) { struct Kicking *h = (struct Kicking *)R_ExternalPtrAddr(e); wickra_kicking_reset(h); @@ -8867,6 +9747,10 @@ SEXP wk_kicking_by_length_is_ready(SEXP e) { struct KickingByLength *h = (struct KickingByLength *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_kicking_by_length_is_ready(h)); } +SEXP wk_kicking_by_length_name(SEXP e) { + struct KickingByLength *h = (struct KickingByLength *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kicking_by_length_name(h)); +} SEXP wk_kicking_by_length_reset(SEXP e) { struct KickingByLength *h = (struct KickingByLength *)R_ExternalPtrAddr(e); wickra_kicking_by_length_reset(h); @@ -8908,6 +9792,10 @@ SEXP wk_kst_is_ready(SEXP e) { struct Kst *h = (struct Kst *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_kst_is_ready(h)); } +SEXP wk_kst_name(SEXP e) { + struct Kst *h = (struct Kst *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kst_name(h)); +} SEXP wk_kst_reset(SEXP e) { struct Kst *h = (struct Kst *)R_ExternalPtrAddr(e); wickra_kst_reset(h); @@ -8947,6 +9835,10 @@ SEXP wk_kurtosis_is_ready(SEXP e) { struct Kurtosis *h = (struct Kurtosis *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_kurtosis_is_ready(h)); } +SEXP wk_kurtosis_name(SEXP e) { + struct Kurtosis *h = (struct Kurtosis *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kurtosis_name(h)); +} SEXP wk_kurtosis_reset(SEXP e) { struct Kurtosis *h = (struct Kurtosis *)R_ExternalPtrAddr(e); wickra_kurtosis_reset(h); @@ -8988,6 +9880,10 @@ SEXP wk_kvo_is_ready(SEXP e) { struct Kvo *h = (struct Kvo *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_kvo_is_ready(h)); } +SEXP wk_kvo_name(SEXP e) { + struct Kvo *h = (struct Kvo *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kvo_name(h)); +} SEXP wk_kvo_reset(SEXP e) { struct Kvo *h = (struct Kvo *)R_ExternalPtrAddr(e); wickra_kvo_reset(h); @@ -9019,6 +9915,10 @@ SEXP wk_kyles_lambda_is_ready(SEXP e) { struct KylesLambda *h = (struct KylesLambda *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_kyles_lambda_is_ready(h)); } +SEXP wk_kyles_lambda_name(SEXP e) { + struct KylesLambda *h = (struct KylesLambda *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_kyles_lambda_name(h)); +} SEXP wk_kyles_lambda_reset(SEXP e) { struct KylesLambda *h = (struct KylesLambda *)R_ExternalPtrAddr(e); wickra_kyles_lambda_reset(h); @@ -9060,6 +9960,10 @@ SEXP wk_ladder_bottom_is_ready(SEXP e) { struct LadderBottom *h = (struct LadderBottom *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ladder_bottom_is_ready(h)); } +SEXP wk_ladder_bottom_name(SEXP e) { + struct LadderBottom *h = (struct LadderBottom *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ladder_bottom_name(h)); +} SEXP wk_ladder_bottom_reset(SEXP e) { struct LadderBottom *h = (struct LadderBottom *)R_ExternalPtrAddr(e); wickra_ladder_bottom_reset(h); @@ -9099,6 +10003,10 @@ SEXP wk_laguerre_rsi_is_ready(SEXP e) { struct LaguerreRsi *h = (struct LaguerreRsi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_laguerre_rsi_is_ready(h)); } +SEXP wk_laguerre_rsi_name(SEXP e) { + struct LaguerreRsi *h = (struct LaguerreRsi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_laguerre_rsi_name(h)); +} SEXP wk_laguerre_rsi_reset(SEXP e) { struct LaguerreRsi *h = (struct LaguerreRsi *)R_ExternalPtrAddr(e); wickra_laguerre_rsi_reset(h); @@ -9140,6 +10048,10 @@ SEXP wk_lead_lag_cross_correlation_is_ready(SEXP e) { struct LeadLagCrossCorrelation *h = (struct LeadLagCrossCorrelation *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_lead_lag_cross_correlation_is_ready(h)); } +SEXP wk_lead_lag_cross_correlation_name(SEXP e) { + struct LeadLagCrossCorrelation *h = (struct LeadLagCrossCorrelation *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_lead_lag_cross_correlation_name(h)); +} SEXP wk_lead_lag_cross_correlation_reset(SEXP e) { struct LeadLagCrossCorrelation *h = (struct LeadLagCrossCorrelation *)R_ExternalPtrAddr(e); wickra_lead_lag_cross_correlation_reset(h); @@ -9179,6 +10091,10 @@ SEXP wk_lin_reg_angle_is_ready(SEXP e) { struct LinRegAngle *h = (struct LinRegAngle *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_lin_reg_angle_is_ready(h)); } +SEXP wk_lin_reg_angle_name(SEXP e) { + struct LinRegAngle *h = (struct LinRegAngle *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_lin_reg_angle_name(h)); +} SEXP wk_lin_reg_angle_reset(SEXP e) { struct LinRegAngle *h = (struct LinRegAngle *)R_ExternalPtrAddr(e); wickra_lin_reg_angle_reset(h); @@ -9222,6 +10138,10 @@ SEXP wk_lin_reg_channel_is_ready(SEXP e) { struct LinRegChannel *h = (struct LinRegChannel *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_lin_reg_channel_is_ready(h)); } +SEXP wk_lin_reg_channel_name(SEXP e) { + struct LinRegChannel *h = (struct LinRegChannel *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_lin_reg_channel_name(h)); +} SEXP wk_lin_reg_channel_reset(SEXP e) { struct LinRegChannel *h = (struct LinRegChannel *)R_ExternalPtrAddr(e); wickra_lin_reg_channel_reset(h); @@ -9261,6 +10181,10 @@ SEXP wk_lin_reg_intercept_is_ready(SEXP e) { struct LinRegIntercept *h = (struct LinRegIntercept *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_lin_reg_intercept_is_ready(h)); } +SEXP wk_lin_reg_intercept_name(SEXP e) { + struct LinRegIntercept *h = (struct LinRegIntercept *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_lin_reg_intercept_name(h)); +} SEXP wk_lin_reg_intercept_reset(SEXP e) { struct LinRegIntercept *h = (struct LinRegIntercept *)R_ExternalPtrAddr(e); wickra_lin_reg_intercept_reset(h); @@ -9300,6 +10224,10 @@ SEXP wk_lin_reg_slope_is_ready(SEXP e) { struct LinRegSlope *h = (struct LinRegSlope *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_lin_reg_slope_is_ready(h)); } +SEXP wk_lin_reg_slope_name(SEXP e) { + struct LinRegSlope *h = (struct LinRegSlope *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_lin_reg_slope_name(h)); +} SEXP wk_lin_reg_slope_reset(SEXP e) { struct LinRegSlope *h = (struct LinRegSlope *)R_ExternalPtrAddr(e); wickra_lin_reg_slope_reset(h); @@ -9339,6 +10267,10 @@ SEXP wk_linear_regression_is_ready(SEXP e) { struct LinearRegression *h = (struct LinearRegression *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_linear_regression_is_ready(h)); } +SEXP wk_linear_regression_name(SEXP e) { + struct LinearRegression *h = (struct LinearRegression *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_linear_regression_name(h)); +} SEXP wk_linear_regression_reset(SEXP e) { struct LinearRegression *h = (struct LinearRegression *)R_ExternalPtrAddr(e); wickra_linear_regression_reset(h); @@ -9386,6 +10318,10 @@ SEXP wk_liquidation_features_is_ready(SEXP e) { struct LiquidationFeatures *h = (struct LiquidationFeatures *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_liquidation_features_is_ready(h)); } +SEXP wk_liquidation_features_name(SEXP e) { + struct LiquidationFeatures *h = (struct LiquidationFeatures *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_liquidation_features_name(h)); +} SEXP wk_liquidation_features_reset(SEXP e) { struct LiquidationFeatures *h = (struct LiquidationFeatures *)R_ExternalPtrAddr(e); wickra_liquidation_features_reset(h); @@ -9425,6 +10361,10 @@ SEXP wk_log_return_is_ready(SEXP e) { struct LogReturn *h = (struct LogReturn *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_log_return_is_ready(h)); } +SEXP wk_log_return_name(SEXP e) { + struct LogReturn *h = (struct LogReturn *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_log_return_name(h)); +} SEXP wk_log_return_reset(SEXP e) { struct LogReturn *h = (struct LogReturn *)R_ExternalPtrAddr(e); wickra_log_return_reset(h); @@ -9466,6 +10406,10 @@ SEXP wk_long_legged_doji_is_ready(SEXP e) { struct LongLeggedDoji *h = (struct LongLeggedDoji *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_long_legged_doji_is_ready(h)); } +SEXP wk_long_legged_doji_name(SEXP e) { + struct LongLeggedDoji *h = (struct LongLeggedDoji *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_long_legged_doji_name(h)); +} SEXP wk_long_legged_doji_reset(SEXP e) { struct LongLeggedDoji *h = (struct LongLeggedDoji *)R_ExternalPtrAddr(e); wickra_long_legged_doji_reset(h); @@ -9507,6 +10451,10 @@ SEXP wk_long_line_is_ready(SEXP e) { struct LongLine *h = (struct LongLine *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_long_line_is_ready(h)); } +SEXP wk_long_line_name(SEXP e) { + struct LongLine *h = (struct LongLine *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_long_line_name(h)); +} SEXP wk_long_line_reset(SEXP e) { struct LongLine *h = (struct LongLine *)R_ExternalPtrAddr(e); wickra_long_line_reset(h); @@ -9538,6 +10486,10 @@ SEXP wk_long_short_ratio_is_ready(SEXP e) { struct LongShortRatio *h = (struct LongShortRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_long_short_ratio_is_ready(h)); } +SEXP wk_long_short_ratio_name(SEXP e) { + struct LongShortRatio *h = (struct LongShortRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_long_short_ratio_name(h)); +} SEXP wk_long_short_ratio_reset(SEXP e) { struct LongShortRatio *h = (struct LongShortRatio *)R_ExternalPtrAddr(e); wickra_long_short_ratio_reset(h); @@ -9577,6 +10529,10 @@ SEXP wk_m2_measure_is_ready(SEXP e) { struct M2Measure *h = (struct M2Measure *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_m2_measure_is_ready(h)); } +SEXP wk_m2_measure_name(SEXP e) { + struct M2Measure *h = (struct M2Measure *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_m2_measure_name(h)); +} SEXP wk_m2_measure_reset(SEXP e) { struct M2Measure *h = (struct M2Measure *)R_ExternalPtrAddr(e); wickra_m2_measure_reset(h); @@ -9620,6 +10576,10 @@ SEXP wk_ma_envelope_is_ready(SEXP e) { struct MaEnvelope *h = (struct MaEnvelope *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ma_envelope_is_ready(h)); } +SEXP wk_ma_envelope_name(SEXP e) { + struct MaEnvelope *h = (struct MaEnvelope *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ma_envelope_name(h)); +} SEXP wk_ma_envelope_reset(SEXP e) { struct MaEnvelope *h = (struct MaEnvelope *)R_ExternalPtrAddr(e); wickra_ma_envelope_reset(h); @@ -9663,6 +10623,10 @@ SEXP wk_macd_ext_is_ready(SEXP e) { struct MacdExt *h = (struct MacdExt *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_macd_ext_is_ready(h)); } +SEXP wk_macd_ext_name(SEXP e) { + struct MacdExt *h = (struct MacdExt *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_macd_ext_name(h)); +} SEXP wk_macd_ext_reset(SEXP e) { struct MacdExt *h = (struct MacdExt *)R_ExternalPtrAddr(e); wickra_macd_ext_reset(h); @@ -9706,6 +10670,10 @@ SEXP wk_macd_fix_is_ready(SEXP e) { struct MacdFix *h = (struct MacdFix *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_macd_fix_is_ready(h)); } +SEXP wk_macd_fix_name(SEXP e) { + struct MacdFix *h = (struct MacdFix *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_macd_fix_name(h)); +} SEXP wk_macd_fix_reset(SEXP e) { struct MacdFix *h = (struct MacdFix *)R_ExternalPtrAddr(e); wickra_macd_fix_reset(h); @@ -9745,6 +10713,10 @@ SEXP wk_macd_histogram_is_ready(SEXP e) { struct MacdHistogram *h = (struct MacdHistogram *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_macd_histogram_is_ready(h)); } +SEXP wk_macd_histogram_name(SEXP e) { + struct MacdHistogram *h = (struct MacdHistogram *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_macd_histogram_name(h)); +} SEXP wk_macd_histogram_reset(SEXP e) { struct MacdHistogram *h = (struct MacdHistogram *)R_ExternalPtrAddr(e); wickra_macd_histogram_reset(h); @@ -9788,6 +10760,10 @@ SEXP wk_macd_indicator_is_ready(SEXP e) { struct MacdIndicator *h = (struct MacdIndicator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_macd_indicator_is_ready(h)); } +SEXP wk_macd_indicator_name(SEXP e) { + struct MacdIndicator *h = (struct MacdIndicator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_macd_indicator_name(h)); +} SEXP wk_macd_indicator_reset(SEXP e) { struct MacdIndicator *h = (struct MacdIndicator *)R_ExternalPtrAddr(e); wickra_macd_indicator_reset(h); @@ -9829,6 +10805,10 @@ SEXP wk_mama_is_ready(SEXP e) { struct Mama *h = (struct Mama *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_mama_is_ready(h)); } +SEXP wk_mama_name(SEXP e) { + struct Mama *h = (struct Mama *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_mama_name(h)); +} SEXP wk_mama_reset(SEXP e) { struct Mama *h = (struct Mama *)R_ExternalPtrAddr(e); wickra_mama_reset(h); @@ -9870,6 +10850,10 @@ SEXP wk_market_facilitation_index_is_ready(SEXP e) { struct MarketFacilitationIndex *h = (struct MarketFacilitationIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_market_facilitation_index_is_ready(h)); } +SEXP wk_market_facilitation_index_name(SEXP e) { + struct MarketFacilitationIndex *h = (struct MarketFacilitationIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_market_facilitation_index_name(h)); +} SEXP wk_market_facilitation_index_reset(SEXP e) { struct MarketFacilitationIndex *h = (struct MarketFacilitationIndex *)R_ExternalPtrAddr(e); wickra_market_facilitation_index_reset(h); @@ -9909,6 +10893,10 @@ SEXP wk_martin_ratio_is_ready(SEXP e) { struct MartinRatio *h = (struct MartinRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_martin_ratio_is_ready(h)); } +SEXP wk_martin_ratio_name(SEXP e) { + struct MartinRatio *h = (struct MartinRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_martin_ratio_name(h)); +} SEXP wk_martin_ratio_reset(SEXP e) { struct MartinRatio *h = (struct MartinRatio *)R_ExternalPtrAddr(e); wickra_martin_ratio_reset(h); @@ -9950,6 +10938,10 @@ SEXP wk_marubozu_is_ready(SEXP e) { struct Marubozu *h = (struct Marubozu *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_marubozu_is_ready(h)); } +SEXP wk_marubozu_name(SEXP e) { + struct Marubozu *h = (struct Marubozu *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_marubozu_name(h)); +} SEXP wk_marubozu_reset(SEXP e) { struct Marubozu *h = (struct Marubozu *)R_ExternalPtrAddr(e); wickra_marubozu_reset(h); @@ -9991,6 +10983,10 @@ SEXP wk_mass_index_is_ready(SEXP e) { struct MassIndex *h = (struct MassIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_mass_index_is_ready(h)); } +SEXP wk_mass_index_name(SEXP e) { + struct MassIndex *h = (struct MassIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_mass_index_name(h)); +} SEXP wk_mass_index_reset(SEXP e) { struct MassIndex *h = (struct MassIndex *)R_ExternalPtrAddr(e); wickra_mass_index_reset(h); @@ -10032,6 +11028,10 @@ SEXP wk_mat_hold_is_ready(SEXP e) { struct MatHold *h = (struct MatHold *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_mat_hold_is_ready(h)); } +SEXP wk_mat_hold_name(SEXP e) { + struct MatHold *h = (struct MatHold *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_mat_hold_name(h)); +} SEXP wk_mat_hold_reset(SEXP e) { struct MatHold *h = (struct MatHold *)R_ExternalPtrAddr(e); wickra_mat_hold_reset(h); @@ -10073,6 +11073,10 @@ SEXP wk_matching_low_is_ready(SEXP e) { struct MatchingLow *h = (struct MatchingLow *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_matching_low_is_ready(h)); } +SEXP wk_matching_low_name(SEXP e) { + struct MatchingLow *h = (struct MatchingLow *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_matching_low_name(h)); +} SEXP wk_matching_low_reset(SEXP e) { struct MatchingLow *h = (struct MatchingLow *)R_ExternalPtrAddr(e); wickra_matching_low_reset(h); @@ -10112,6 +11116,10 @@ SEXP wk_max_drawdown_is_ready(SEXP e) { struct MaxDrawdown *h = (struct MaxDrawdown *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_max_drawdown_is_ready(h)); } +SEXP wk_max_drawdown_name(SEXP e) { + struct MaxDrawdown *h = (struct MaxDrawdown *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_max_drawdown_name(h)); +} SEXP wk_max_drawdown_reset(SEXP e) { struct MaxDrawdown *h = (struct MaxDrawdown *)R_ExternalPtrAddr(e); wickra_max_drawdown_reset(h); @@ -10143,6 +11151,10 @@ SEXP wk_mc_clellan_oscillator_is_ready(SEXP e) { struct McClellanOscillator *h = (struct McClellanOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_mc_clellan_oscillator_is_ready(h)); } +SEXP wk_mc_clellan_oscillator_name(SEXP e) { + struct McClellanOscillator *h = (struct McClellanOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_mc_clellan_oscillator_name(h)); +} SEXP wk_mc_clellan_oscillator_reset(SEXP e) { struct McClellanOscillator *h = (struct McClellanOscillator *)R_ExternalPtrAddr(e); wickra_mc_clellan_oscillator_reset(h); @@ -10174,6 +11186,10 @@ SEXP wk_mc_clellan_summation_index_is_ready(SEXP e) { struct McClellanSummationIndex *h = (struct McClellanSummationIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_mc_clellan_summation_index_is_ready(h)); } +SEXP wk_mc_clellan_summation_index_name(SEXP e) { + struct McClellanSummationIndex *h = (struct McClellanSummationIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_mc_clellan_summation_index_name(h)); +} SEXP wk_mc_clellan_summation_index_reset(SEXP e) { struct McClellanSummationIndex *h = (struct McClellanSummationIndex *)R_ExternalPtrAddr(e); wickra_mc_clellan_summation_index_reset(h); @@ -10213,6 +11229,10 @@ SEXP wk_mc_ginley_dynamic_is_ready(SEXP e) { struct McGinleyDynamic *h = (struct McGinleyDynamic *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_mc_ginley_dynamic_is_ready(h)); } +SEXP wk_mc_ginley_dynamic_name(SEXP e) { + struct McGinleyDynamic *h = (struct McGinleyDynamic *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_mc_ginley_dynamic_name(h)); +} SEXP wk_mc_ginley_dynamic_reset(SEXP e) { struct McGinleyDynamic *h = (struct McGinleyDynamic *)R_ExternalPtrAddr(e); wickra_mc_ginley_dynamic_reset(h); @@ -10252,6 +11272,10 @@ SEXP wk_median_absolute_deviation_is_ready(SEXP e) { struct MedianAbsoluteDeviation *h = (struct MedianAbsoluteDeviation *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_median_absolute_deviation_is_ready(h)); } +SEXP wk_median_absolute_deviation_name(SEXP e) { + struct MedianAbsoluteDeviation *h = (struct MedianAbsoluteDeviation *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_median_absolute_deviation_name(h)); +} SEXP wk_median_absolute_deviation_reset(SEXP e) { struct MedianAbsoluteDeviation *h = (struct MedianAbsoluteDeviation *)R_ExternalPtrAddr(e); wickra_median_absolute_deviation_reset(h); @@ -10295,6 +11319,10 @@ SEXP wk_median_channel_is_ready(SEXP e) { struct MedianChannel *h = (struct MedianChannel *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_median_channel_is_ready(h)); } +SEXP wk_median_channel_name(SEXP e) { + struct MedianChannel *h = (struct MedianChannel *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_median_channel_name(h)); +} SEXP wk_median_channel_reset(SEXP e) { struct MedianChannel *h = (struct MedianChannel *)R_ExternalPtrAddr(e); wickra_median_channel_reset(h); @@ -10334,6 +11362,10 @@ SEXP wk_median_ma_is_ready(SEXP e) { struct MedianMa *h = (struct MedianMa *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_median_ma_is_ready(h)); } +SEXP wk_median_ma_name(SEXP e) { + struct MedianMa *h = (struct MedianMa *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_median_ma_name(h)); +} SEXP wk_median_ma_reset(SEXP e) { struct MedianMa *h = (struct MedianMa *)R_ExternalPtrAddr(e); wickra_median_ma_reset(h); @@ -10375,6 +11407,10 @@ SEXP wk_median_price_is_ready(SEXP e) { struct MedianPrice *h = (struct MedianPrice *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_median_price_is_ready(h)); } +SEXP wk_median_price_name(SEXP e) { + struct MedianPrice *h = (struct MedianPrice *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_median_price_name(h)); +} SEXP wk_median_price_reset(SEXP e) { struct MedianPrice *h = (struct MedianPrice *)R_ExternalPtrAddr(e); wickra_median_price_reset(h); @@ -10416,6 +11452,10 @@ SEXP wk_mfi_is_ready(SEXP e) { struct Mfi *h = (struct Mfi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_mfi_is_ready(h)); } +SEXP wk_mfi_name(SEXP e) { + struct Mfi *h = (struct Mfi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_mfi_name(h)); +} SEXP wk_mfi_reset(SEXP e) { struct Mfi *h = (struct Mfi *)R_ExternalPtrAddr(e); wickra_mfi_reset(h); @@ -10447,6 +11487,10 @@ SEXP wk_microprice_is_ready(SEXP e) { struct Microprice *h = (struct Microprice *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_microprice_is_ready(h)); } +SEXP wk_microprice_name(SEXP e) { + struct Microprice *h = (struct Microprice *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_microprice_name(h)); +} SEXP wk_microprice_reset(SEXP e) { struct Microprice *h = (struct Microprice *)R_ExternalPtrAddr(e); wickra_microprice_reset(h); @@ -10486,6 +11530,10 @@ SEXP wk_mid_point_is_ready(SEXP e) { struct MidPoint *h = (struct MidPoint *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_mid_point_is_ready(h)); } +SEXP wk_mid_point_name(SEXP e) { + struct MidPoint *h = (struct MidPoint *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_mid_point_name(h)); +} SEXP wk_mid_point_reset(SEXP e) { struct MidPoint *h = (struct MidPoint *)R_ExternalPtrAddr(e); wickra_mid_point_reset(h); @@ -10527,6 +11575,10 @@ SEXP wk_mid_price_is_ready(SEXP e) { struct MidPrice *h = (struct MidPrice *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_mid_price_is_ready(h)); } +SEXP wk_mid_price_name(SEXP e) { + struct MidPrice *h = (struct MidPrice *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_mid_price_name(h)); +} SEXP wk_mid_price_reset(SEXP e) { struct MidPrice *h = (struct MidPrice *)R_ExternalPtrAddr(e); wickra_mid_price_reset(h); @@ -10568,6 +11620,10 @@ SEXP wk_minus_di_is_ready(SEXP e) { struct MinusDi *h = (struct MinusDi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_minus_di_is_ready(h)); } +SEXP wk_minus_di_name(SEXP e) { + struct MinusDi *h = (struct MinusDi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_minus_di_name(h)); +} SEXP wk_minus_di_reset(SEXP e) { struct MinusDi *h = (struct MinusDi *)R_ExternalPtrAddr(e); wickra_minus_di_reset(h); @@ -10609,6 +11665,10 @@ SEXP wk_minus_dm_is_ready(SEXP e) { struct MinusDm *h = (struct MinusDm *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_minus_dm_is_ready(h)); } +SEXP wk_minus_dm_name(SEXP e) { + struct MinusDm *h = (struct MinusDm *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_minus_dm_name(h)); +} SEXP wk_minus_dm_reset(SEXP e) { struct MinusDm *h = (struct MinusDm *)R_ExternalPtrAddr(e); wickra_minus_dm_reset(h); @@ -10650,6 +11710,10 @@ SEXP wk_modified_ma_stop_is_ready(SEXP e) { struct ModifiedMaStop *h = (struct ModifiedMaStop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_modified_ma_stop_is_ready(h)); } +SEXP wk_modified_ma_stop_name(SEXP e) { + struct ModifiedMaStop *h = (struct ModifiedMaStop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_modified_ma_stop_name(h)); +} SEXP wk_modified_ma_stop_reset(SEXP e) { struct ModifiedMaStop *h = (struct ModifiedMaStop *)R_ExternalPtrAddr(e); wickra_modified_ma_stop_reset(h); @@ -10689,6 +11753,10 @@ SEXP wk_mom_is_ready(SEXP e) { struct Mom *h = (struct Mom *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_mom_is_ready(h)); } +SEXP wk_mom_name(SEXP e) { + struct Mom *h = (struct Mom *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_mom_name(h)); +} SEXP wk_mom_reset(SEXP e) { struct Mom *h = (struct Mom *)R_ExternalPtrAddr(e); wickra_mom_reset(h); @@ -10730,6 +11798,10 @@ SEXP wk_morning_doji_star_is_ready(SEXP e) { struct MorningDojiStar *h = (struct MorningDojiStar *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_morning_doji_star_is_ready(h)); } +SEXP wk_morning_doji_star_name(SEXP e) { + struct MorningDojiStar *h = (struct MorningDojiStar *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_morning_doji_star_name(h)); +} SEXP wk_morning_doji_star_reset(SEXP e) { struct MorningDojiStar *h = (struct MorningDojiStar *)R_ExternalPtrAddr(e); wickra_morning_doji_star_reset(h); @@ -10771,6 +11843,10 @@ SEXP wk_morning_evening_star_is_ready(SEXP e) { struct MorningEveningStar *h = (struct MorningEveningStar *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_morning_evening_star_is_ready(h)); } +SEXP wk_morning_evening_star_name(SEXP e) { + struct MorningEveningStar *h = (struct MorningEveningStar *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_morning_evening_star_name(h)); +} SEXP wk_morning_evening_star_reset(SEXP e) { struct MorningEveningStar *h = (struct MorningEveningStar *)R_ExternalPtrAddr(e); wickra_morning_evening_star_reset(h); @@ -10826,6 +11902,10 @@ SEXP wk_murrey_math_lines_is_ready(SEXP e) { struct MurreyMathLines *h = (struct MurreyMathLines *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_murrey_math_lines_is_ready(h)); } +SEXP wk_murrey_math_lines_name(SEXP e) { + struct MurreyMathLines *h = (struct MurreyMathLines *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_murrey_math_lines_name(h)); +} SEXP wk_murrey_math_lines_reset(SEXP e) { struct MurreyMathLines *h = (struct MurreyMathLines *)R_ExternalPtrAddr(e); wickra_murrey_math_lines_reset(h); @@ -10867,6 +11947,10 @@ SEXP wk_naked_poc_is_ready(SEXP e) { struct NakedPoc *h = (struct NakedPoc *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_naked_poc_is_ready(h)); } +SEXP wk_naked_poc_name(SEXP e) { + struct NakedPoc *h = (struct NakedPoc *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_naked_poc_name(h)); +} SEXP wk_naked_poc_reset(SEXP e) { struct NakedPoc *h = (struct NakedPoc *)R_ExternalPtrAddr(e); wickra_naked_poc_reset(h); @@ -10908,6 +11992,10 @@ SEXP wk_natr_is_ready(SEXP e) { struct Natr *h = (struct Natr *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_natr_is_ready(h)); } +SEXP wk_natr_name(SEXP e) { + struct Natr *h = (struct Natr *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_natr_name(h)); +} SEXP wk_natr_reset(SEXP e) { struct Natr *h = (struct Natr *)R_ExternalPtrAddr(e); wickra_natr_reset(h); @@ -10939,6 +12027,10 @@ SEXP wk_new_highs_new_lows_is_ready(SEXP e) { struct NewHighsNewLows *h = (struct NewHighsNewLows *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_new_highs_new_lows_is_ready(h)); } +SEXP wk_new_highs_new_lows_name(SEXP e) { + struct NewHighsNewLows *h = (struct NewHighsNewLows *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_new_highs_new_lows_name(h)); +} SEXP wk_new_highs_new_lows_reset(SEXP e) { struct NewHighsNewLows *h = (struct NewHighsNewLows *)R_ExternalPtrAddr(e); wickra_new_highs_new_lows_reset(h); @@ -10980,6 +12072,10 @@ SEXP wk_new_price_lines_is_ready(SEXP e) { struct NewPriceLines *h = (struct NewPriceLines *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_new_price_lines_is_ready(h)); } +SEXP wk_new_price_lines_name(SEXP e) { + struct NewPriceLines *h = (struct NewPriceLines *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_new_price_lines_name(h)); +} SEXP wk_new_price_lines_reset(SEXP e) { struct NewPriceLines *h = (struct NewPriceLines *)R_ExternalPtrAddr(e); wickra_new_price_lines_reset(h); @@ -11021,6 +12117,10 @@ SEXP wk_nrtr_is_ready(SEXP e) { struct Nrtr *h = (struct Nrtr *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_nrtr_is_ready(h)); } +SEXP wk_nrtr_name(SEXP e) { + struct Nrtr *h = (struct Nrtr *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_nrtr_name(h)); +} SEXP wk_nrtr_reset(SEXP e) { struct Nrtr *h = (struct Nrtr *)R_ExternalPtrAddr(e); wickra_nrtr_reset(h); @@ -11062,6 +12162,10 @@ SEXP wk_nvi_is_ready(SEXP e) { struct Nvi *h = (struct Nvi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_nvi_is_ready(h)); } +SEXP wk_nvi_name(SEXP e) { + struct Nvi *h = (struct Nvi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_nvi_name(h)); +} SEXP wk_nvi_reset(SEXP e) { struct Nvi *h = (struct Nvi *)R_ExternalPtrAddr(e); wickra_nvi_reset(h); @@ -11103,6 +12207,10 @@ SEXP wk_obv_is_ready(SEXP e) { struct Obv *h = (struct Obv *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_obv_is_ready(h)); } +SEXP wk_obv_name(SEXP e) { + struct Obv *h = (struct Obv *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_obv_name(h)); +} SEXP wk_obv_reset(SEXP e) { struct Obv *h = (struct Obv *)R_ExternalPtrAddr(e); wickra_obv_reset(h); @@ -11134,6 +12242,10 @@ SEXP wk_oi_price_divergence_is_ready(SEXP e) { struct OIPriceDivergence *h = (struct OIPriceDivergence *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_oi_price_divergence_is_ready(h)); } +SEXP wk_oi_price_divergence_name(SEXP e) { + struct OIPriceDivergence *h = (struct OIPriceDivergence *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_oi_price_divergence_name(h)); +} SEXP wk_oi_price_divergence_reset(SEXP e) { struct OIPriceDivergence *h = (struct OIPriceDivergence *)R_ExternalPtrAddr(e); wickra_oi_price_divergence_reset(h); @@ -11165,6 +12277,10 @@ SEXP wk_oi_to_volume_ratio_is_ready(SEXP e) { struct OiToVolumeRatio *h = (struct OiToVolumeRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_oi_to_volume_ratio_is_ready(h)); } +SEXP wk_oi_to_volume_ratio_name(SEXP e) { + struct OiToVolumeRatio *h = (struct OiToVolumeRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_oi_to_volume_ratio_name(h)); +} SEXP wk_oi_to_volume_ratio_reset(SEXP e) { struct OiToVolumeRatio *h = (struct OiToVolumeRatio *)R_ExternalPtrAddr(e); wickra_oi_to_volume_ratio_reset(h); @@ -11196,6 +12312,10 @@ SEXP wk_oi_weighted_is_ready(SEXP e) { struct OIWeighted *h = (struct OIWeighted *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_oi_weighted_is_ready(h)); } +SEXP wk_oi_weighted_name(SEXP e) { + struct OIWeighted *h = (struct OIWeighted *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_oi_weighted_name(h)); +} SEXP wk_oi_weighted_reset(SEXP e) { struct OIWeighted *h = (struct OIWeighted *)R_ExternalPtrAddr(e); wickra_oi_weighted_reset(h); @@ -11235,6 +12355,10 @@ SEXP wk_omega_ratio_is_ready(SEXP e) { struct OmegaRatio *h = (struct OmegaRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_omega_ratio_is_ready(h)); } +SEXP wk_omega_ratio_name(SEXP e) { + struct OmegaRatio *h = (struct OmegaRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_omega_ratio_name(h)); +} SEXP wk_omega_ratio_reset(SEXP e) { struct OmegaRatio *h = (struct OmegaRatio *)R_ExternalPtrAddr(e); wickra_omega_ratio_reset(h); @@ -11276,6 +12400,10 @@ SEXP wk_on_neck_is_ready(SEXP e) { struct OnNeck *h = (struct OnNeck *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_on_neck_is_ready(h)); } +SEXP wk_on_neck_name(SEXP e) { + struct OnNeck *h = (struct OnNeck *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_on_neck_name(h)); +} SEXP wk_on_neck_reset(SEXP e) { struct OnNeck *h = (struct OnNeck *)R_ExternalPtrAddr(e); wickra_on_neck_reset(h); @@ -11307,6 +12435,10 @@ SEXP wk_open_interest_delta_is_ready(SEXP e) { struct OpenInterestDelta *h = (struct OpenInterestDelta *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_open_interest_delta_is_ready(h)); } +SEXP wk_open_interest_delta_name(SEXP e) { + struct OpenInterestDelta *h = (struct OpenInterestDelta *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_open_interest_delta_name(h)); +} SEXP wk_open_interest_delta_reset(SEXP e) { struct OpenInterestDelta *h = (struct OpenInterestDelta *)R_ExternalPtrAddr(e); wickra_open_interest_delta_reset(h); @@ -11338,6 +12470,10 @@ SEXP wk_open_interest_momentum_is_ready(SEXP e) { struct OpenInterestMomentum *h = (struct OpenInterestMomentum *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_open_interest_momentum_is_ready(h)); } +SEXP wk_open_interest_momentum_name(SEXP e) { + struct OpenInterestMomentum *h = (struct OpenInterestMomentum *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_open_interest_momentum_name(h)); +} SEXP wk_open_interest_momentum_reset(SEXP e) { struct OpenInterestMomentum *h = (struct OpenInterestMomentum *)R_ExternalPtrAddr(e); wickra_open_interest_momentum_reset(h); @@ -11379,6 +12515,10 @@ SEXP wk_opening_marubozu_is_ready(SEXP e) { struct OpeningMarubozu *h = (struct OpeningMarubozu *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_opening_marubozu_is_ready(h)); } +SEXP wk_opening_marubozu_name(SEXP e) { + struct OpeningMarubozu *h = (struct OpeningMarubozu *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_opening_marubozu_name(h)); +} SEXP wk_opening_marubozu_reset(SEXP e) { struct OpeningMarubozu *h = (struct OpeningMarubozu *)R_ExternalPtrAddr(e); wickra_opening_marubozu_reset(h); @@ -11422,6 +12562,10 @@ SEXP wk_opening_range_is_ready(SEXP e) { struct OpeningRange *h = (struct OpeningRange *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_opening_range_is_ready(h)); } +SEXP wk_opening_range_name(SEXP e) { + struct OpeningRange *h = (struct OpeningRange *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_opening_range_name(h)); +} SEXP wk_opening_range_reset(SEXP e) { struct OpeningRange *h = (struct OpeningRange *)R_ExternalPtrAddr(e); wickra_opening_range_reset(h); @@ -11453,6 +12597,10 @@ SEXP wk_order_book_imbalance_full_is_ready(SEXP e) { struct OrderBookImbalanceFull *h = (struct OrderBookImbalanceFull *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_order_book_imbalance_full_is_ready(h)); } +SEXP wk_order_book_imbalance_full_name(SEXP e) { + struct OrderBookImbalanceFull *h = (struct OrderBookImbalanceFull *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_order_book_imbalance_full_name(h)); +} SEXP wk_order_book_imbalance_full_reset(SEXP e) { struct OrderBookImbalanceFull *h = (struct OrderBookImbalanceFull *)R_ExternalPtrAddr(e); wickra_order_book_imbalance_full_reset(h); @@ -11484,6 +12632,10 @@ SEXP wk_order_book_imbalance_top1_is_ready(SEXP e) { struct OrderBookImbalanceTop1 *h = (struct OrderBookImbalanceTop1 *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_order_book_imbalance_top1_is_ready(h)); } +SEXP wk_order_book_imbalance_top1_name(SEXP e) { + struct OrderBookImbalanceTop1 *h = (struct OrderBookImbalanceTop1 *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_order_book_imbalance_top1_name(h)); +} SEXP wk_order_book_imbalance_top1_reset(SEXP e) { struct OrderBookImbalanceTop1 *h = (struct OrderBookImbalanceTop1 *)R_ExternalPtrAddr(e); wickra_order_book_imbalance_top1_reset(h); @@ -11515,6 +12667,10 @@ SEXP wk_order_book_imbalance_top_n_is_ready(SEXP e) { struct OrderBookImbalanceTopN *h = (struct OrderBookImbalanceTopN *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_order_book_imbalance_top_n_is_ready(h)); } +SEXP wk_order_book_imbalance_top_n_name(SEXP e) { + struct OrderBookImbalanceTopN *h = (struct OrderBookImbalanceTopN *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_order_book_imbalance_top_n_name(h)); +} SEXP wk_order_book_imbalance_top_n_reset(SEXP e) { struct OrderBookImbalanceTopN *h = (struct OrderBookImbalanceTopN *)R_ExternalPtrAddr(e); wickra_order_book_imbalance_top_n_reset(h); @@ -11546,6 +12702,10 @@ SEXP wk_order_flow_imbalance_is_ready(SEXP e) { struct OrderFlowImbalance *h = (struct OrderFlowImbalance *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_order_flow_imbalance_is_ready(h)); } +SEXP wk_order_flow_imbalance_name(SEXP e) { + struct OrderFlowImbalance *h = (struct OrderFlowImbalance *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_order_flow_imbalance_name(h)); +} SEXP wk_order_flow_imbalance_reset(SEXP e) { struct OrderFlowImbalance *h = (struct OrderFlowImbalance *)R_ExternalPtrAddr(e); wickra_order_flow_imbalance_reset(h); @@ -11585,6 +12745,10 @@ SEXP wk_ou_half_life_is_ready(SEXP e) { struct OuHalfLife *h = (struct OuHalfLife *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ou_half_life_is_ready(h)); } +SEXP wk_ou_half_life_name(SEXP e) { + struct OuHalfLife *h = (struct OuHalfLife *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ou_half_life_name(h)); +} SEXP wk_ou_half_life_reset(SEXP e) { struct OuHalfLife *h = (struct OuHalfLife *)R_ExternalPtrAddr(e); wickra_ou_half_life_reset(h); @@ -11626,6 +12790,10 @@ SEXP wk_overnight_gap_is_ready(SEXP e) { struct OvernightGap *h = (struct OvernightGap *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_overnight_gap_is_ready(h)); } +SEXP wk_overnight_gap_name(SEXP e) { + struct OvernightGap *h = (struct OvernightGap *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_overnight_gap_name(h)); +} SEXP wk_overnight_gap_reset(SEXP e) { struct OvernightGap *h = (struct OvernightGap *)R_ExternalPtrAddr(e); wickra_overnight_gap_reset(h); @@ -11667,6 +12835,10 @@ SEXP wk_overnight_intraday_return_is_ready(SEXP e) { struct OvernightIntradayReturn *h = (struct OvernightIntradayReturn *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_overnight_intraday_return_is_ready(h)); } +SEXP wk_overnight_intraday_return_name(SEXP e) { + struct OvernightIntradayReturn *h = (struct OvernightIntradayReturn *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_overnight_intraday_return_name(h)); +} SEXP wk_overnight_intraday_return_reset(SEXP e) { struct OvernightIntradayReturn *h = (struct OvernightIntradayReturn *)R_ExternalPtrAddr(e); wickra_overnight_intraday_return_reset(h); @@ -11706,6 +12878,10 @@ SEXP wk_pain_index_is_ready(SEXP e) { struct PainIndex *h = (struct PainIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_pain_index_is_ready(h)); } +SEXP wk_pain_index_name(SEXP e) { + struct PainIndex *h = (struct PainIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_pain_index_name(h)); +} SEXP wk_pain_index_reset(SEXP e) { struct PainIndex *h = (struct PainIndex *)R_ExternalPtrAddr(e); wickra_pain_index_reset(h); @@ -11745,6 +12921,10 @@ SEXP wk_pair_spread_z_score_is_ready(SEXP e) { struct PairSpreadZScore *h = (struct PairSpreadZScore *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_pair_spread_z_score_is_ready(h)); } +SEXP wk_pair_spread_z_score_name(SEXP e) { + struct PairSpreadZScore *h = (struct PairSpreadZScore *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_pair_spread_z_score_name(h)); +} SEXP wk_pair_spread_z_score_reset(SEXP e) { struct PairSpreadZScore *h = (struct PairSpreadZScore *)R_ExternalPtrAddr(e); wickra_pair_spread_z_score_reset(h); @@ -11784,6 +12964,10 @@ SEXP wk_pairwise_beta_is_ready(SEXP e) { struct PairwiseBeta *h = (struct PairwiseBeta *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_pairwise_beta_is_ready(h)); } +SEXP wk_pairwise_beta_name(SEXP e) { + struct PairwiseBeta *h = (struct PairwiseBeta *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_pairwise_beta_name(h)); +} SEXP wk_pairwise_beta_reset(SEXP e) { struct PairwiseBeta *h = (struct PairwiseBeta *)R_ExternalPtrAddr(e); wickra_pairwise_beta_reset(h); @@ -11825,6 +13009,10 @@ SEXP wk_parkinson_volatility_is_ready(SEXP e) { struct ParkinsonVolatility *h = (struct ParkinsonVolatility *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_parkinson_volatility_is_ready(h)); } +SEXP wk_parkinson_volatility_name(SEXP e) { + struct ParkinsonVolatility *h = (struct ParkinsonVolatility *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_parkinson_volatility_name(h)); +} SEXP wk_parkinson_volatility_reset(SEXP e) { struct ParkinsonVolatility *h = (struct ParkinsonVolatility *)R_ExternalPtrAddr(e); wickra_parkinson_volatility_reset(h); @@ -11864,6 +13052,10 @@ SEXP wk_pearson_correlation_is_ready(SEXP e) { struct PearsonCorrelation *h = (struct PearsonCorrelation *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_pearson_correlation_is_ready(h)); } +SEXP wk_pearson_correlation_name(SEXP e) { + struct PearsonCorrelation *h = (struct PearsonCorrelation *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_pearson_correlation_name(h)); +} SEXP wk_pearson_correlation_reset(SEXP e) { struct PearsonCorrelation *h = (struct PearsonCorrelation *)R_ExternalPtrAddr(e); wickra_pearson_correlation_reset(h); @@ -11895,6 +13087,10 @@ SEXP wk_percent_above_ma_is_ready(SEXP e) { struct PercentAboveMa *h = (struct PercentAboveMa *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_percent_above_ma_is_ready(h)); } +SEXP wk_percent_above_ma_name(SEXP e) { + struct PercentAboveMa *h = (struct PercentAboveMa *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_percent_above_ma_name(h)); +} SEXP wk_percent_above_ma_reset(SEXP e) { struct PercentAboveMa *h = (struct PercentAboveMa *)R_ExternalPtrAddr(e); wickra_percent_above_ma_reset(h); @@ -11934,6 +13130,10 @@ SEXP wk_percent_b_is_ready(SEXP e) { struct PercentB *h = (struct PercentB *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_percent_b_is_ready(h)); } +SEXP wk_percent_b_name(SEXP e) { + struct PercentB *h = (struct PercentB *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_percent_b_name(h)); +} SEXP wk_percent_b_reset(SEXP e) { struct PercentB *h = (struct PercentB *)R_ExternalPtrAddr(e); wickra_percent_b_reset(h); @@ -11973,6 +13173,10 @@ SEXP wk_percentage_trailing_stop_is_ready(SEXP e) { struct PercentageTrailingStop *h = (struct PercentageTrailingStop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_percentage_trailing_stop_is_ready(h)); } +SEXP wk_percentage_trailing_stop_name(SEXP e) { + struct PercentageTrailingStop *h = (struct PercentageTrailingStop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_percentage_trailing_stop_name(h)); +} SEXP wk_percentage_trailing_stop_reset(SEXP e) { struct PercentageTrailingStop *h = (struct PercentageTrailingStop *)R_ExternalPtrAddr(e); wickra_percentage_trailing_stop_reset(h); @@ -12004,6 +13208,10 @@ SEXP wk_perpetual_premium_index_is_ready(SEXP e) { struct PerpetualPremiumIndex *h = (struct PerpetualPremiumIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_perpetual_premium_index_is_ready(h)); } +SEXP wk_perpetual_premium_index_name(SEXP e) { + struct PerpetualPremiumIndex *h = (struct PerpetualPremiumIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_perpetual_premium_index_name(h)); +} SEXP wk_perpetual_premium_index_reset(SEXP e) { struct PerpetualPremiumIndex *h = (struct PerpetualPremiumIndex *)R_ExternalPtrAddr(e); wickra_perpetual_premium_index_reset(h); @@ -12045,6 +13253,10 @@ SEXP wk_pgo_is_ready(SEXP e) { struct Pgo *h = (struct Pgo *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_pgo_is_ready(h)); } +SEXP wk_pgo_name(SEXP e) { + struct Pgo *h = (struct Pgo *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_pgo_name(h)); +} SEXP wk_pgo_reset(SEXP e) { struct Pgo *h = (struct Pgo *)R_ExternalPtrAddr(e); wickra_pgo_reset(h); @@ -12086,6 +13298,10 @@ SEXP wk_piercing_dark_cloud_is_ready(SEXP e) { struct PiercingDarkCloud *h = (struct PiercingDarkCloud *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_piercing_dark_cloud_is_ready(h)); } +SEXP wk_piercing_dark_cloud_name(SEXP e) { + struct PiercingDarkCloud *h = (struct PiercingDarkCloud *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_piercing_dark_cloud_name(h)); +} SEXP wk_piercing_dark_cloud_reset(SEXP e) { struct PiercingDarkCloud *h = (struct PiercingDarkCloud *)R_ExternalPtrAddr(e); wickra_piercing_dark_cloud_reset(h); @@ -12117,6 +13333,10 @@ SEXP wk_pin_is_ready(SEXP e) { struct Pin *h = (struct Pin *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_pin_is_ready(h)); } +SEXP wk_pin_name(SEXP e) { + struct Pin *h = (struct Pin *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_pin_name(h)); +} SEXP wk_pin_reset(SEXP e) { struct Pin *h = (struct Pin *)R_ExternalPtrAddr(e); wickra_pin_reset(h); @@ -12158,6 +13378,10 @@ SEXP wk_pivot_reversal_is_ready(SEXP e) { struct PivotReversal *h = (struct PivotReversal *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_pivot_reversal_is_ready(h)); } +SEXP wk_pivot_reversal_name(SEXP e) { + struct PivotReversal *h = (struct PivotReversal *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_pivot_reversal_name(h)); +} SEXP wk_pivot_reversal_reset(SEXP e) { struct PivotReversal *h = (struct PivotReversal *)R_ExternalPtrAddr(e); wickra_pivot_reversal_reset(h); @@ -12199,6 +13423,10 @@ SEXP wk_plus_di_is_ready(SEXP e) { struct PlusDi *h = (struct PlusDi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_plus_di_is_ready(h)); } +SEXP wk_plus_di_name(SEXP e) { + struct PlusDi *h = (struct PlusDi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_plus_di_name(h)); +} SEXP wk_plus_di_reset(SEXP e) { struct PlusDi *h = (struct PlusDi *)R_ExternalPtrAddr(e); wickra_plus_di_reset(h); @@ -12240,6 +13468,10 @@ SEXP wk_plus_dm_is_ready(SEXP e) { struct PlusDm *h = (struct PlusDm *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_plus_dm_is_ready(h)); } +SEXP wk_plus_dm_name(SEXP e) { + struct PlusDm *h = (struct PlusDm *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_plus_dm_name(h)); +} SEXP wk_plus_dm_reset(SEXP e) { struct PlusDm *h = (struct PlusDm *)R_ExternalPtrAddr(e); wickra_plus_dm_reset(h); @@ -12279,6 +13511,10 @@ SEXP wk_pmo_is_ready(SEXP e) { struct Pmo *h = (struct Pmo *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_pmo_is_ready(h)); } +SEXP wk_pmo_name(SEXP e) { + struct Pmo *h = (struct Pmo *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_pmo_name(h)); +} SEXP wk_pmo_reset(SEXP e) { struct Pmo *h = (struct Pmo *)R_ExternalPtrAddr(e); wickra_pmo_reset(h); @@ -12318,6 +13554,10 @@ SEXP wk_point_and_figure_bars_update(SEXP e, SEXP a0, SEXP a1, SEXP a2, SEXP a3, UNPROTECT(3); return r; } +SEXP wk_point_and_figure_bars_name(SEXP e) { + struct PointAndFigureBars *h = (struct PointAndFigureBars *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_point_and_figure_bars_name(h)); +} SEXP wk_point_and_figure_bars_reset(SEXP e) { struct PointAndFigureBars *h = (struct PointAndFigureBars *)R_ExternalPtrAddr(e); wickra_point_and_figure_bars_reset(h); @@ -12357,6 +13597,10 @@ SEXP wk_polarized_fractal_efficiency_is_ready(SEXP e) { struct PolarizedFractalEfficiency *h = (struct PolarizedFractalEfficiency *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_polarized_fractal_efficiency_is_ready(h)); } +SEXP wk_polarized_fractal_efficiency_name(SEXP e) { + struct PolarizedFractalEfficiency *h = (struct PolarizedFractalEfficiency *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_polarized_fractal_efficiency_name(h)); +} SEXP wk_polarized_fractal_efficiency_reset(SEXP e) { struct PolarizedFractalEfficiency *h = (struct PolarizedFractalEfficiency *)R_ExternalPtrAddr(e); wickra_polarized_fractal_efficiency_reset(h); @@ -12396,6 +13640,10 @@ SEXP wk_ppo_is_ready(SEXP e) { struct Ppo *h = (struct Ppo *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ppo_is_ready(h)); } +SEXP wk_ppo_name(SEXP e) { + struct Ppo *h = (struct Ppo *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ppo_name(h)); +} SEXP wk_ppo_reset(SEXP e) { struct Ppo *h = (struct Ppo *)R_ExternalPtrAddr(e); wickra_ppo_reset(h); @@ -12435,6 +13683,10 @@ SEXP wk_ppo_histogram_is_ready(SEXP e) { struct PpoHistogram *h = (struct PpoHistogram *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ppo_histogram_is_ready(h)); } +SEXP wk_ppo_histogram_name(SEXP e) { + struct PpoHistogram *h = (struct PpoHistogram *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ppo_histogram_name(h)); +} SEXP wk_ppo_histogram_reset(SEXP e) { struct PpoHistogram *h = (struct PpoHistogram *)R_ExternalPtrAddr(e); wickra_ppo_histogram_reset(h); @@ -12476,6 +13728,10 @@ SEXP wk_profile_shape_is_ready(SEXP e) { struct ProfileShape *h = (struct ProfileShape *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_profile_shape_is_ready(h)); } +SEXP wk_profile_shape_name(SEXP e) { + struct ProfileShape *h = (struct ProfileShape *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_profile_shape_name(h)); +} SEXP wk_profile_shape_reset(SEXP e) { struct ProfileShape *h = (struct ProfileShape *)R_ExternalPtrAddr(e); wickra_profile_shape_reset(h); @@ -12515,6 +13771,10 @@ SEXP wk_profit_factor_is_ready(SEXP e) { struct ProfitFactor *h = (struct ProfitFactor *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_profit_factor_is_ready(h)); } +SEXP wk_profit_factor_name(SEXP e) { + struct ProfitFactor *h = (struct ProfitFactor *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_profit_factor_name(h)); +} SEXP wk_profit_factor_reset(SEXP e) { struct ProfitFactor *h = (struct ProfitFactor *)R_ExternalPtrAddr(e); wickra_profit_factor_reset(h); @@ -12558,6 +13818,10 @@ SEXP wk_projection_bands_is_ready(SEXP e) { struct ProjectionBands *h = (struct ProjectionBands *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_projection_bands_is_ready(h)); } +SEXP wk_projection_bands_name(SEXP e) { + struct ProjectionBands *h = (struct ProjectionBands *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_projection_bands_name(h)); +} SEXP wk_projection_bands_reset(SEXP e) { struct ProjectionBands *h = (struct ProjectionBands *)R_ExternalPtrAddr(e); wickra_projection_bands_reset(h); @@ -12599,6 +13863,10 @@ SEXP wk_projection_oscillator_is_ready(SEXP e) { struct ProjectionOscillator *h = (struct ProjectionOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_projection_oscillator_is_ready(h)); } +SEXP wk_projection_oscillator_name(SEXP e) { + struct ProjectionOscillator *h = (struct ProjectionOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_projection_oscillator_name(h)); +} SEXP wk_projection_oscillator_reset(SEXP e) { struct ProjectionOscillator *h = (struct ProjectionOscillator *)R_ExternalPtrAddr(e); wickra_projection_oscillator_reset(h); @@ -12640,6 +13908,10 @@ SEXP wk_psar_is_ready(SEXP e) { struct Psar *h = (struct Psar *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_psar_is_ready(h)); } +SEXP wk_psar_name(SEXP e) { + struct Psar *h = (struct Psar *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_psar_name(h)); +} SEXP wk_psar_reset(SEXP e) { struct Psar *h = (struct Psar *)R_ExternalPtrAddr(e); wickra_psar_reset(h); @@ -12681,6 +13953,10 @@ SEXP wk_pvi_is_ready(SEXP e) { struct Pvi *h = (struct Pvi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_pvi_is_ready(h)); } +SEXP wk_pvi_name(SEXP e) { + struct Pvi *h = (struct Pvi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_pvi_name(h)); +} SEXP wk_pvi_reset(SEXP e) { struct Pvi *h = (struct Pvi *)R_ExternalPtrAddr(e); wickra_pvi_reset(h); @@ -12722,6 +13998,10 @@ SEXP wk_qqe_is_ready(SEXP e) { struct Qqe *h = (struct Qqe *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_qqe_is_ready(h)); } +SEXP wk_qqe_name(SEXP e) { + struct Qqe *h = (struct Qqe *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_qqe_name(h)); +} SEXP wk_qqe_reset(SEXP e) { struct Qqe *h = (struct Qqe *)R_ExternalPtrAddr(e); wickra_qqe_reset(h); @@ -12763,6 +14043,10 @@ SEXP wk_qstick_is_ready(SEXP e) { struct Qstick *h = (struct Qstick *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_qstick_is_ready(h)); } +SEXP wk_qstick_name(SEXP e) { + struct Qstick *h = (struct Qstick *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_qstick_name(h)); +} SEXP wk_qstick_reset(SEXP e) { struct Qstick *h = (struct Qstick *)R_ExternalPtrAddr(e); wickra_qstick_reset(h); @@ -12806,6 +14090,10 @@ SEXP wk_quartile_bands_is_ready(SEXP e) { struct QuartileBands *h = (struct QuartileBands *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_quartile_bands_is_ready(h)); } +SEXP wk_quartile_bands_name(SEXP e) { + struct QuartileBands *h = (struct QuartileBands *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_quartile_bands_name(h)); +} SEXP wk_quartile_bands_reset(SEXP e) { struct QuartileBands *h = (struct QuartileBands *)R_ExternalPtrAddr(e); wickra_quartile_bands_reset(h); @@ -12837,6 +14125,10 @@ SEXP wk_quoted_spread_is_ready(SEXP e) { struct QuotedSpread *h = (struct QuotedSpread *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_quoted_spread_is_ready(h)); } +SEXP wk_quoted_spread_name(SEXP e) { + struct QuotedSpread *h = (struct QuotedSpread *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_quoted_spread_name(h)); +} SEXP wk_quoted_spread_reset(SEXP e) { struct QuotedSpread *h = (struct QuotedSpread *)R_ExternalPtrAddr(e); wickra_quoted_spread_reset(h); @@ -12876,6 +14168,10 @@ SEXP wk_r_squared_is_ready(SEXP e) { struct RSquared *h = (struct RSquared *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_r_squared_is_ready(h)); } +SEXP wk_r_squared_name(SEXP e) { + struct RSquared *h = (struct RSquared *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_r_squared_name(h)); +} SEXP wk_r_squared_reset(SEXP e) { struct RSquared *h = (struct RSquared *)R_ExternalPtrAddr(e); wickra_r_squared_reset(h); @@ -12915,6 +14211,10 @@ SEXP wk_range_bars_update(SEXP e, SEXP a0, SEXP a1, SEXP a2, SEXP a3, SEXP a4, S UNPROTECT(3); return r; } +SEXP wk_range_bars_name(SEXP e) { + struct RangeBars *h = (struct RangeBars *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_range_bars_name(h)); +} SEXP wk_range_bars_reset(SEXP e) { struct RangeBars *h = (struct RangeBars *)R_ExternalPtrAddr(e); wickra_range_bars_reset(h); @@ -12946,6 +14246,10 @@ SEXP wk_realized_spread_is_ready(SEXP e) { struct RealizedSpread *h = (struct RealizedSpread *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_realized_spread_is_ready(h)); } +SEXP wk_realized_spread_name(SEXP e) { + struct RealizedSpread *h = (struct RealizedSpread *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_realized_spread_name(h)); +} SEXP wk_realized_spread_reset(SEXP e) { struct RealizedSpread *h = (struct RealizedSpread *)R_ExternalPtrAddr(e); wickra_realized_spread_reset(h); @@ -12985,6 +14289,10 @@ SEXP wk_realized_volatility_is_ready(SEXP e) { struct RealizedVolatility *h = (struct RealizedVolatility *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_realized_volatility_is_ready(h)); } +SEXP wk_realized_volatility_name(SEXP e) { + struct RealizedVolatility *h = (struct RealizedVolatility *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_realized_volatility_name(h)); +} SEXP wk_realized_volatility_reset(SEXP e) { struct RealizedVolatility *h = (struct RealizedVolatility *)R_ExternalPtrAddr(e); wickra_realized_volatility_reset(h); @@ -13024,6 +14332,10 @@ SEXP wk_recovery_factor_is_ready(SEXP e) { struct RecoveryFactor *h = (struct RecoveryFactor *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_recovery_factor_is_ready(h)); } +SEXP wk_recovery_factor_name(SEXP e) { + struct RecoveryFactor *h = (struct RecoveryFactor *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_recovery_factor_name(h)); +} SEXP wk_recovery_factor_reset(SEXP e) { struct RecoveryFactor *h = (struct RecoveryFactor *)R_ExternalPtrAddr(e); wickra_recovery_factor_reset(h); @@ -13065,6 +14377,10 @@ SEXP wk_rectangle_range_is_ready(SEXP e) { struct RectangleRange *h = (struct RectangleRange *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rectangle_range_is_ready(h)); } +SEXP wk_rectangle_range_name(SEXP e) { + struct RectangleRange *h = (struct RectangleRange *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rectangle_range_name(h)); +} SEXP wk_rectangle_range_reset(SEXP e) { struct RectangleRange *h = (struct RectangleRange *)R_ExternalPtrAddr(e); wickra_rectangle_range_reset(h); @@ -13104,6 +14420,10 @@ SEXP wk_reflex_is_ready(SEXP e) { struct Reflex *h = (struct Reflex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_reflex_is_ready(h)); } +SEXP wk_reflex_name(SEXP e) { + struct Reflex *h = (struct Reflex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_reflex_name(h)); +} SEXP wk_reflex_reset(SEXP e) { struct Reflex *h = (struct Reflex *)R_ExternalPtrAddr(e); wickra_reflex_reset(h); @@ -13143,6 +14463,10 @@ SEXP wk_regime_label_is_ready(SEXP e) { struct RegimeLabel *h = (struct RegimeLabel *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_regime_label_is_ready(h)); } +SEXP wk_regime_label_name(SEXP e) { + struct RegimeLabel *h = (struct RegimeLabel *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_regime_label_name(h)); +} SEXP wk_regime_label_reset(SEXP e) { struct RegimeLabel *h = (struct RegimeLabel *)R_ExternalPtrAddr(e); wickra_regime_label_reset(h); @@ -13186,6 +14510,10 @@ SEXP wk_relative_strength_ab_is_ready(SEXP e) { struct RelativeStrengthAB *h = (struct RelativeStrengthAB *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_relative_strength_ab_is_ready(h)); } +SEXP wk_relative_strength_ab_name(SEXP e) { + struct RelativeStrengthAB *h = (struct RelativeStrengthAB *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_relative_strength_ab_name(h)); +} SEXP wk_relative_strength_ab_reset(SEXP e) { struct RelativeStrengthAB *h = (struct RelativeStrengthAB *)R_ExternalPtrAddr(e); wickra_relative_strength_ab_reset(h); @@ -13225,6 +14553,10 @@ SEXP wk_renko_bars_update(SEXP e, SEXP a0, SEXP a1, SEXP a2, SEXP a3, SEXP a4, S UNPROTECT(3); return r; } +SEXP wk_renko_bars_name(SEXP e) { + struct RenkoBars *h = (struct RenkoBars *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_renko_bars_name(h)); +} SEXP wk_renko_bars_reset(SEXP e) { struct RenkoBars *h = (struct RenkoBars *)R_ExternalPtrAddr(e); wickra_renko_bars_reset(h); @@ -13264,6 +14596,10 @@ SEXP wk_renko_trailing_stop_is_ready(SEXP e) { struct RenkoTrailingStop *h = (struct RenkoTrailingStop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_renko_trailing_stop_is_ready(h)); } +SEXP wk_renko_trailing_stop_name(SEXP e) { + struct RenkoTrailingStop *h = (struct RenkoTrailingStop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_renko_trailing_stop_name(h)); +} SEXP wk_renko_trailing_stop_reset(SEXP e) { struct RenkoTrailingStop *h = (struct RenkoTrailingStop *)R_ExternalPtrAddr(e); wickra_renko_trailing_stop_reset(h); @@ -13305,6 +14641,10 @@ SEXP wk_rickshaw_man_is_ready(SEXP e) { struct RickshawMan *h = (struct RickshawMan *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rickshaw_man_is_ready(h)); } +SEXP wk_rickshaw_man_name(SEXP e) { + struct RickshawMan *h = (struct RickshawMan *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rickshaw_man_name(h)); +} SEXP wk_rickshaw_man_reset(SEXP e) { struct RickshawMan *h = (struct RickshawMan *)R_ExternalPtrAddr(e); wickra_rickshaw_man_reset(h); @@ -13346,6 +14686,10 @@ SEXP wk_rising_three_methods_is_ready(SEXP e) { struct RisingThreeMethods *h = (struct RisingThreeMethods *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rising_three_methods_is_ready(h)); } +SEXP wk_rising_three_methods_name(SEXP e) { + struct RisingThreeMethods *h = (struct RisingThreeMethods *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rising_three_methods_name(h)); +} SEXP wk_rising_three_methods_reset(SEXP e) { struct RisingThreeMethods *h = (struct RisingThreeMethods *)R_ExternalPtrAddr(e); wickra_rising_three_methods_reset(h); @@ -13385,6 +14729,10 @@ SEXP wk_rmi_is_ready(SEXP e) { struct Rmi *h = (struct Rmi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rmi_is_ready(h)); } +SEXP wk_rmi_name(SEXP e) { + struct Rmi *h = (struct Rmi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rmi_name(h)); +} SEXP wk_rmi_reset(SEXP e) { struct Rmi *h = (struct Rmi *)R_ExternalPtrAddr(e); wickra_rmi_reset(h); @@ -13424,6 +14772,10 @@ SEXP wk_roc_is_ready(SEXP e) { struct Roc *h = (struct Roc *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_roc_is_ready(h)); } +SEXP wk_roc_name(SEXP e) { + struct Roc *h = (struct Roc *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_roc_name(h)); +} SEXP wk_roc_reset(SEXP e) { struct Roc *h = (struct Roc *)R_ExternalPtrAddr(e); wickra_roc_reset(h); @@ -13463,6 +14815,10 @@ SEXP wk_rocp_is_ready(SEXP e) { struct Rocp *h = (struct Rocp *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rocp_is_ready(h)); } +SEXP wk_rocp_name(SEXP e) { + struct Rocp *h = (struct Rocp *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rocp_name(h)); +} SEXP wk_rocp_reset(SEXP e) { struct Rocp *h = (struct Rocp *)R_ExternalPtrAddr(e); wickra_rocp_reset(h); @@ -13502,6 +14858,10 @@ SEXP wk_rocr_is_ready(SEXP e) { struct Rocr *h = (struct Rocr *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rocr_is_ready(h)); } +SEXP wk_rocr_name(SEXP e) { + struct Rocr *h = (struct Rocr *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rocr_name(h)); +} SEXP wk_rocr_reset(SEXP e) { struct Rocr *h = (struct Rocr *)R_ExternalPtrAddr(e); wickra_rocr_reset(h); @@ -13541,6 +14901,10 @@ SEXP wk_rocr100_is_ready(SEXP e) { struct Rocr100 *h = (struct Rocr100 *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rocr100_is_ready(h)); } +SEXP wk_rocr100_name(SEXP e) { + struct Rocr100 *h = (struct Rocr100 *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rocr100_name(h)); +} SEXP wk_rocr100_reset(SEXP e) { struct Rocr100 *h = (struct Rocr100 *)R_ExternalPtrAddr(e); wickra_rocr100_reset(h); @@ -13582,6 +14946,10 @@ SEXP wk_rogers_satchell_volatility_is_ready(SEXP e) { struct RogersSatchellVolatility *h = (struct RogersSatchellVolatility *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rogers_satchell_volatility_is_ready(h)); } +SEXP wk_rogers_satchell_volatility_name(SEXP e) { + struct RogersSatchellVolatility *h = (struct RogersSatchellVolatility *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rogers_satchell_volatility_name(h)); +} SEXP wk_rogers_satchell_volatility_reset(SEXP e) { struct RogersSatchellVolatility *h = (struct RogersSatchellVolatility *)R_ExternalPtrAddr(e); wickra_rogers_satchell_volatility_reset(h); @@ -13613,6 +14981,10 @@ SEXP wk_roll_measure_is_ready(SEXP e) { struct RollMeasure *h = (struct RollMeasure *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_roll_measure_is_ready(h)); } +SEXP wk_roll_measure_name(SEXP e) { + struct RollMeasure *h = (struct RollMeasure *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_roll_measure_name(h)); +} SEXP wk_roll_measure_reset(SEXP e) { struct RollMeasure *h = (struct RollMeasure *)R_ExternalPtrAddr(e); wickra_roll_measure_reset(h); @@ -13652,6 +15024,10 @@ SEXP wk_rolling_correlation_is_ready(SEXP e) { struct RollingCorrelation *h = (struct RollingCorrelation *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rolling_correlation_is_ready(h)); } +SEXP wk_rolling_correlation_name(SEXP e) { + struct RollingCorrelation *h = (struct RollingCorrelation *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rolling_correlation_name(h)); +} SEXP wk_rolling_correlation_reset(SEXP e) { struct RollingCorrelation *h = (struct RollingCorrelation *)R_ExternalPtrAddr(e); wickra_rolling_correlation_reset(h); @@ -13691,6 +15067,10 @@ SEXP wk_rolling_covariance_is_ready(SEXP e) { struct RollingCovariance *h = (struct RollingCovariance *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rolling_covariance_is_ready(h)); } +SEXP wk_rolling_covariance_name(SEXP e) { + struct RollingCovariance *h = (struct RollingCovariance *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rolling_covariance_name(h)); +} SEXP wk_rolling_covariance_reset(SEXP e) { struct RollingCovariance *h = (struct RollingCovariance *)R_ExternalPtrAddr(e); wickra_rolling_covariance_reset(h); @@ -13730,6 +15110,10 @@ SEXP wk_rolling_iqr_is_ready(SEXP e) { struct RollingIqr *h = (struct RollingIqr *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rolling_iqr_is_ready(h)); } +SEXP wk_rolling_iqr_name(SEXP e) { + struct RollingIqr *h = (struct RollingIqr *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rolling_iqr_name(h)); +} SEXP wk_rolling_iqr_reset(SEXP e) { struct RollingIqr *h = (struct RollingIqr *)R_ExternalPtrAddr(e); wickra_rolling_iqr_reset(h); @@ -13769,6 +15153,10 @@ SEXP wk_rolling_min_max_scaler_is_ready(SEXP e) { struct RollingMinMaxScaler *h = (struct RollingMinMaxScaler *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rolling_min_max_scaler_is_ready(h)); } +SEXP wk_rolling_min_max_scaler_name(SEXP e) { + struct RollingMinMaxScaler *h = (struct RollingMinMaxScaler *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rolling_min_max_scaler_name(h)); +} SEXP wk_rolling_min_max_scaler_reset(SEXP e) { struct RollingMinMaxScaler *h = (struct RollingMinMaxScaler *)R_ExternalPtrAddr(e); wickra_rolling_min_max_scaler_reset(h); @@ -13808,6 +15196,10 @@ SEXP wk_rolling_percentile_rank_is_ready(SEXP e) { struct RollingPercentileRank *h = (struct RollingPercentileRank *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rolling_percentile_rank_is_ready(h)); } +SEXP wk_rolling_percentile_rank_name(SEXP e) { + struct RollingPercentileRank *h = (struct RollingPercentileRank *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rolling_percentile_rank_name(h)); +} SEXP wk_rolling_percentile_rank_reset(SEXP e) { struct RollingPercentileRank *h = (struct RollingPercentileRank *)R_ExternalPtrAddr(e); wickra_rolling_percentile_rank_reset(h); @@ -13847,6 +15239,10 @@ SEXP wk_rolling_quantile_is_ready(SEXP e) { struct RollingQuantile *h = (struct RollingQuantile *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rolling_quantile_is_ready(h)); } +SEXP wk_rolling_quantile_name(SEXP e) { + struct RollingQuantile *h = (struct RollingQuantile *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rolling_quantile_name(h)); +} SEXP wk_rolling_quantile_reset(SEXP e) { struct RollingQuantile *h = (struct RollingQuantile *)R_ExternalPtrAddr(e); wickra_rolling_quantile_reset(h); @@ -13888,6 +15284,10 @@ SEXP wk_rolling_vwap_is_ready(SEXP e) { struct RollingVwap *h = (struct RollingVwap *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rolling_vwap_is_ready(h)); } +SEXP wk_rolling_vwap_name(SEXP e) { + struct RollingVwap *h = (struct RollingVwap *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rolling_vwap_name(h)); +} SEXP wk_rolling_vwap_reset(SEXP e) { struct RollingVwap *h = (struct RollingVwap *)R_ExternalPtrAddr(e); wickra_rolling_vwap_reset(h); @@ -13927,6 +15327,10 @@ SEXP wk_roofing_filter_is_ready(SEXP e) { struct RoofingFilter *h = (struct RoofingFilter *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_roofing_filter_is_ready(h)); } +SEXP wk_roofing_filter_name(SEXP e) { + struct RoofingFilter *h = (struct RoofingFilter *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_roofing_filter_name(h)); +} SEXP wk_roofing_filter_reset(SEXP e) { struct RoofingFilter *h = (struct RoofingFilter *)R_ExternalPtrAddr(e); wickra_roofing_filter_reset(h); @@ -13966,6 +15370,10 @@ SEXP wk_rsi_is_ready(SEXP e) { struct Rsi *h = (struct Rsi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rsi_is_ready(h)); } +SEXP wk_rsi_name(SEXP e) { + struct Rsi *h = (struct Rsi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rsi_name(h)); +} SEXP wk_rsi_reset(SEXP e) { struct Rsi *h = (struct Rsi *)R_ExternalPtrAddr(e); wickra_rsi_reset(h); @@ -14005,6 +15413,10 @@ SEXP wk_rsx_is_ready(SEXP e) { struct Rsx *h = (struct Rsx *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rsx_is_ready(h)); } +SEXP wk_rsx_name(SEXP e) { + struct Rsx *h = (struct Rsx *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rsx_name(h)); +} SEXP wk_rsx_reset(SEXP e) { struct Rsx *h = (struct Rsx *)R_ExternalPtrAddr(e); wickra_rsx_reset(h); @@ -14050,6 +15462,10 @@ SEXP wk_run_bars_update(SEXP e, SEXP a0, SEXP a1, SEXP a2, SEXP a3, SEXP a4, SEX UNPROTECT(3); return r; } +SEXP wk_run_bars_name(SEXP e) { + struct RunBars *h = (struct RunBars *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_run_bars_name(h)); +} SEXP wk_run_bars_reset(SEXP e) { struct RunBars *h = (struct RunBars *)R_ExternalPtrAddr(e); wickra_run_bars_reset(h); @@ -14091,6 +15507,10 @@ SEXP wk_rvi_is_ready(SEXP e) { struct Rvi *h = (struct Rvi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rvi_is_ready(h)); } +SEXP wk_rvi_name(SEXP e) { + struct Rvi *h = (struct Rvi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rvi_name(h)); +} SEXP wk_rvi_reset(SEXP e) { struct Rvi *h = (struct Rvi *)R_ExternalPtrAddr(e); wickra_rvi_reset(h); @@ -14130,6 +15550,10 @@ SEXP wk_rvi_volatility_is_ready(SEXP e) { struct RviVolatility *h = (struct RviVolatility *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rvi_volatility_is_ready(h)); } +SEXP wk_rvi_volatility_name(SEXP e) { + struct RviVolatility *h = (struct RviVolatility *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rvi_volatility_name(h)); +} SEXP wk_rvi_volatility_reset(SEXP e) { struct RviVolatility *h = (struct RviVolatility *)R_ExternalPtrAddr(e); wickra_rvi_volatility_reset(h); @@ -14171,6 +15595,10 @@ SEXP wk_rwi_is_ready(SEXP e) { struct Rwi *h = (struct Rwi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_rwi_is_ready(h)); } +SEXP wk_rwi_name(SEXP e) { + struct Rwi *h = (struct Rwi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_rwi_name(h)); +} SEXP wk_rwi_reset(SEXP e) { struct Rwi *h = (struct Rwi *)R_ExternalPtrAddr(e); wickra_rwi_reset(h); @@ -14210,6 +15638,10 @@ SEXP wk_sample_entropy_is_ready(SEXP e) { struct SampleEntropy *h = (struct SampleEntropy *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_sample_entropy_is_ready(h)); } +SEXP wk_sample_entropy_name(SEXP e) { + struct SampleEntropy *h = (struct SampleEntropy *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_sample_entropy_name(h)); +} SEXP wk_sample_entropy_reset(SEXP e) { struct SampleEntropy *h = (struct SampleEntropy *)R_ExternalPtrAddr(e); wickra_sample_entropy_reset(h); @@ -14251,6 +15683,10 @@ SEXP wk_sar_ext_is_ready(SEXP e) { struct SarExt *h = (struct SarExt *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_sar_ext_is_ready(h)); } +SEXP wk_sar_ext_name(SEXP e) { + struct SarExt *h = (struct SarExt *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_sar_ext_name(h)); +} SEXP wk_sar_ext_reset(SEXP e) { struct SarExt *h = (struct SarExt *)R_ExternalPtrAddr(e); wickra_sar_ext_reset(h); @@ -14292,6 +15728,10 @@ SEXP wk_seasonal_z_score_is_ready(SEXP e) { struct SeasonalZScore *h = (struct SeasonalZScore *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_seasonal_z_score_is_ready(h)); } +SEXP wk_seasonal_z_score_name(SEXP e) { + struct SeasonalZScore *h = (struct SeasonalZScore *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_seasonal_z_score_name(h)); +} SEXP wk_seasonal_z_score_reset(SEXP e) { struct SeasonalZScore *h = (struct SeasonalZScore *)R_ExternalPtrAddr(e); wickra_seasonal_z_score_reset(h); @@ -14333,6 +15773,10 @@ SEXP wk_separating_lines_is_ready(SEXP e) { struct SeparatingLines *h = (struct SeparatingLines *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_separating_lines_is_ready(h)); } +SEXP wk_separating_lines_name(SEXP e) { + struct SeparatingLines *h = (struct SeparatingLines *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_separating_lines_name(h)); +} SEXP wk_separating_lines_reset(SEXP e) { struct SeparatingLines *h = (struct SeparatingLines *)R_ExternalPtrAddr(e); wickra_separating_lines_reset(h); @@ -14374,6 +15818,10 @@ SEXP wk_session_high_low_is_ready(SEXP e) { struct SessionHighLow *h = (struct SessionHighLow *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_session_high_low_is_ready(h)); } +SEXP wk_session_high_low_name(SEXP e) { + struct SessionHighLow *h = (struct SessionHighLow *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_session_high_low_name(h)); +} SEXP wk_session_high_low_reset(SEXP e) { struct SessionHighLow *h = (struct SessionHighLow *)R_ExternalPtrAddr(e); wickra_session_high_low_reset(h); @@ -14417,6 +15865,10 @@ SEXP wk_session_range_is_ready(SEXP e) { struct SessionRange *h = (struct SessionRange *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_session_range_is_ready(h)); } +SEXP wk_session_range_name(SEXP e) { + struct SessionRange *h = (struct SessionRange *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_session_range_name(h)); +} SEXP wk_session_range_reset(SEXP e) { struct SessionRange *h = (struct SessionRange *)R_ExternalPtrAddr(e); wickra_session_range_reset(h); @@ -14458,6 +15910,10 @@ SEXP wk_session_vwap_is_ready(SEXP e) { struct SessionVwap *h = (struct SessionVwap *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_session_vwap_is_ready(h)); } +SEXP wk_session_vwap_name(SEXP e) { + struct SessionVwap *h = (struct SessionVwap *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_session_vwap_name(h)); +} SEXP wk_session_vwap_reset(SEXP e) { struct SessionVwap *h = (struct SessionVwap *)R_ExternalPtrAddr(e); wickra_session_vwap_reset(h); @@ -14497,6 +15953,10 @@ SEXP wk_shannon_entropy_is_ready(SEXP e) { struct ShannonEntropy *h = (struct ShannonEntropy *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_shannon_entropy_is_ready(h)); } +SEXP wk_shannon_entropy_name(SEXP e) { + struct ShannonEntropy *h = (struct ShannonEntropy *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_shannon_entropy_name(h)); +} SEXP wk_shannon_entropy_reset(SEXP e) { struct ShannonEntropy *h = (struct ShannonEntropy *)R_ExternalPtrAddr(e); wickra_shannon_entropy_reset(h); @@ -14538,6 +15998,10 @@ SEXP wk_shark_is_ready(SEXP e) { struct Shark *h = (struct Shark *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_shark_is_ready(h)); } +SEXP wk_shark_name(SEXP e) { + struct Shark *h = (struct Shark *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_shark_name(h)); +} SEXP wk_shark_reset(SEXP e) { struct Shark *h = (struct Shark *)R_ExternalPtrAddr(e); wickra_shark_reset(h); @@ -14577,6 +16041,10 @@ SEXP wk_sharpe_ratio_is_ready(SEXP e) { struct SharpeRatio *h = (struct SharpeRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_sharpe_ratio_is_ready(h)); } +SEXP wk_sharpe_ratio_name(SEXP e) { + struct SharpeRatio *h = (struct SharpeRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_sharpe_ratio_name(h)); +} SEXP wk_sharpe_ratio_reset(SEXP e) { struct SharpeRatio *h = (struct SharpeRatio *)R_ExternalPtrAddr(e); wickra_sharpe_ratio_reset(h); @@ -14618,6 +16086,10 @@ SEXP wk_shooting_star_is_ready(SEXP e) { struct ShootingStar *h = (struct ShootingStar *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_shooting_star_is_ready(h)); } +SEXP wk_shooting_star_name(SEXP e) { + struct ShootingStar *h = (struct ShootingStar *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_shooting_star_name(h)); +} SEXP wk_shooting_star_reset(SEXP e) { struct ShootingStar *h = (struct ShootingStar *)R_ExternalPtrAddr(e); wickra_shooting_star_reset(h); @@ -14659,6 +16131,10 @@ SEXP wk_short_line_is_ready(SEXP e) { struct ShortLine *h = (struct ShortLine *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_short_line_is_ready(h)); } +SEXP wk_short_line_name(SEXP e) { + struct ShortLine *h = (struct ShortLine *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_short_line_name(h)); +} SEXP wk_short_line_reset(SEXP e) { struct ShortLine *h = (struct ShortLine *)R_ExternalPtrAddr(e); wickra_short_line_reset(h); @@ -14690,6 +16166,10 @@ SEXP wk_signed_volume_is_ready(SEXP e) { struct SignedVolume *h = (struct SignedVolume *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_signed_volume_is_ready(h)); } +SEXP wk_signed_volume_name(SEXP e) { + struct SignedVolume *h = (struct SignedVolume *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_signed_volume_name(h)); +} SEXP wk_signed_volume_reset(SEXP e) { struct SignedVolume *h = (struct SignedVolume *)R_ExternalPtrAddr(e); wickra_signed_volume_reset(h); @@ -14729,6 +16209,10 @@ SEXP wk_sine_wave_is_ready(SEXP e) { struct SineWave *h = (struct SineWave *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_sine_wave_is_ready(h)); } +SEXP wk_sine_wave_name(SEXP e) { + struct SineWave *h = (struct SineWave *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_sine_wave_name(h)); +} SEXP wk_sine_wave_reset(SEXP e) { struct SineWave *h = (struct SineWave *)R_ExternalPtrAddr(e); wickra_sine_wave_reset(h); @@ -14768,6 +16252,10 @@ SEXP wk_sine_weighted_ma_is_ready(SEXP e) { struct SineWeightedMa *h = (struct SineWeightedMa *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_sine_weighted_ma_is_ready(h)); } +SEXP wk_sine_weighted_ma_name(SEXP e) { + struct SineWeightedMa *h = (struct SineWeightedMa *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_sine_weighted_ma_name(h)); +} SEXP wk_sine_weighted_ma_reset(SEXP e) { struct SineWeightedMa *h = (struct SineWeightedMa *)R_ExternalPtrAddr(e); wickra_sine_weighted_ma_reset(h); @@ -14809,6 +16297,10 @@ SEXP wk_single_prints_is_ready(SEXP e) { struct SinglePrints *h = (struct SinglePrints *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_single_prints_is_ready(h)); } +SEXP wk_single_prints_name(SEXP e) { + struct SinglePrints *h = (struct SinglePrints *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_single_prints_name(h)); +} SEXP wk_single_prints_reset(SEXP e) { struct SinglePrints *h = (struct SinglePrints *)R_ExternalPtrAddr(e); wickra_single_prints_reset(h); @@ -14848,6 +16340,10 @@ SEXP wk_skewness_is_ready(SEXP e) { struct Skewness *h = (struct Skewness *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_skewness_is_ready(h)); } +SEXP wk_skewness_name(SEXP e) { + struct Skewness *h = (struct Skewness *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_skewness_name(h)); +} SEXP wk_skewness_reset(SEXP e) { struct Skewness *h = (struct Skewness *)R_ExternalPtrAddr(e); wickra_skewness_reset(h); @@ -14887,6 +16383,10 @@ SEXP wk_sma_is_ready(SEXP e) { struct Sma *h = (struct Sma *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_sma_is_ready(h)); } +SEXP wk_sma_name(SEXP e) { + struct Sma *h = (struct Sma *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_sma_name(h)); +} SEXP wk_sma_reset(SEXP e) { struct Sma *h = (struct Sma *)R_ExternalPtrAddr(e); wickra_sma_reset(h); @@ -14928,6 +16428,10 @@ SEXP wk_smi_is_ready(SEXP e) { struct Smi *h = (struct Smi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_smi_is_ready(h)); } +SEXP wk_smi_name(SEXP e) { + struct Smi *h = (struct Smi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_smi_name(h)); +} SEXP wk_smi_reset(SEXP e) { struct Smi *h = (struct Smi *)R_ExternalPtrAddr(e); wickra_smi_reset(h); @@ -14967,6 +16471,10 @@ SEXP wk_smma_is_ready(SEXP e) { struct Smma *h = (struct Smma *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_smma_is_ready(h)); } +SEXP wk_smma_name(SEXP e) { + struct Smma *h = (struct Smma *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_smma_name(h)); +} SEXP wk_smma_reset(SEXP e) { struct Smma *h = (struct Smma *)R_ExternalPtrAddr(e); wickra_smma_reset(h); @@ -15012,6 +16520,10 @@ SEXP wk_smoothed_heikin_ashi_is_ready(SEXP e) { struct SmoothedHeikinAshi *h = (struct SmoothedHeikinAshi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_smoothed_heikin_ashi_is_ready(h)); } +SEXP wk_smoothed_heikin_ashi_name(SEXP e) { + struct SmoothedHeikinAshi *h = (struct SmoothedHeikinAshi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_smoothed_heikin_ashi_name(h)); +} SEXP wk_smoothed_heikin_ashi_reset(SEXP e) { struct SmoothedHeikinAshi *h = (struct SmoothedHeikinAshi *)R_ExternalPtrAddr(e); wickra_smoothed_heikin_ashi_reset(h); @@ -15051,6 +16563,10 @@ SEXP wk_sortino_ratio_is_ready(SEXP e) { struct SortinoRatio *h = (struct SortinoRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_sortino_ratio_is_ready(h)); } +SEXP wk_sortino_ratio_name(SEXP e) { + struct SortinoRatio *h = (struct SortinoRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_sortino_ratio_name(h)); +} SEXP wk_sortino_ratio_reset(SEXP e) { struct SortinoRatio *h = (struct SortinoRatio *)R_ExternalPtrAddr(e); wickra_sortino_ratio_reset(h); @@ -15090,6 +16606,10 @@ SEXP wk_spearman_correlation_is_ready(SEXP e) { struct SpearmanCorrelation *h = (struct SpearmanCorrelation *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_spearman_correlation_is_ready(h)); } +SEXP wk_spearman_correlation_name(SEXP e) { + struct SpearmanCorrelation *h = (struct SpearmanCorrelation *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_spearman_correlation_name(h)); +} SEXP wk_spearman_correlation_reset(SEXP e) { struct SpearmanCorrelation *h = (struct SpearmanCorrelation *)R_ExternalPtrAddr(e); wickra_spearman_correlation_reset(h); @@ -15131,6 +16651,10 @@ SEXP wk_spinning_top_is_ready(SEXP e) { struct SpinningTop *h = (struct SpinningTop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_spinning_top_is_ready(h)); } +SEXP wk_spinning_top_name(SEXP e) { + struct SpinningTop *h = (struct SpinningTop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_spinning_top_name(h)); +} SEXP wk_spinning_top_reset(SEXP e) { struct SpinningTop *h = (struct SpinningTop *)R_ExternalPtrAddr(e); wickra_spinning_top_reset(h); @@ -15170,6 +16694,10 @@ SEXP wk_spread_ar1_coefficient_is_ready(SEXP e) { struct SpreadAr1Coefficient *h = (struct SpreadAr1Coefficient *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_spread_ar1_coefficient_is_ready(h)); } +SEXP wk_spread_ar1_coefficient_name(SEXP e) { + struct SpreadAr1Coefficient *h = (struct SpreadAr1Coefficient *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_spread_ar1_coefficient_name(h)); +} SEXP wk_spread_ar1_coefficient_reset(SEXP e) { struct SpreadAr1Coefficient *h = (struct SpreadAr1Coefficient *)R_ExternalPtrAddr(e); wickra_spread_ar1_coefficient_reset(h); @@ -15215,6 +16743,10 @@ SEXP wk_spread_bollinger_bands_is_ready(SEXP e) { struct SpreadBollingerBands *h = (struct SpreadBollingerBands *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_spread_bollinger_bands_is_ready(h)); } +SEXP wk_spread_bollinger_bands_name(SEXP e) { + struct SpreadBollingerBands *h = (struct SpreadBollingerBands *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_spread_bollinger_bands_name(h)); +} SEXP wk_spread_bollinger_bands_reset(SEXP e) { struct SpreadBollingerBands *h = (struct SpreadBollingerBands *)R_ExternalPtrAddr(e); wickra_spread_bollinger_bands_reset(h); @@ -15254,6 +16786,10 @@ SEXP wk_spread_hurst_is_ready(SEXP e) { struct SpreadHurst *h = (struct SpreadHurst *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_spread_hurst_is_ready(h)); } +SEXP wk_spread_hurst_name(SEXP e) { + struct SpreadHurst *h = (struct SpreadHurst *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_spread_hurst_name(h)); +} SEXP wk_spread_hurst_reset(SEXP e) { struct SpreadHurst *h = (struct SpreadHurst *)R_ExternalPtrAddr(e); wickra_spread_hurst_reset(h); @@ -15295,6 +16831,10 @@ SEXP wk_stalled_pattern_is_ready(SEXP e) { struct StalledPattern *h = (struct StalledPattern *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_stalled_pattern_is_ready(h)); } +SEXP wk_stalled_pattern_name(SEXP e) { + struct StalledPattern *h = (struct StalledPattern *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_stalled_pattern_name(h)); +} SEXP wk_stalled_pattern_reset(SEXP e) { struct StalledPattern *h = (struct StalledPattern *)R_ExternalPtrAddr(e); wickra_stalled_pattern_reset(h); @@ -15334,6 +16874,10 @@ SEXP wk_standard_error_is_ready(SEXP e) { struct StandardError *h = (struct StandardError *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_standard_error_is_ready(h)); } +SEXP wk_standard_error_name(SEXP e) { + struct StandardError *h = (struct StandardError *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_standard_error_name(h)); +} SEXP wk_standard_error_reset(SEXP e) { struct StandardError *h = (struct StandardError *)R_ExternalPtrAddr(e); wickra_standard_error_reset(h); @@ -15377,6 +16921,10 @@ SEXP wk_standard_error_bands_is_ready(SEXP e) { struct StandardErrorBands *h = (struct StandardErrorBands *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_standard_error_bands_is_ready(h)); } +SEXP wk_standard_error_bands_name(SEXP e) { + struct StandardErrorBands *h = (struct StandardErrorBands *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_standard_error_bands_name(h)); +} SEXP wk_standard_error_bands_reset(SEXP e) { struct StandardErrorBands *h = (struct StandardErrorBands *)R_ExternalPtrAddr(e); wickra_standard_error_bands_reset(h); @@ -15420,6 +16968,10 @@ SEXP wk_starc_bands_is_ready(SEXP e) { struct StarcBands *h = (struct StarcBands *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_starc_bands_is_ready(h)); } +SEXP wk_starc_bands_name(SEXP e) { + struct StarcBands *h = (struct StarcBands *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_starc_bands_name(h)); +} SEXP wk_starc_bands_reset(SEXP e) { struct StarcBands *h = (struct StarcBands *)R_ExternalPtrAddr(e); wickra_starc_bands_reset(h); @@ -15459,6 +17011,10 @@ SEXP wk_stc_is_ready(SEXP e) { struct Stc *h = (struct Stc *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_stc_is_ready(h)); } +SEXP wk_stc_name(SEXP e) { + struct Stc *h = (struct Stc *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_stc_name(h)); +} SEXP wk_stc_reset(SEXP e) { struct Stc *h = (struct Stc *)R_ExternalPtrAddr(e); wickra_stc_reset(h); @@ -15498,6 +17054,10 @@ SEXP wk_std_dev_is_ready(SEXP e) { struct StdDev *h = (struct StdDev *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_std_dev_is_ready(h)); } +SEXP wk_std_dev_name(SEXP e) { + struct StdDev *h = (struct StdDev *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_std_dev_name(h)); +} SEXP wk_std_dev_reset(SEXP e) { struct StdDev *h = (struct StdDev *)R_ExternalPtrAddr(e); wickra_std_dev_reset(h); @@ -15537,6 +17097,10 @@ SEXP wk_step_trailing_stop_is_ready(SEXP e) { struct StepTrailingStop *h = (struct StepTrailingStop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_step_trailing_stop_is_ready(h)); } +SEXP wk_step_trailing_stop_name(SEXP e) { + struct StepTrailingStop *h = (struct StepTrailingStop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_step_trailing_stop_name(h)); +} SEXP wk_step_trailing_stop_reset(SEXP e) { struct StepTrailingStop *h = (struct StepTrailingStop *)R_ExternalPtrAddr(e); wickra_step_trailing_stop_reset(h); @@ -15576,6 +17140,10 @@ SEXP wk_sterling_ratio_is_ready(SEXP e) { struct SterlingRatio *h = (struct SterlingRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_sterling_ratio_is_ready(h)); } +SEXP wk_sterling_ratio_name(SEXP e) { + struct SterlingRatio *h = (struct SterlingRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_sterling_ratio_name(h)); +} SEXP wk_sterling_ratio_reset(SEXP e) { struct SterlingRatio *h = (struct SterlingRatio *)R_ExternalPtrAddr(e); wickra_sterling_ratio_reset(h); @@ -15617,6 +17185,10 @@ SEXP wk_stick_sandwich_is_ready(SEXP e) { struct StickSandwich *h = (struct StickSandwich *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_stick_sandwich_is_ready(h)); } +SEXP wk_stick_sandwich_name(SEXP e) { + struct StickSandwich *h = (struct StickSandwich *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_stick_sandwich_name(h)); +} SEXP wk_stick_sandwich_reset(SEXP e) { struct StickSandwich *h = (struct StickSandwich *)R_ExternalPtrAddr(e); wickra_stick_sandwich_reset(h); @@ -15656,6 +17228,10 @@ SEXP wk_stoch_rsi_is_ready(SEXP e) { struct StochRsi *h = (struct StochRsi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_stoch_rsi_is_ready(h)); } +SEXP wk_stoch_rsi_name(SEXP e) { + struct StochRsi *h = (struct StochRsi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_stoch_rsi_name(h)); +} SEXP wk_stoch_rsi_reset(SEXP e) { struct StochRsi *h = (struct StochRsi *)R_ExternalPtrAddr(e); wickra_stoch_rsi_reset(h); @@ -15697,6 +17273,10 @@ SEXP wk_stochastic_is_ready(SEXP e) { struct Stochastic *h = (struct Stochastic *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_stochastic_is_ready(h)); } +SEXP wk_stochastic_name(SEXP e) { + struct Stochastic *h = (struct Stochastic *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_stochastic_name(h)); +} SEXP wk_stochastic_reset(SEXP e) { struct Stochastic *h = (struct Stochastic *)R_ExternalPtrAddr(e); wickra_stochastic_reset(h); @@ -15738,6 +17318,10 @@ SEXP wk_stochastic_cci_is_ready(SEXP e) { struct StochasticCci *h = (struct StochasticCci *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_stochastic_cci_is_ready(h)); } +SEXP wk_stochastic_cci_name(SEXP e) { + struct StochasticCci *h = (struct StochasticCci *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_stochastic_cci_name(h)); +} SEXP wk_stochastic_cci_reset(SEXP e) { struct StochasticCci *h = (struct StochasticCci *)R_ExternalPtrAddr(e); wickra_stochastic_cci_reset(h); @@ -15777,6 +17361,10 @@ SEXP wk_super_smoother_is_ready(SEXP e) { struct SuperSmoother *h = (struct SuperSmoother *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_super_smoother_is_ready(h)); } +SEXP wk_super_smoother_name(SEXP e) { + struct SuperSmoother *h = (struct SuperSmoother *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_super_smoother_name(h)); +} SEXP wk_super_smoother_reset(SEXP e) { struct SuperSmoother *h = (struct SuperSmoother *)R_ExternalPtrAddr(e); wickra_super_smoother_reset(h); @@ -15818,6 +17406,10 @@ SEXP wk_super_trend_is_ready(SEXP e) { struct SuperTrend *h = (struct SuperTrend *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_super_trend_is_ready(h)); } +SEXP wk_super_trend_name(SEXP e) { + struct SuperTrend *h = (struct SuperTrend *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_super_trend_name(h)); +} SEXP wk_super_trend_reset(SEXP e) { struct SuperTrend *h = (struct SuperTrend *)R_ExternalPtrAddr(e); wickra_super_trend_reset(h); @@ -15857,6 +17449,10 @@ SEXP wk_t3_is_ready(SEXP e) { struct T3 *h = (struct T3 *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_t3_is_ready(h)); } +SEXP wk_t3_name(SEXP e) { + struct T3 *h = (struct T3 *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_t3_name(h)); +} SEXP wk_t3_reset(SEXP e) { struct T3 *h = (struct T3 *)R_ExternalPtrAddr(e); wickra_t3_reset(h); @@ -15896,6 +17492,10 @@ SEXP wk_tail_ratio_is_ready(SEXP e) { struct TailRatio *h = (struct TailRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tail_ratio_is_ready(h)); } +SEXP wk_tail_ratio_name(SEXP e) { + struct TailRatio *h = (struct TailRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tail_ratio_name(h)); +} SEXP wk_tail_ratio_reset(SEXP e) { struct TailRatio *h = (struct TailRatio *)R_ExternalPtrAddr(e); wickra_tail_ratio_reset(h); @@ -15927,6 +17527,10 @@ SEXP wk_taker_buy_sell_ratio_is_ready(SEXP e) { struct TakerBuySellRatio *h = (struct TakerBuySellRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_taker_buy_sell_ratio_is_ready(h)); } +SEXP wk_taker_buy_sell_ratio_name(SEXP e) { + struct TakerBuySellRatio *h = (struct TakerBuySellRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_taker_buy_sell_ratio_name(h)); +} SEXP wk_taker_buy_sell_ratio_reset(SEXP e) { struct TakerBuySellRatio *h = (struct TakerBuySellRatio *)R_ExternalPtrAddr(e); wickra_taker_buy_sell_ratio_reset(h); @@ -15968,6 +17572,10 @@ SEXP wk_takuri_is_ready(SEXP e) { struct Takuri *h = (struct Takuri *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_takuri_is_ready(h)); } +SEXP wk_takuri_name(SEXP e) { + struct Takuri *h = (struct Takuri *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_takuri_name(h)); +} SEXP wk_takuri_reset(SEXP e) { struct Takuri *h = (struct Takuri *)R_ExternalPtrAddr(e); wickra_takuri_reset(h); @@ -16009,6 +17617,10 @@ SEXP wk_tasuki_gap_is_ready(SEXP e) { struct TasukiGap *h = (struct TasukiGap *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tasuki_gap_is_ready(h)); } +SEXP wk_tasuki_gap_name(SEXP e) { + struct TasukiGap *h = (struct TasukiGap *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tasuki_gap_name(h)); +} SEXP wk_tasuki_gap_reset(SEXP e) { struct TasukiGap *h = (struct TasukiGap *)R_ExternalPtrAddr(e); wickra_tasuki_gap_reset(h); @@ -16050,6 +17662,10 @@ SEXP wk_td_camouflage_is_ready(SEXP e) { struct TdCamouflage *h = (struct TdCamouflage *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_camouflage_is_ready(h)); } +SEXP wk_td_camouflage_name(SEXP e) { + struct TdCamouflage *h = (struct TdCamouflage *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_camouflage_name(h)); +} SEXP wk_td_camouflage_reset(SEXP e) { struct TdCamouflage *h = (struct TdCamouflage *)R_ExternalPtrAddr(e); wickra_td_camouflage_reset(h); @@ -16091,6 +17707,10 @@ SEXP wk_td_clop_is_ready(SEXP e) { struct TdClop *h = (struct TdClop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_clop_is_ready(h)); } +SEXP wk_td_clop_name(SEXP e) { + struct TdClop *h = (struct TdClop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_clop_name(h)); +} SEXP wk_td_clop_reset(SEXP e) { struct TdClop *h = (struct TdClop *)R_ExternalPtrAddr(e); wickra_td_clop_reset(h); @@ -16132,6 +17752,10 @@ SEXP wk_td_clopwin_is_ready(SEXP e) { struct TdClopwin *h = (struct TdClopwin *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_clopwin_is_ready(h)); } +SEXP wk_td_clopwin_name(SEXP e) { + struct TdClopwin *h = (struct TdClopwin *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_clopwin_name(h)); +} SEXP wk_td_clopwin_reset(SEXP e) { struct TdClopwin *h = (struct TdClopwin *)R_ExternalPtrAddr(e); wickra_td_clopwin_reset(h); @@ -16173,6 +17797,10 @@ SEXP wk_td_combo_is_ready(SEXP e) { struct TdCombo *h = (struct TdCombo *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_combo_is_ready(h)); } +SEXP wk_td_combo_name(SEXP e) { + struct TdCombo *h = (struct TdCombo *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_combo_name(h)); +} SEXP wk_td_combo_reset(SEXP e) { struct TdCombo *h = (struct TdCombo *)R_ExternalPtrAddr(e); wickra_td_combo_reset(h); @@ -16214,6 +17842,10 @@ SEXP wk_td_countdown_is_ready(SEXP e) { struct TdCountdown *h = (struct TdCountdown *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_countdown_is_ready(h)); } +SEXP wk_td_countdown_name(SEXP e) { + struct TdCountdown *h = (struct TdCountdown *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_countdown_name(h)); +} SEXP wk_td_countdown_reset(SEXP e) { struct TdCountdown *h = (struct TdCountdown *)R_ExternalPtrAddr(e); wickra_td_countdown_reset(h); @@ -16255,6 +17887,10 @@ SEXP wk_td_d_wave_is_ready(SEXP e) { struct TdDWave *h = (struct TdDWave *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_d_wave_is_ready(h)); } +SEXP wk_td_d_wave_name(SEXP e) { + struct TdDWave *h = (struct TdDWave *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_d_wave_name(h)); +} SEXP wk_td_d_wave_reset(SEXP e) { struct TdDWave *h = (struct TdDWave *)R_ExternalPtrAddr(e); wickra_td_d_wave_reset(h); @@ -16296,6 +17932,10 @@ SEXP wk_td_de_marker_is_ready(SEXP e) { struct TdDeMarker *h = (struct TdDeMarker *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_de_marker_is_ready(h)); } +SEXP wk_td_de_marker_name(SEXP e) { + struct TdDeMarker *h = (struct TdDeMarker *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_de_marker_name(h)); +} SEXP wk_td_de_marker_reset(SEXP e) { struct TdDeMarker *h = (struct TdDeMarker *)R_ExternalPtrAddr(e); wickra_td_de_marker_reset(h); @@ -16337,6 +17977,10 @@ SEXP wk_td_differential_is_ready(SEXP e) { struct TdDifferential *h = (struct TdDifferential *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_differential_is_ready(h)); } +SEXP wk_td_differential_name(SEXP e) { + struct TdDifferential *h = (struct TdDifferential *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_differential_name(h)); +} SEXP wk_td_differential_reset(SEXP e) { struct TdDifferential *h = (struct TdDifferential *)R_ExternalPtrAddr(e); wickra_td_differential_reset(h); @@ -16378,6 +18022,10 @@ SEXP wk_td_lines_is_ready(SEXP e) { struct TdLines *h = (struct TdLines *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_lines_is_ready(h)); } +SEXP wk_td_lines_name(SEXP e) { + struct TdLines *h = (struct TdLines *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_lines_name(h)); +} SEXP wk_td_lines_reset(SEXP e) { struct TdLines *h = (struct TdLines *)R_ExternalPtrAddr(e); wickra_td_lines_reset(h); @@ -16419,6 +18067,10 @@ SEXP wk_td_moving_average_is_ready(SEXP e) { struct TdMovingAverage *h = (struct TdMovingAverage *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_moving_average_is_ready(h)); } +SEXP wk_td_moving_average_name(SEXP e) { + struct TdMovingAverage *h = (struct TdMovingAverage *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_moving_average_name(h)); +} SEXP wk_td_moving_average_reset(SEXP e) { struct TdMovingAverage *h = (struct TdMovingAverage *)R_ExternalPtrAddr(e); wickra_td_moving_average_reset(h); @@ -16460,6 +18112,10 @@ SEXP wk_td_open_is_ready(SEXP e) { struct TdOpen *h = (struct TdOpen *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_open_is_ready(h)); } +SEXP wk_td_open_name(SEXP e) { + struct TdOpen *h = (struct TdOpen *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_open_name(h)); +} SEXP wk_td_open_reset(SEXP e) { struct TdOpen *h = (struct TdOpen *)R_ExternalPtrAddr(e); wickra_td_open_reset(h); @@ -16501,6 +18157,10 @@ SEXP wk_td_pressure_is_ready(SEXP e) { struct TdPressure *h = (struct TdPressure *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_pressure_is_ready(h)); } +SEXP wk_td_pressure_name(SEXP e) { + struct TdPressure *h = (struct TdPressure *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_pressure_name(h)); +} SEXP wk_td_pressure_reset(SEXP e) { struct TdPressure *h = (struct TdPressure *)R_ExternalPtrAddr(e); wickra_td_pressure_reset(h); @@ -16542,6 +18202,10 @@ SEXP wk_td_propulsion_is_ready(SEXP e) { struct TdPropulsion *h = (struct TdPropulsion *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_propulsion_is_ready(h)); } +SEXP wk_td_propulsion_name(SEXP e) { + struct TdPropulsion *h = (struct TdPropulsion *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_propulsion_name(h)); +} SEXP wk_td_propulsion_reset(SEXP e) { struct TdPropulsion *h = (struct TdPropulsion *)R_ExternalPtrAddr(e); wickra_td_propulsion_reset(h); @@ -16583,6 +18247,10 @@ SEXP wk_td_range_projection_is_ready(SEXP e) { struct TdRangeProjection *h = (struct TdRangeProjection *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_range_projection_is_ready(h)); } +SEXP wk_td_range_projection_name(SEXP e) { + struct TdRangeProjection *h = (struct TdRangeProjection *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_range_projection_name(h)); +} SEXP wk_td_range_projection_reset(SEXP e) { struct TdRangeProjection *h = (struct TdRangeProjection *)R_ExternalPtrAddr(e); wickra_td_range_projection_reset(h); @@ -16624,6 +18292,10 @@ SEXP wk_td_rei_is_ready(SEXP e) { struct TdRei *h = (struct TdRei *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_rei_is_ready(h)); } +SEXP wk_td_rei_name(SEXP e) { + struct TdRei *h = (struct TdRei *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_rei_name(h)); +} SEXP wk_td_rei_reset(SEXP e) { struct TdRei *h = (struct TdRei *)R_ExternalPtrAddr(e); wickra_td_rei_reset(h); @@ -16665,6 +18337,10 @@ SEXP wk_td_risk_level_is_ready(SEXP e) { struct TdRiskLevel *h = (struct TdRiskLevel *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_risk_level_is_ready(h)); } +SEXP wk_td_risk_level_name(SEXP e) { + struct TdRiskLevel *h = (struct TdRiskLevel *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_risk_level_name(h)); +} SEXP wk_td_risk_level_reset(SEXP e) { struct TdRiskLevel *h = (struct TdRiskLevel *)R_ExternalPtrAddr(e); wickra_td_risk_level_reset(h); @@ -16708,6 +18384,10 @@ SEXP wk_td_sequential_is_ready(SEXP e) { struct TdSequential *h = (struct TdSequential *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_sequential_is_ready(h)); } +SEXP wk_td_sequential_name(SEXP e) { + struct TdSequential *h = (struct TdSequential *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_sequential_name(h)); +} SEXP wk_td_sequential_reset(SEXP e) { struct TdSequential *h = (struct TdSequential *)R_ExternalPtrAddr(e); wickra_td_sequential_reset(h); @@ -16749,6 +18429,10 @@ SEXP wk_td_setup_is_ready(SEXP e) { struct TdSetup *h = (struct TdSetup *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_setup_is_ready(h)); } +SEXP wk_td_setup_name(SEXP e) { + struct TdSetup *h = (struct TdSetup *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_setup_name(h)); +} SEXP wk_td_setup_reset(SEXP e) { struct TdSetup *h = (struct TdSetup *)R_ExternalPtrAddr(e); wickra_td_setup_reset(h); @@ -16790,6 +18474,10 @@ SEXP wk_td_trap_is_ready(SEXP e) { struct TdTrap *h = (struct TdTrap *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_td_trap_is_ready(h)); } +SEXP wk_td_trap_name(SEXP e) { + struct TdTrap *h = (struct TdTrap *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_td_trap_name(h)); +} SEXP wk_td_trap_reset(SEXP e) { struct TdTrap *h = (struct TdTrap *)R_ExternalPtrAddr(e); wickra_td_trap_reset(h); @@ -16829,6 +18517,10 @@ SEXP wk_tema_is_ready(SEXP e) { struct Tema *h = (struct Tema *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tema_is_ready(h)); } +SEXP wk_tema_name(SEXP e) { + struct Tema *h = (struct Tema *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tema_name(h)); +} SEXP wk_tema_reset(SEXP e) { struct Tema *h = (struct Tema *)R_ExternalPtrAddr(e); wickra_tema_reset(h); @@ -16860,6 +18552,10 @@ SEXP wk_term_structure_basis_is_ready(SEXP e) { struct TermStructureBasis *h = (struct TermStructureBasis *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_term_structure_basis_is_ready(h)); } +SEXP wk_term_structure_basis_name(SEXP e) { + struct TermStructureBasis *h = (struct TermStructureBasis *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_term_structure_basis_name(h)); +} SEXP wk_term_structure_basis_reset(SEXP e) { struct TermStructureBasis *h = (struct TermStructureBasis *)R_ExternalPtrAddr(e); wickra_term_structure_basis_reset(h); @@ -16901,6 +18597,10 @@ SEXP wk_three_drives_is_ready(SEXP e) { struct ThreeDrives *h = (struct ThreeDrives *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_three_drives_is_ready(h)); } +SEXP wk_three_drives_name(SEXP e) { + struct ThreeDrives *h = (struct ThreeDrives *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_three_drives_name(h)); +} SEXP wk_three_drives_reset(SEXP e) { struct ThreeDrives *h = (struct ThreeDrives *)R_ExternalPtrAddr(e); wickra_three_drives_reset(h); @@ -16942,6 +18642,10 @@ SEXP wk_three_inside_is_ready(SEXP e) { struct ThreeInside *h = (struct ThreeInside *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_three_inside_is_ready(h)); } +SEXP wk_three_inside_name(SEXP e) { + struct ThreeInside *h = (struct ThreeInside *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_three_inside_name(h)); +} SEXP wk_three_inside_reset(SEXP e) { struct ThreeInside *h = (struct ThreeInside *)R_ExternalPtrAddr(e); wickra_three_inside_reset(h); @@ -16983,6 +18687,10 @@ SEXP wk_three_line_break_is_ready(SEXP e) { struct ThreeLineBreak *h = (struct ThreeLineBreak *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_three_line_break_is_ready(h)); } +SEXP wk_three_line_break_name(SEXP e) { + struct ThreeLineBreak *h = (struct ThreeLineBreak *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_three_line_break_name(h)); +} SEXP wk_three_line_break_reset(SEXP e) { struct ThreeLineBreak *h = (struct ThreeLineBreak *)R_ExternalPtrAddr(e); wickra_three_line_break_reset(h); @@ -17022,6 +18730,10 @@ SEXP wk_three_line_break_bars_update(SEXP e, SEXP a0, SEXP a1, SEXP a2, SEXP a3, UNPROTECT(3); return r; } +SEXP wk_three_line_break_bars_name(SEXP e) { + struct ThreeLineBreakBars *h = (struct ThreeLineBreakBars *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_three_line_break_bars_name(h)); +} SEXP wk_three_line_break_bars_reset(SEXP e) { struct ThreeLineBreakBars *h = (struct ThreeLineBreakBars *)R_ExternalPtrAddr(e); wickra_three_line_break_bars_reset(h); @@ -17063,6 +18775,10 @@ SEXP wk_three_line_strike_is_ready(SEXP e) { struct ThreeLineStrike *h = (struct ThreeLineStrike *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_three_line_strike_is_ready(h)); } +SEXP wk_three_line_strike_name(SEXP e) { + struct ThreeLineStrike *h = (struct ThreeLineStrike *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_three_line_strike_name(h)); +} SEXP wk_three_line_strike_reset(SEXP e) { struct ThreeLineStrike *h = (struct ThreeLineStrike *)R_ExternalPtrAddr(e); wickra_three_line_strike_reset(h); @@ -17104,6 +18820,10 @@ SEXP wk_three_outside_is_ready(SEXP e) { struct ThreeOutside *h = (struct ThreeOutside *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_three_outside_is_ready(h)); } +SEXP wk_three_outside_name(SEXP e) { + struct ThreeOutside *h = (struct ThreeOutside *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_three_outside_name(h)); +} SEXP wk_three_outside_reset(SEXP e) { struct ThreeOutside *h = (struct ThreeOutside *)R_ExternalPtrAddr(e); wickra_three_outside_reset(h); @@ -17145,6 +18865,10 @@ SEXP wk_three_soldiers_or_crows_is_ready(SEXP e) { struct ThreeSoldiersOrCrows *h = (struct ThreeSoldiersOrCrows *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_three_soldiers_or_crows_is_ready(h)); } +SEXP wk_three_soldiers_or_crows_name(SEXP e) { + struct ThreeSoldiersOrCrows *h = (struct ThreeSoldiersOrCrows *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_three_soldiers_or_crows_name(h)); +} SEXP wk_three_soldiers_or_crows_reset(SEXP e) { struct ThreeSoldiersOrCrows *h = (struct ThreeSoldiersOrCrows *)R_ExternalPtrAddr(e); wickra_three_soldiers_or_crows_reset(h); @@ -17186,6 +18910,10 @@ SEXP wk_three_stars_in_south_is_ready(SEXP e) { struct ThreeStarsInSouth *h = (struct ThreeStarsInSouth *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_three_stars_in_south_is_ready(h)); } +SEXP wk_three_stars_in_south_name(SEXP e) { + struct ThreeStarsInSouth *h = (struct ThreeStarsInSouth *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_three_stars_in_south_name(h)); +} SEXP wk_three_stars_in_south_reset(SEXP e) { struct ThreeStarsInSouth *h = (struct ThreeStarsInSouth *)R_ExternalPtrAddr(e); wickra_three_stars_in_south_reset(h); @@ -17227,6 +18955,10 @@ SEXP wk_thrusting_is_ready(SEXP e) { struct Thrusting *h = (struct Thrusting *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_thrusting_is_ready(h)); } +SEXP wk_thrusting_name(SEXP e) { + struct Thrusting *h = (struct Thrusting *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_thrusting_name(h)); +} SEXP wk_thrusting_reset(SEXP e) { struct Thrusting *h = (struct Thrusting *)R_ExternalPtrAddr(e); wickra_thrusting_reset(h); @@ -17270,6 +19002,10 @@ SEXP wk_tick_bars_update(SEXP e, SEXP a0, SEXP a1, SEXP a2, SEXP a3, SEXP a4, SE UNPROTECT(3); return r; } +SEXP wk_tick_bars_name(SEXP e) { + struct TickBars *h = (struct TickBars *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tick_bars_name(h)); +} SEXP wk_tick_bars_reset(SEXP e) { struct TickBars *h = (struct TickBars *)R_ExternalPtrAddr(e); wickra_tick_bars_reset(h); @@ -17301,6 +19037,10 @@ SEXP wk_tick_index_is_ready(SEXP e) { struct TickIndex *h = (struct TickIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tick_index_is_ready(h)); } +SEXP wk_tick_index_name(SEXP e) { + struct TickIndex *h = (struct TickIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tick_index_name(h)); +} SEXP wk_tick_index_reset(SEXP e) { struct TickIndex *h = (struct TickIndex *)R_ExternalPtrAddr(e); wickra_tick_index_reset(h); @@ -17340,6 +19080,10 @@ SEXP wk_tii_is_ready(SEXP e) { struct Tii *h = (struct Tii *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tii_is_ready(h)); } +SEXP wk_tii_name(SEXP e) { + struct Tii *h = (struct Tii *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tii_name(h)); +} SEXP wk_tii_reset(SEXP e) { struct Tii *h = (struct Tii *)R_ExternalPtrAddr(e); wickra_tii_reset(h); @@ -17381,6 +19125,10 @@ SEXP wk_time_based_stop_is_ready(SEXP e) { struct TimeBasedStop *h = (struct TimeBasedStop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_time_based_stop_is_ready(h)); } +SEXP wk_time_based_stop_name(SEXP e) { + struct TimeBasedStop *h = (struct TimeBasedStop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_time_based_stop_name(h)); +} SEXP wk_time_based_stop_reset(SEXP e) { struct TimeBasedStop *h = (struct TimeBasedStop *)R_ExternalPtrAddr(e); wickra_time_based_stop_reset(h); @@ -17419,6 +19167,10 @@ SEXP wk_time_of_day_return_profile_is_ready(SEXP e) { struct TimeOfDayReturnProfile *h = (struct TimeOfDayReturnProfile *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_time_of_day_return_profile_is_ready(h)); } +SEXP wk_time_of_day_return_profile_name(SEXP e) { + struct TimeOfDayReturnProfile *h = (struct TimeOfDayReturnProfile *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_time_of_day_return_profile_name(h)); +} SEXP wk_time_of_day_return_profile_reset(SEXP e) { struct TimeOfDayReturnProfile *h = (struct TimeOfDayReturnProfile *)R_ExternalPtrAddr(e); wickra_time_of_day_return_profile_reset(h); @@ -17460,6 +19212,10 @@ SEXP wk_tower_top_bottom_is_ready(SEXP e) { struct TowerTopBottom *h = (struct TowerTopBottom *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tower_top_bottom_is_ready(h)); } +SEXP wk_tower_top_bottom_name(SEXP e) { + struct TowerTopBottom *h = (struct TowerTopBottom *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tower_top_bottom_name(h)); +} SEXP wk_tower_top_bottom_reset(SEXP e) { struct TowerTopBottom *h = (struct TowerTopBottom *)R_ExternalPtrAddr(e); wickra_tower_top_bottom_reset(h); @@ -17508,6 +19264,10 @@ SEXP wk_tpo_profile_is_ready(SEXP e) { struct TpoProfile *h = (struct TpoProfile *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tpo_profile_is_ready(h)); } +SEXP wk_tpo_profile_name(SEXP e) { + struct TpoProfile *h = (struct TpoProfile *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tpo_profile_name(h)); +} SEXP wk_tpo_profile_reset(SEXP e) { struct TpoProfile *h = (struct TpoProfile *)R_ExternalPtrAddr(e); wickra_tpo_profile_reset(h); @@ -17539,6 +19299,10 @@ SEXP wk_trade_imbalance_is_ready(SEXP e) { struct TradeImbalance *h = (struct TradeImbalance *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_trade_imbalance_is_ready(h)); } +SEXP wk_trade_imbalance_name(SEXP e) { + struct TradeImbalance *h = (struct TradeImbalance *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_trade_imbalance_name(h)); +} SEXP wk_trade_imbalance_reset(SEXP e) { struct TradeImbalance *h = (struct TradeImbalance *)R_ExternalPtrAddr(e); wickra_trade_imbalance_reset(h); @@ -17570,6 +19334,10 @@ SEXP wk_trade_sign_autocorrelation_is_ready(SEXP e) { struct TradeSignAutocorrelation *h = (struct TradeSignAutocorrelation *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_trade_sign_autocorrelation_is_ready(h)); } +SEXP wk_trade_sign_autocorrelation_name(SEXP e) { + struct TradeSignAutocorrelation *h = (struct TradeSignAutocorrelation *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_trade_sign_autocorrelation_name(h)); +} SEXP wk_trade_sign_autocorrelation_reset(SEXP e) { struct TradeSignAutocorrelation *h = (struct TradeSignAutocorrelation *)R_ExternalPtrAddr(e); wickra_trade_sign_autocorrelation_reset(h); @@ -17611,6 +19379,10 @@ SEXP wk_trade_volume_index_is_ready(SEXP e) { struct TradeVolumeIndex *h = (struct TradeVolumeIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_trade_volume_index_is_ready(h)); } +SEXP wk_trade_volume_index_name(SEXP e) { + struct TradeVolumeIndex *h = (struct TradeVolumeIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_trade_volume_index_name(h)); +} SEXP wk_trade_volume_index_reset(SEXP e) { struct TradeVolumeIndex *h = (struct TradeVolumeIndex *)R_ExternalPtrAddr(e); wickra_trade_volume_index_reset(h); @@ -17650,6 +19422,10 @@ SEXP wk_trend_label_is_ready(SEXP e) { struct TrendLabel *h = (struct TrendLabel *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_trend_label_is_ready(h)); } +SEXP wk_trend_label_name(SEXP e) { + struct TrendLabel *h = (struct TrendLabel *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_trend_label_name(h)); +} SEXP wk_trend_label_reset(SEXP e) { struct TrendLabel *h = (struct TrendLabel *)R_ExternalPtrAddr(e); wickra_trend_label_reset(h); @@ -17689,6 +19465,10 @@ SEXP wk_trend_strength_index_is_ready(SEXP e) { struct TrendStrengthIndex *h = (struct TrendStrengthIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_trend_strength_index_is_ready(h)); } +SEXP wk_trend_strength_index_name(SEXP e) { + struct TrendStrengthIndex *h = (struct TrendStrengthIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_trend_strength_index_name(h)); +} SEXP wk_trend_strength_index_reset(SEXP e) { struct TrendStrengthIndex *h = (struct TrendStrengthIndex *)R_ExternalPtrAddr(e); wickra_trend_strength_index_reset(h); @@ -17728,6 +19508,10 @@ SEXP wk_trendflex_is_ready(SEXP e) { struct Trendflex *h = (struct Trendflex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_trendflex_is_ready(h)); } +SEXP wk_trendflex_name(SEXP e) { + struct Trendflex *h = (struct Trendflex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_trendflex_name(h)); +} SEXP wk_trendflex_reset(SEXP e) { struct Trendflex *h = (struct Trendflex *)R_ExternalPtrAddr(e); wickra_trendflex_reset(h); @@ -17767,6 +19551,10 @@ SEXP wk_treynor_ratio_is_ready(SEXP e) { struct TreynorRatio *h = (struct TreynorRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_treynor_ratio_is_ready(h)); } +SEXP wk_treynor_ratio_name(SEXP e) { + struct TreynorRatio *h = (struct TreynorRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_treynor_ratio_name(h)); +} SEXP wk_treynor_ratio_reset(SEXP e) { struct TreynorRatio *h = (struct TreynorRatio *)R_ExternalPtrAddr(e); wickra_treynor_ratio_reset(h); @@ -17808,6 +19596,10 @@ SEXP wk_triangle_is_ready(SEXP e) { struct Triangle *h = (struct Triangle *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_triangle_is_ready(h)); } +SEXP wk_triangle_name(SEXP e) { + struct Triangle *h = (struct Triangle *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_triangle_name(h)); +} SEXP wk_triangle_reset(SEXP e) { struct Triangle *h = (struct Triangle *)R_ExternalPtrAddr(e); wickra_triangle_reset(h); @@ -17847,6 +19639,10 @@ SEXP wk_trima_is_ready(SEXP e) { struct Trima *h = (struct Trima *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_trima_is_ready(h)); } +SEXP wk_trima_name(SEXP e) { + struct Trima *h = (struct Trima *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_trima_name(h)); +} SEXP wk_trima_reset(SEXP e) { struct Trima *h = (struct Trima *)R_ExternalPtrAddr(e); wickra_trima_reset(h); @@ -17878,6 +19674,10 @@ SEXP wk_trin_is_ready(SEXP e) { struct Trin *h = (struct Trin *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_trin_is_ready(h)); } +SEXP wk_trin_name(SEXP e) { + struct Trin *h = (struct Trin *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_trin_name(h)); +} SEXP wk_trin_reset(SEXP e) { struct Trin *h = (struct Trin *)R_ExternalPtrAddr(e); wickra_trin_reset(h); @@ -17919,6 +19719,10 @@ SEXP wk_triple_top_bottom_is_ready(SEXP e) { struct TripleTopBottom *h = (struct TripleTopBottom *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_triple_top_bottom_is_ready(h)); } +SEXP wk_triple_top_bottom_name(SEXP e) { + struct TripleTopBottom *h = (struct TripleTopBottom *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_triple_top_bottom_name(h)); +} SEXP wk_triple_top_bottom_reset(SEXP e) { struct TripleTopBottom *h = (struct TripleTopBottom *)R_ExternalPtrAddr(e); wickra_triple_top_bottom_reset(h); @@ -17960,6 +19764,10 @@ SEXP wk_tristar_is_ready(SEXP e) { struct Tristar *h = (struct Tristar *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tristar_is_ready(h)); } +SEXP wk_tristar_name(SEXP e) { + struct Tristar *h = (struct Tristar *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tristar_name(h)); +} SEXP wk_tristar_reset(SEXP e) { struct Tristar *h = (struct Tristar *)R_ExternalPtrAddr(e); wickra_tristar_reset(h); @@ -17999,6 +19807,10 @@ SEXP wk_trix_is_ready(SEXP e) { struct Trix *h = (struct Trix *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_trix_is_ready(h)); } +SEXP wk_trix_name(SEXP e) { + struct Trix *h = (struct Trix *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_trix_name(h)); +} SEXP wk_trix_reset(SEXP e) { struct Trix *h = (struct Trix *)R_ExternalPtrAddr(e); wickra_trix_reset(h); @@ -18040,6 +19852,10 @@ SEXP wk_true_range_is_ready(SEXP e) { struct TrueRange *h = (struct TrueRange *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_true_range_is_ready(h)); } +SEXP wk_true_range_name(SEXP e) { + struct TrueRange *h = (struct TrueRange *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_true_range_name(h)); +} SEXP wk_true_range_reset(SEXP e) { struct TrueRange *h = (struct TrueRange *)R_ExternalPtrAddr(e); wickra_true_range_reset(h); @@ -18079,6 +19895,10 @@ SEXP wk_tsf_is_ready(SEXP e) { struct Tsf *h = (struct Tsf *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tsf_is_ready(h)); } +SEXP wk_tsf_name(SEXP e) { + struct Tsf *h = (struct Tsf *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tsf_name(h)); +} SEXP wk_tsf_reset(SEXP e) { struct Tsf *h = (struct Tsf *)R_ExternalPtrAddr(e); wickra_tsf_reset(h); @@ -18118,6 +19938,10 @@ SEXP wk_tsf_oscillator_is_ready(SEXP e) { struct TsfOscillator *h = (struct TsfOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tsf_oscillator_is_ready(h)); } +SEXP wk_tsf_oscillator_name(SEXP e) { + struct TsfOscillator *h = (struct TsfOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tsf_oscillator_name(h)); +} SEXP wk_tsf_oscillator_reset(SEXP e) { struct TsfOscillator *h = (struct TsfOscillator *)R_ExternalPtrAddr(e); wickra_tsf_oscillator_reset(h); @@ -18157,6 +19981,10 @@ SEXP wk_tsi_is_ready(SEXP e) { struct Tsi *h = (struct Tsi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tsi_is_ready(h)); } +SEXP wk_tsi_name(SEXP e) { + struct Tsi *h = (struct Tsi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tsi_name(h)); +} SEXP wk_tsi_reset(SEXP e) { struct Tsi *h = (struct Tsi *)R_ExternalPtrAddr(e); wickra_tsi_reset(h); @@ -18198,6 +20026,10 @@ SEXP wk_tsv_is_ready(SEXP e) { struct Tsv *h = (struct Tsv *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tsv_is_ready(h)); } +SEXP wk_tsv_name(SEXP e) { + struct Tsv *h = (struct Tsv *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tsv_name(h)); +} SEXP wk_tsv_reset(SEXP e) { struct Tsv *h = (struct Tsv *)R_ExternalPtrAddr(e); wickra_tsv_reset(h); @@ -18239,6 +20071,10 @@ SEXP wk_ttm_squeeze_is_ready(SEXP e) { struct TtmSqueeze *h = (struct TtmSqueeze *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ttm_squeeze_is_ready(h)); } +SEXP wk_ttm_squeeze_name(SEXP e) { + struct TtmSqueeze *h = (struct TtmSqueeze *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ttm_squeeze_name(h)); +} SEXP wk_ttm_squeeze_reset(SEXP e) { struct TtmSqueeze *h = (struct TtmSqueeze *)R_ExternalPtrAddr(e); wickra_ttm_squeeze_reset(h); @@ -18280,6 +20116,10 @@ SEXP wk_ttm_trend_is_ready(SEXP e) { struct TtmTrend *h = (struct TtmTrend *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ttm_trend_is_ready(h)); } +SEXP wk_ttm_trend_name(SEXP e) { + struct TtmTrend *h = (struct TtmTrend *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ttm_trend_name(h)); +} SEXP wk_ttm_trend_reset(SEXP e) { struct TtmTrend *h = (struct TtmTrend *)R_ExternalPtrAddr(e); wickra_ttm_trend_reset(h); @@ -18321,6 +20161,10 @@ SEXP wk_turn_of_month_is_ready(SEXP e) { struct TurnOfMonth *h = (struct TurnOfMonth *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_turn_of_month_is_ready(h)); } +SEXP wk_turn_of_month_name(SEXP e) { + struct TurnOfMonth *h = (struct TurnOfMonth *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_turn_of_month_name(h)); +} SEXP wk_turn_of_month_reset(SEXP e) { struct TurnOfMonth *h = (struct TurnOfMonth *)R_ExternalPtrAddr(e); wickra_turn_of_month_reset(h); @@ -18362,6 +20206,10 @@ SEXP wk_tweezer_is_ready(SEXP e) { struct Tweezer *h = (struct Tweezer *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_tweezer_is_ready(h)); } +SEXP wk_tweezer_name(SEXP e) { + struct Tweezer *h = (struct Tweezer *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_tweezer_name(h)); +} SEXP wk_tweezer_reset(SEXP e) { struct Tweezer *h = (struct Tweezer *)R_ExternalPtrAddr(e); wickra_tweezer_reset(h); @@ -18403,6 +20251,10 @@ SEXP wk_twiggs_money_flow_is_ready(SEXP e) { struct TwiggsMoneyFlow *h = (struct TwiggsMoneyFlow *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_twiggs_money_flow_is_ready(h)); } +SEXP wk_twiggs_money_flow_name(SEXP e) { + struct TwiggsMoneyFlow *h = (struct TwiggsMoneyFlow *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_twiggs_money_flow_name(h)); +} SEXP wk_twiggs_money_flow_reset(SEXP e) { struct TwiggsMoneyFlow *h = (struct TwiggsMoneyFlow *)R_ExternalPtrAddr(e); wickra_twiggs_money_flow_reset(h); @@ -18444,6 +20296,10 @@ SEXP wk_two_crows_is_ready(SEXP e) { struct TwoCrows *h = (struct TwoCrows *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_two_crows_is_ready(h)); } +SEXP wk_two_crows_name(SEXP e) { + struct TwoCrows *h = (struct TwoCrows *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_two_crows_name(h)); +} SEXP wk_two_crows_reset(SEXP e) { struct TwoCrows *h = (struct TwoCrows *)R_ExternalPtrAddr(e); wickra_two_crows_reset(h); @@ -18485,6 +20341,10 @@ SEXP wk_typical_price_is_ready(SEXP e) { struct TypicalPrice *h = (struct TypicalPrice *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_typical_price_is_ready(h)); } +SEXP wk_typical_price_name(SEXP e) { + struct TypicalPrice *h = (struct TypicalPrice *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_typical_price_name(h)); +} SEXP wk_typical_price_reset(SEXP e) { struct TypicalPrice *h = (struct TypicalPrice *)R_ExternalPtrAddr(e); wickra_typical_price_reset(h); @@ -18524,6 +20384,10 @@ SEXP wk_ulcer_index_is_ready(SEXP e) { struct UlcerIndex *h = (struct UlcerIndex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ulcer_index_is_ready(h)); } +SEXP wk_ulcer_index_name(SEXP e) { + struct UlcerIndex *h = (struct UlcerIndex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ulcer_index_name(h)); +} SEXP wk_ulcer_index_reset(SEXP e) { struct UlcerIndex *h = (struct UlcerIndex *)R_ExternalPtrAddr(e); wickra_ulcer_index_reset(h); @@ -18565,6 +20429,10 @@ SEXP wk_ultimate_oscillator_is_ready(SEXP e) { struct UltimateOscillator *h = (struct UltimateOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_ultimate_oscillator_is_ready(h)); } +SEXP wk_ultimate_oscillator_name(SEXP e) { + struct UltimateOscillator *h = (struct UltimateOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_ultimate_oscillator_name(h)); +} SEXP wk_ultimate_oscillator_reset(SEXP e) { struct UltimateOscillator *h = (struct UltimateOscillator *)R_ExternalPtrAddr(e); wickra_ultimate_oscillator_reset(h); @@ -18606,6 +20474,10 @@ SEXP wk_unique_three_river_is_ready(SEXP e) { struct UniqueThreeRiver *h = (struct UniqueThreeRiver *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_unique_three_river_is_ready(h)); } +SEXP wk_unique_three_river_name(SEXP e) { + struct UniqueThreeRiver *h = (struct UniqueThreeRiver *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_unique_three_river_name(h)); +} SEXP wk_unique_three_river_reset(SEXP e) { struct UniqueThreeRiver *h = (struct UniqueThreeRiver *)R_ExternalPtrAddr(e); wickra_unique_three_river_reset(h); @@ -18645,6 +20517,10 @@ SEXP wk_universal_oscillator_is_ready(SEXP e) { struct UniversalOscillator *h = (struct UniversalOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_universal_oscillator_is_ready(h)); } +SEXP wk_universal_oscillator_name(SEXP e) { + struct UniversalOscillator *h = (struct UniversalOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_universal_oscillator_name(h)); +} SEXP wk_universal_oscillator_reset(SEXP e) { struct UniversalOscillator *h = (struct UniversalOscillator *)R_ExternalPtrAddr(e); wickra_universal_oscillator_reset(h); @@ -18676,6 +20552,10 @@ SEXP wk_up_down_volume_ratio_is_ready(SEXP e) { struct UpDownVolumeRatio *h = (struct UpDownVolumeRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_up_down_volume_ratio_is_ready(h)); } +SEXP wk_up_down_volume_ratio_name(SEXP e) { + struct UpDownVolumeRatio *h = (struct UpDownVolumeRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_up_down_volume_ratio_name(h)); +} SEXP wk_up_down_volume_ratio_reset(SEXP e) { struct UpDownVolumeRatio *h = (struct UpDownVolumeRatio *)R_ExternalPtrAddr(e); wickra_up_down_volume_ratio_reset(h); @@ -18717,6 +20597,10 @@ SEXP wk_upside_gap_three_methods_is_ready(SEXP e) { struct UpsideGapThreeMethods *h = (struct UpsideGapThreeMethods *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_upside_gap_three_methods_is_ready(h)); } +SEXP wk_upside_gap_three_methods_name(SEXP e) { + struct UpsideGapThreeMethods *h = (struct UpsideGapThreeMethods *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_upside_gap_three_methods_name(h)); +} SEXP wk_upside_gap_three_methods_reset(SEXP e) { struct UpsideGapThreeMethods *h = (struct UpsideGapThreeMethods *)R_ExternalPtrAddr(e); wickra_upside_gap_three_methods_reset(h); @@ -18758,6 +20642,10 @@ SEXP wk_upside_gap_two_crows_is_ready(SEXP e) { struct UpsideGapTwoCrows *h = (struct UpsideGapTwoCrows *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_upside_gap_two_crows_is_ready(h)); } +SEXP wk_upside_gap_two_crows_name(SEXP e) { + struct UpsideGapTwoCrows *h = (struct UpsideGapTwoCrows *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_upside_gap_two_crows_name(h)); +} SEXP wk_upside_gap_two_crows_reset(SEXP e) { struct UpsideGapTwoCrows *h = (struct UpsideGapTwoCrows *)R_ExternalPtrAddr(e); wickra_upside_gap_two_crows_reset(h); @@ -18797,6 +20685,10 @@ SEXP wk_upside_potential_ratio_is_ready(SEXP e) { struct UpsidePotentialRatio *h = (struct UpsidePotentialRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_upside_potential_ratio_is_ready(h)); } +SEXP wk_upside_potential_ratio_name(SEXP e) { + struct UpsidePotentialRatio *h = (struct UpsidePotentialRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_upside_potential_ratio_name(h)); +} SEXP wk_upside_potential_ratio_reset(SEXP e) { struct UpsidePotentialRatio *h = (struct UpsidePotentialRatio *)R_ExternalPtrAddr(e); wickra_upside_potential_ratio_reset(h); @@ -18840,6 +20732,10 @@ SEXP wk_value_area_is_ready(SEXP e) { struct ValueArea *h = (struct ValueArea *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_value_area_is_ready(h)); } +SEXP wk_value_area_name(SEXP e) { + struct ValueArea *h = (struct ValueArea *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_value_area_name(h)); +} SEXP wk_value_area_reset(SEXP e) { struct ValueArea *h = (struct ValueArea *)R_ExternalPtrAddr(e); wickra_value_area_reset(h); @@ -18879,6 +20775,10 @@ SEXP wk_value_at_risk_is_ready(SEXP e) { struct ValueAtRisk *h = (struct ValueAtRisk *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_value_at_risk_is_ready(h)); } +SEXP wk_value_at_risk_name(SEXP e) { + struct ValueAtRisk *h = (struct ValueAtRisk *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_value_at_risk_name(h)); +} SEXP wk_value_at_risk_reset(SEXP e) { struct ValueAtRisk *h = (struct ValueAtRisk *)R_ExternalPtrAddr(e); wickra_value_at_risk_reset(h); @@ -18918,6 +20818,10 @@ SEXP wk_variance_is_ready(SEXP e) { struct Variance *h = (struct Variance *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_variance_is_ready(h)); } +SEXP wk_variance_name(SEXP e) { + struct Variance *h = (struct Variance *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_variance_name(h)); +} SEXP wk_variance_reset(SEXP e) { struct Variance *h = (struct Variance *)R_ExternalPtrAddr(e); wickra_variance_reset(h); @@ -18957,6 +20861,10 @@ SEXP wk_variance_ratio_is_ready(SEXP e) { struct VarianceRatio *h = (struct VarianceRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_variance_ratio_is_ready(h)); } +SEXP wk_variance_ratio_name(SEXP e) { + struct VarianceRatio *h = (struct VarianceRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_variance_ratio_name(h)); +} SEXP wk_variance_ratio_reset(SEXP e) { struct VarianceRatio *h = (struct VarianceRatio *)R_ExternalPtrAddr(e); wickra_variance_ratio_reset(h); @@ -18996,6 +20904,10 @@ SEXP wk_vertical_horizontal_filter_is_ready(SEXP e) { struct VerticalHorizontalFilter *h = (struct VerticalHorizontalFilter *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_vertical_horizontal_filter_is_ready(h)); } +SEXP wk_vertical_horizontal_filter_name(SEXP e) { + struct VerticalHorizontalFilter *h = (struct VerticalHorizontalFilter *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_vertical_horizontal_filter_name(h)); +} SEXP wk_vertical_horizontal_filter_reset(SEXP e) { struct VerticalHorizontalFilter *h = (struct VerticalHorizontalFilter *)R_ExternalPtrAddr(e); wickra_vertical_horizontal_filter_reset(h); @@ -19035,6 +20947,10 @@ SEXP wk_vidya_is_ready(SEXP e) { struct Vidya *h = (struct Vidya *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_vidya_is_ready(h)); } +SEXP wk_vidya_name(SEXP e) { + struct Vidya *h = (struct Vidya *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_vidya_name(h)); +} SEXP wk_vidya_reset(SEXP e) { struct Vidya *h = (struct Vidya *)R_ExternalPtrAddr(e); wickra_vidya_reset(h); @@ -19082,6 +20998,10 @@ SEXP wk_volatility_cone_is_ready(SEXP e) { struct VolatilityCone *h = (struct VolatilityCone *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_volatility_cone_is_ready(h)); } +SEXP wk_volatility_cone_name(SEXP e) { + struct VolatilityCone *h = (struct VolatilityCone *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_volatility_cone_name(h)); +} SEXP wk_volatility_cone_reset(SEXP e) { struct VolatilityCone *h = (struct VolatilityCone *)R_ExternalPtrAddr(e); wickra_volatility_cone_reset(h); @@ -19121,6 +21041,10 @@ SEXP wk_volatility_of_volatility_is_ready(SEXP e) { struct VolatilityOfVolatility *h = (struct VolatilityOfVolatility *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_volatility_of_volatility_is_ready(h)); } +SEXP wk_volatility_of_volatility_name(SEXP e) { + struct VolatilityOfVolatility *h = (struct VolatilityOfVolatility *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_volatility_of_volatility_name(h)); +} SEXP wk_volatility_of_volatility_reset(SEXP e) { struct VolatilityOfVolatility *h = (struct VolatilityOfVolatility *)R_ExternalPtrAddr(e); wickra_volatility_of_volatility_reset(h); @@ -19162,6 +21086,10 @@ SEXP wk_volatility_ratio_is_ready(SEXP e) { struct VolatilityRatio *h = (struct VolatilityRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_volatility_ratio_is_ready(h)); } +SEXP wk_volatility_ratio_name(SEXP e) { + struct VolatilityRatio *h = (struct VolatilityRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_volatility_ratio_name(h)); +} SEXP wk_volatility_ratio_reset(SEXP e) { struct VolatilityRatio *h = (struct VolatilityRatio *)R_ExternalPtrAddr(e); wickra_volatility_ratio_reset(h); @@ -19203,6 +21131,10 @@ SEXP wk_volty_stop_is_ready(SEXP e) { struct VoltyStop *h = (struct VoltyStop *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_volty_stop_is_ready(h)); } +SEXP wk_volty_stop_name(SEXP e) { + struct VoltyStop *h = (struct VoltyStop *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_volty_stop_name(h)); +} SEXP wk_volty_stop_reset(SEXP e) { struct VoltyStop *h = (struct VoltyStop *)R_ExternalPtrAddr(e); wickra_volty_stop_reset(h); @@ -19246,6 +21178,10 @@ SEXP wk_volume_bars_update(SEXP e, SEXP a0, SEXP a1, SEXP a2, SEXP a3, SEXP a4, UNPROTECT(3); return r; } +SEXP wk_volume_bars_name(SEXP e) { + struct VolumeBars *h = (struct VolumeBars *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_volume_bars_name(h)); +} SEXP wk_volume_bars_reset(SEXP e) { struct VolumeBars *h = (struct VolumeBars *)R_ExternalPtrAddr(e); wickra_volume_bars_reset(h); @@ -19284,6 +21220,10 @@ SEXP wk_volume_by_time_profile_is_ready(SEXP e) { struct VolumeByTimeProfile *h = (struct VolumeByTimeProfile *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_volume_by_time_profile_is_ready(h)); } +SEXP wk_volume_by_time_profile_name(SEXP e) { + struct VolumeByTimeProfile *h = (struct VolumeByTimeProfile *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_volume_by_time_profile_name(h)); +} SEXP wk_volume_by_time_profile_reset(SEXP e) { struct VolumeByTimeProfile *h = (struct VolumeByTimeProfile *)R_ExternalPtrAddr(e); wickra_volume_by_time_profile_reset(h); @@ -19325,6 +21265,10 @@ SEXP wk_volume_oscillator_is_ready(SEXP e) { struct VolumeOscillator *h = (struct VolumeOscillator *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_volume_oscillator_is_ready(h)); } +SEXP wk_volume_oscillator_name(SEXP e) { + struct VolumeOscillator *h = (struct VolumeOscillator *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_volume_oscillator_name(h)); +} SEXP wk_volume_oscillator_reset(SEXP e) { struct VolumeOscillator *h = (struct VolumeOscillator *)R_ExternalPtrAddr(e); wickra_volume_oscillator_reset(h); @@ -19366,6 +21310,10 @@ SEXP wk_volume_price_trend_is_ready(SEXP e) { struct VolumePriceTrend *h = (struct VolumePriceTrend *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_volume_price_trend_is_ready(h)); } +SEXP wk_volume_price_trend_name(SEXP e) { + struct VolumePriceTrend *h = (struct VolumePriceTrend *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_volume_price_trend_name(h)); +} SEXP wk_volume_price_trend_reset(SEXP e) { struct VolumePriceTrend *h = (struct VolumePriceTrend *)R_ExternalPtrAddr(e); wickra_volume_price_trend_reset(h); @@ -19414,6 +21362,10 @@ SEXP wk_volume_profile_is_ready(SEXP e) { struct VolumeProfile *h = (struct VolumeProfile *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_volume_profile_is_ready(h)); } +SEXP wk_volume_profile_name(SEXP e) { + struct VolumeProfile *h = (struct VolumeProfile *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_volume_profile_name(h)); +} SEXP wk_volume_profile_reset(SEXP e) { struct VolumeProfile *h = (struct VolumeProfile *)R_ExternalPtrAddr(e); wickra_volume_profile_reset(h); @@ -19455,6 +21407,10 @@ SEXP wk_volume_rsi_is_ready(SEXP e) { struct VolumeRsi *h = (struct VolumeRsi *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_volume_rsi_is_ready(h)); } +SEXP wk_volume_rsi_name(SEXP e) { + struct VolumeRsi *h = (struct VolumeRsi *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_volume_rsi_name(h)); +} SEXP wk_volume_rsi_reset(SEXP e) { struct VolumeRsi *h = (struct VolumeRsi *)R_ExternalPtrAddr(e); wickra_volume_rsi_reset(h); @@ -19498,6 +21454,10 @@ SEXP wk_volume_weighted_macd_is_ready(SEXP e) { struct VolumeWeightedMacd *h = (struct VolumeWeightedMacd *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_volume_weighted_macd_is_ready(h)); } +SEXP wk_volume_weighted_macd_name(SEXP e) { + struct VolumeWeightedMacd *h = (struct VolumeWeightedMacd *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_volume_weighted_macd_name(h)); +} SEXP wk_volume_weighted_macd_reset(SEXP e) { struct VolumeWeightedMacd *h = (struct VolumeWeightedMacd *)R_ExternalPtrAddr(e); wickra_volume_weighted_macd_reset(h); @@ -19539,6 +21499,10 @@ SEXP wk_volume_weighted_sr_is_ready(SEXP e) { struct VolumeWeightedSr *h = (struct VolumeWeightedSr *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_volume_weighted_sr_is_ready(h)); } +SEXP wk_volume_weighted_sr_name(SEXP e) { + struct VolumeWeightedSr *h = (struct VolumeWeightedSr *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_volume_weighted_sr_name(h)); +} SEXP wk_volume_weighted_sr_reset(SEXP e) { struct VolumeWeightedSr *h = (struct VolumeWeightedSr *)R_ExternalPtrAddr(e); wickra_volume_weighted_sr_reset(h); @@ -19580,6 +21544,10 @@ SEXP wk_vortex_is_ready(SEXP e) { struct Vortex *h = (struct Vortex *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_vortex_is_ready(h)); } +SEXP wk_vortex_name(SEXP e) { + struct Vortex *h = (struct Vortex *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_vortex_name(h)); +} SEXP wk_vortex_reset(SEXP e) { struct Vortex *h = (struct Vortex *)R_ExternalPtrAddr(e); wickra_vortex_reset(h); @@ -19611,6 +21579,10 @@ SEXP wk_vpin_is_ready(SEXP e) { struct Vpin *h = (struct Vpin *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_vpin_is_ready(h)); } +SEXP wk_vpin_name(SEXP e) { + struct Vpin *h = (struct Vpin *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_vpin_name(h)); +} SEXP wk_vpin_reset(SEXP e) { struct Vpin *h = (struct Vpin *)R_ExternalPtrAddr(e); wickra_vpin_reset(h); @@ -19652,6 +21624,10 @@ SEXP wk_vwap_is_ready(SEXP e) { struct Vwap *h = (struct Vwap *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_vwap_is_ready(h)); } +SEXP wk_vwap_name(SEXP e) { + struct Vwap *h = (struct Vwap *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_vwap_name(h)); +} SEXP wk_vwap_reset(SEXP e) { struct Vwap *h = (struct Vwap *)R_ExternalPtrAddr(e); wickra_vwap_reset(h); @@ -19697,6 +21673,10 @@ SEXP wk_vwap_std_dev_bands_is_ready(SEXP e) { struct VwapStdDevBands *h = (struct VwapStdDevBands *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_vwap_std_dev_bands_is_ready(h)); } +SEXP wk_vwap_std_dev_bands_name(SEXP e) { + struct VwapStdDevBands *h = (struct VwapStdDevBands *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_vwap_std_dev_bands_name(h)); +} SEXP wk_vwap_std_dev_bands_reset(SEXP e) { struct VwapStdDevBands *h = (struct VwapStdDevBands *)R_ExternalPtrAddr(e); wickra_vwap_std_dev_bands_reset(h); @@ -19738,6 +21718,10 @@ SEXP wk_vwma_is_ready(SEXP e) { struct Vwma *h = (struct Vwma *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_vwma_is_ready(h)); } +SEXP wk_vwma_name(SEXP e) { + struct Vwma *h = (struct Vwma *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_vwma_name(h)); +} SEXP wk_vwma_reset(SEXP e) { struct Vwma *h = (struct Vwma *)R_ExternalPtrAddr(e); wickra_vwma_reset(h); @@ -19779,6 +21763,10 @@ SEXP wk_vzo_is_ready(SEXP e) { struct Vzo *h = (struct Vzo *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_vzo_is_ready(h)); } +SEXP wk_vzo_name(SEXP e) { + struct Vzo *h = (struct Vzo *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_vzo_name(h)); +} SEXP wk_vzo_reset(SEXP e) { struct Vzo *h = (struct Vzo *)R_ExternalPtrAddr(e); wickra_vzo_reset(h); @@ -19820,6 +21808,10 @@ SEXP wk_wad_is_ready(SEXP e) { struct Wad *h = (struct Wad *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_wad_is_ready(h)); } +SEXP wk_wad_name(SEXP e) { + struct Wad *h = (struct Wad *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_wad_name(h)); +} SEXP wk_wad_reset(SEXP e) { struct Wad *h = (struct Wad *)R_ExternalPtrAddr(e); wickra_wad_reset(h); @@ -19859,6 +21851,10 @@ SEXP wk_wave_pm_is_ready(SEXP e) { struct WavePm *h = (struct WavePm *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_wave_pm_is_ready(h)); } +SEXP wk_wave_pm_name(SEXP e) { + struct WavePm *h = (struct WavePm *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_wave_pm_name(h)); +} SEXP wk_wave_pm_reset(SEXP e) { struct WavePm *h = (struct WavePm *)R_ExternalPtrAddr(e); wickra_wave_pm_reset(h); @@ -19900,6 +21896,10 @@ SEXP wk_wave_trend_is_ready(SEXP e) { struct WaveTrend *h = (struct WaveTrend *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_wave_trend_is_ready(h)); } +SEXP wk_wave_trend_name(SEXP e) { + struct WaveTrend *h = (struct WaveTrend *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_wave_trend_name(h)); +} SEXP wk_wave_trend_reset(SEXP e) { struct WaveTrend *h = (struct WaveTrend *)R_ExternalPtrAddr(e); wickra_wave_trend_reset(h); @@ -19941,6 +21941,10 @@ SEXP wk_wedge_is_ready(SEXP e) { struct Wedge *h = (struct Wedge *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_wedge_is_ready(h)); } +SEXP wk_wedge_name(SEXP e) { + struct Wedge *h = (struct Wedge *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_wedge_name(h)); +} SEXP wk_wedge_reset(SEXP e) { struct Wedge *h = (struct Wedge *)R_ExternalPtrAddr(e); wickra_wedge_reset(h); @@ -19982,6 +21986,10 @@ SEXP wk_weighted_close_is_ready(SEXP e) { struct WeightedClose *h = (struct WeightedClose *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_weighted_close_is_ready(h)); } +SEXP wk_weighted_close_name(SEXP e) { + struct WeightedClose *h = (struct WeightedClose *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_weighted_close_name(h)); +} SEXP wk_weighted_close_reset(SEXP e) { struct WeightedClose *h = (struct WeightedClose *)R_ExternalPtrAddr(e); wickra_weighted_close_reset(h); @@ -20023,6 +22031,10 @@ SEXP wk_wick_ratio_is_ready(SEXP e) { struct WickRatio *h = (struct WickRatio *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_wick_ratio_is_ready(h)); } +SEXP wk_wick_ratio_name(SEXP e) { + struct WickRatio *h = (struct WickRatio *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_wick_ratio_name(h)); +} SEXP wk_wick_ratio_reset(SEXP e) { struct WickRatio *h = (struct WickRatio *)R_ExternalPtrAddr(e); wickra_wick_ratio_reset(h); @@ -20064,6 +22076,10 @@ SEXP wk_williams_fractals_is_ready(SEXP e) { struct WilliamsFractals *h = (struct WilliamsFractals *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_williams_fractals_is_ready(h)); } +SEXP wk_williams_fractals_name(SEXP e) { + struct WilliamsFractals *h = (struct WilliamsFractals *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_williams_fractals_name(h)); +} SEXP wk_williams_fractals_reset(SEXP e) { struct WilliamsFractals *h = (struct WilliamsFractals *)R_ExternalPtrAddr(e); wickra_williams_fractals_reset(h); @@ -20105,6 +22121,10 @@ SEXP wk_williams_r_is_ready(SEXP e) { struct WilliamsR *h = (struct WilliamsR *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_williams_r_is_ready(h)); } +SEXP wk_williams_r_name(SEXP e) { + struct WilliamsR *h = (struct WilliamsR *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_williams_r_name(h)); +} SEXP wk_williams_r_reset(SEXP e) { struct WilliamsR *h = (struct WilliamsR *)R_ExternalPtrAddr(e); wickra_williams_r_reset(h); @@ -20144,6 +22164,10 @@ SEXP wk_win_rate_is_ready(SEXP e) { struct WinRate *h = (struct WinRate *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_win_rate_is_ready(h)); } +SEXP wk_win_rate_name(SEXP e) { + struct WinRate *h = (struct WinRate *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_win_rate_name(h)); +} SEXP wk_win_rate_reset(SEXP e) { struct WinRate *h = (struct WinRate *)R_ExternalPtrAddr(e); wickra_win_rate_reset(h); @@ -20183,6 +22207,10 @@ SEXP wk_wma_is_ready(SEXP e) { struct Wma *h = (struct Wma *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_wma_is_ready(h)); } +SEXP wk_wma_name(SEXP e) { + struct Wma *h = (struct Wma *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_wma_name(h)); +} SEXP wk_wma_reset(SEXP e) { struct Wma *h = (struct Wma *)R_ExternalPtrAddr(e); wickra_wma_reset(h); @@ -20230,6 +22258,10 @@ SEXP wk_woodie_pivots_is_ready(SEXP e) { struct WoodiePivots *h = (struct WoodiePivots *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_woodie_pivots_is_ready(h)); } +SEXP wk_woodie_pivots_name(SEXP e) { + struct WoodiePivots *h = (struct WoodiePivots *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_woodie_pivots_name(h)); +} SEXP wk_woodie_pivots_reset(SEXP e) { struct WoodiePivots *h = (struct WoodiePivots *)R_ExternalPtrAddr(e); wickra_woodie_pivots_reset(h); @@ -20271,6 +22303,10 @@ SEXP wk_yang_zhang_volatility_is_ready(SEXP e) { struct YangZhangVolatility *h = (struct YangZhangVolatility *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_yang_zhang_volatility_is_ready(h)); } +SEXP wk_yang_zhang_volatility_name(SEXP e) { + struct YangZhangVolatility *h = (struct YangZhangVolatility *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_yang_zhang_volatility_name(h)); +} SEXP wk_yang_zhang_volatility_reset(SEXP e) { struct YangZhangVolatility *h = (struct YangZhangVolatility *)R_ExternalPtrAddr(e); wickra_yang_zhang_volatility_reset(h); @@ -20312,6 +22348,10 @@ SEXP wk_yoyo_exit_is_ready(SEXP e) { struct YoyoExit *h = (struct YoyoExit *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_yoyo_exit_is_ready(h)); } +SEXP wk_yoyo_exit_name(SEXP e) { + struct YoyoExit *h = (struct YoyoExit *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_yoyo_exit_name(h)); +} SEXP wk_yoyo_exit_reset(SEXP e) { struct YoyoExit *h = (struct YoyoExit *)R_ExternalPtrAddr(e); wickra_yoyo_exit_reset(h); @@ -20351,6 +22391,10 @@ SEXP wk_z_score_is_ready(SEXP e) { struct ZScore *h = (struct ZScore *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_z_score_is_ready(h)); } +SEXP wk_z_score_name(SEXP e) { + struct ZScore *h = (struct ZScore *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_z_score_name(h)); +} SEXP wk_z_score_reset(SEXP e) { struct ZScore *h = (struct ZScore *)R_ExternalPtrAddr(e); wickra_z_score_reset(h); @@ -20394,6 +22438,10 @@ SEXP wk_zero_lag_macd_is_ready(SEXP e) { struct ZeroLagMacd *h = (struct ZeroLagMacd *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_zero_lag_macd_is_ready(h)); } +SEXP wk_zero_lag_macd_name(SEXP e) { + struct ZeroLagMacd *h = (struct ZeroLagMacd *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_zero_lag_macd_name(h)); +} SEXP wk_zero_lag_macd_reset(SEXP e) { struct ZeroLagMacd *h = (struct ZeroLagMacd *)R_ExternalPtrAddr(e); wickra_zero_lag_macd_reset(h); @@ -20435,6 +22483,10 @@ SEXP wk_zig_zag_is_ready(SEXP e) { struct ZigZag *h = (struct ZigZag *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_zig_zag_is_ready(h)); } +SEXP wk_zig_zag_name(SEXP e) { + struct ZigZag *h = (struct ZigZag *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_zig_zag_name(h)); +} SEXP wk_zig_zag_reset(SEXP e) { struct ZigZag *h = (struct ZigZag *)R_ExternalPtrAddr(e); wickra_zig_zag_reset(h); @@ -20474,6 +22526,10 @@ SEXP wk_zlema_is_ready(SEXP e) { struct Zlema *h = (struct Zlema *)R_ExternalPtrAddr(e); return Rf_ScalarLogical(wickra_zlema_is_ready(h)); } +SEXP wk_zlema_name(SEXP e) { + struct Zlema *h = (struct Zlema *)R_ExternalPtrAddr(e); + return Rf_mkString(wickra_zlema_name(h)); +} SEXP wk_zlema_reset(SEXP e) { struct Zlema *h = (struct Zlema *)R_ExternalPtrAddr(e); wickra_zlema_reset(h); @@ -20486,2906 +22542,3420 @@ static const R_CallMethodDef CallEntries[] = { {"wk_abandoned_baby_batch", (DL_FUNC)&wk_abandoned_baby_batch, 7}, {"wk_abandoned_baby_warmup_period", (DL_FUNC)&wk_abandoned_baby_warmup_period, 1}, {"wk_abandoned_baby_is_ready", (DL_FUNC)&wk_abandoned_baby_is_ready, 1}, + {"wk_abandoned_baby_name", (DL_FUNC)&wk_abandoned_baby_name, 1}, {"wk_abandoned_baby_reset", (DL_FUNC)&wk_abandoned_baby_reset, 1}, {"wk_abcd_new", (DL_FUNC)&wk_abcd_new, 0}, {"wk_abcd_update", (DL_FUNC)&wk_abcd_update, 7}, {"wk_abcd_batch", (DL_FUNC)&wk_abcd_batch, 7}, {"wk_abcd_warmup_period", (DL_FUNC)&wk_abcd_warmup_period, 1}, {"wk_abcd_is_ready", (DL_FUNC)&wk_abcd_is_ready, 1}, + {"wk_abcd_name", (DL_FUNC)&wk_abcd_name, 1}, {"wk_abcd_reset", (DL_FUNC)&wk_abcd_reset, 1}, {"wk_absolute_breadth_index_new", (DL_FUNC)&wk_absolute_breadth_index_new, 0}, {"wk_absolute_breadth_index_update", (DL_FUNC)&wk_absolute_breadth_index_update, 8}, {"wk_absolute_breadth_index_warmup_period", (DL_FUNC)&wk_absolute_breadth_index_warmup_period, 1}, {"wk_absolute_breadth_index_is_ready", (DL_FUNC)&wk_absolute_breadth_index_is_ready, 1}, + {"wk_absolute_breadth_index_name", (DL_FUNC)&wk_absolute_breadth_index_name, 1}, {"wk_absolute_breadth_index_reset", (DL_FUNC)&wk_absolute_breadth_index_reset, 1}, {"wk_acceleration_bands_new", (DL_FUNC)&wk_acceleration_bands_new, 2}, {"wk_acceleration_bands_update", (DL_FUNC)&wk_acceleration_bands_update, 7}, {"wk_acceleration_bands_warmup_period", (DL_FUNC)&wk_acceleration_bands_warmup_period, 1}, {"wk_acceleration_bands_is_ready", (DL_FUNC)&wk_acceleration_bands_is_ready, 1}, + {"wk_acceleration_bands_name", (DL_FUNC)&wk_acceleration_bands_name, 1}, {"wk_acceleration_bands_reset", (DL_FUNC)&wk_acceleration_bands_reset, 1}, {"wk_accelerator_oscillator_new", (DL_FUNC)&wk_accelerator_oscillator_new, 3}, {"wk_accelerator_oscillator_update", (DL_FUNC)&wk_accelerator_oscillator_update, 7}, {"wk_accelerator_oscillator_batch", (DL_FUNC)&wk_accelerator_oscillator_batch, 7}, {"wk_accelerator_oscillator_warmup_period", (DL_FUNC)&wk_accelerator_oscillator_warmup_period, 1}, {"wk_accelerator_oscillator_is_ready", (DL_FUNC)&wk_accelerator_oscillator_is_ready, 1}, + {"wk_accelerator_oscillator_name", (DL_FUNC)&wk_accelerator_oscillator_name, 1}, {"wk_accelerator_oscillator_reset", (DL_FUNC)&wk_accelerator_oscillator_reset, 1}, {"wk_ad_oscillator_new", (DL_FUNC)&wk_ad_oscillator_new, 0}, {"wk_ad_oscillator_update", (DL_FUNC)&wk_ad_oscillator_update, 7}, {"wk_ad_oscillator_batch", (DL_FUNC)&wk_ad_oscillator_batch, 7}, {"wk_ad_oscillator_warmup_period", (DL_FUNC)&wk_ad_oscillator_warmup_period, 1}, {"wk_ad_oscillator_is_ready", (DL_FUNC)&wk_ad_oscillator_is_ready, 1}, + {"wk_ad_oscillator_name", (DL_FUNC)&wk_ad_oscillator_name, 1}, {"wk_ad_oscillator_reset", (DL_FUNC)&wk_ad_oscillator_reset, 1}, {"wk_ad_volume_line_new", (DL_FUNC)&wk_ad_volume_line_new, 0}, {"wk_ad_volume_line_update", (DL_FUNC)&wk_ad_volume_line_update, 8}, {"wk_ad_volume_line_warmup_period", (DL_FUNC)&wk_ad_volume_line_warmup_period, 1}, {"wk_ad_volume_line_is_ready", (DL_FUNC)&wk_ad_volume_line_is_ready, 1}, + {"wk_ad_volume_line_name", (DL_FUNC)&wk_ad_volume_line_name, 1}, {"wk_ad_volume_line_reset", (DL_FUNC)&wk_ad_volume_line_reset, 1}, {"wk_adaptive_cci_new", (DL_FUNC)&wk_adaptive_cci_new, 1}, {"wk_adaptive_cci_update", (DL_FUNC)&wk_adaptive_cci_update, 7}, {"wk_adaptive_cci_batch", (DL_FUNC)&wk_adaptive_cci_batch, 7}, {"wk_adaptive_cci_warmup_period", (DL_FUNC)&wk_adaptive_cci_warmup_period, 1}, {"wk_adaptive_cci_is_ready", (DL_FUNC)&wk_adaptive_cci_is_ready, 1}, + {"wk_adaptive_cci_name", (DL_FUNC)&wk_adaptive_cci_name, 1}, {"wk_adaptive_cci_reset", (DL_FUNC)&wk_adaptive_cci_reset, 1}, {"wk_adaptive_cycle_new", (DL_FUNC)&wk_adaptive_cycle_new, 0}, {"wk_adaptive_cycle_update", (DL_FUNC)&wk_adaptive_cycle_update, 2}, {"wk_adaptive_cycle_batch", (DL_FUNC)&wk_adaptive_cycle_batch, 2}, {"wk_adaptive_cycle_warmup_period", (DL_FUNC)&wk_adaptive_cycle_warmup_period, 1}, {"wk_adaptive_cycle_is_ready", (DL_FUNC)&wk_adaptive_cycle_is_ready, 1}, + {"wk_adaptive_cycle_name", (DL_FUNC)&wk_adaptive_cycle_name, 1}, {"wk_adaptive_cycle_reset", (DL_FUNC)&wk_adaptive_cycle_reset, 1}, {"wk_adaptive_laguerre_filter_new", (DL_FUNC)&wk_adaptive_laguerre_filter_new, 1}, {"wk_adaptive_laguerre_filter_update", (DL_FUNC)&wk_adaptive_laguerre_filter_update, 2}, {"wk_adaptive_laguerre_filter_batch", (DL_FUNC)&wk_adaptive_laguerre_filter_batch, 2}, {"wk_adaptive_laguerre_filter_warmup_period", (DL_FUNC)&wk_adaptive_laguerre_filter_warmup_period, 1}, {"wk_adaptive_laguerre_filter_is_ready", (DL_FUNC)&wk_adaptive_laguerre_filter_is_ready, 1}, + {"wk_adaptive_laguerre_filter_name", (DL_FUNC)&wk_adaptive_laguerre_filter_name, 1}, {"wk_adaptive_laguerre_filter_reset", (DL_FUNC)&wk_adaptive_laguerre_filter_reset, 1}, {"wk_adaptive_rsi_new", (DL_FUNC)&wk_adaptive_rsi_new, 1}, {"wk_adaptive_rsi_update", (DL_FUNC)&wk_adaptive_rsi_update, 2}, {"wk_adaptive_rsi_batch", (DL_FUNC)&wk_adaptive_rsi_batch, 2}, {"wk_adaptive_rsi_warmup_period", (DL_FUNC)&wk_adaptive_rsi_warmup_period, 1}, {"wk_adaptive_rsi_is_ready", (DL_FUNC)&wk_adaptive_rsi_is_ready, 1}, + {"wk_adaptive_rsi_name", (DL_FUNC)&wk_adaptive_rsi_name, 1}, {"wk_adaptive_rsi_reset", (DL_FUNC)&wk_adaptive_rsi_reset, 1}, {"wk_adl_new", (DL_FUNC)&wk_adl_new, 0}, {"wk_adl_update", (DL_FUNC)&wk_adl_update, 7}, {"wk_adl_batch", (DL_FUNC)&wk_adl_batch, 7}, {"wk_adl_warmup_period", (DL_FUNC)&wk_adl_warmup_period, 1}, {"wk_adl_is_ready", (DL_FUNC)&wk_adl_is_ready, 1}, + {"wk_adl_name", (DL_FUNC)&wk_adl_name, 1}, {"wk_adl_reset", (DL_FUNC)&wk_adl_reset, 1}, {"wk_advance_block_new", (DL_FUNC)&wk_advance_block_new, 0}, {"wk_advance_block_update", (DL_FUNC)&wk_advance_block_update, 7}, {"wk_advance_block_batch", (DL_FUNC)&wk_advance_block_batch, 7}, {"wk_advance_block_warmup_period", (DL_FUNC)&wk_advance_block_warmup_period, 1}, {"wk_advance_block_is_ready", (DL_FUNC)&wk_advance_block_is_ready, 1}, + {"wk_advance_block_name", (DL_FUNC)&wk_advance_block_name, 1}, {"wk_advance_block_reset", (DL_FUNC)&wk_advance_block_reset, 1}, {"wk_advance_decline_new", (DL_FUNC)&wk_advance_decline_new, 0}, {"wk_advance_decline_update", (DL_FUNC)&wk_advance_decline_update, 8}, {"wk_advance_decline_warmup_period", (DL_FUNC)&wk_advance_decline_warmup_period, 1}, {"wk_advance_decline_is_ready", (DL_FUNC)&wk_advance_decline_is_ready, 1}, + {"wk_advance_decline_name", (DL_FUNC)&wk_advance_decline_name, 1}, {"wk_advance_decline_reset", (DL_FUNC)&wk_advance_decline_reset, 1}, {"wk_advance_decline_ratio_new", (DL_FUNC)&wk_advance_decline_ratio_new, 0}, {"wk_advance_decline_ratio_update", (DL_FUNC)&wk_advance_decline_ratio_update, 8}, {"wk_advance_decline_ratio_warmup_period", (DL_FUNC)&wk_advance_decline_ratio_warmup_period, 1}, {"wk_advance_decline_ratio_is_ready", (DL_FUNC)&wk_advance_decline_ratio_is_ready, 1}, + {"wk_advance_decline_ratio_name", (DL_FUNC)&wk_advance_decline_ratio_name, 1}, {"wk_advance_decline_ratio_reset", (DL_FUNC)&wk_advance_decline_ratio_reset, 1}, {"wk_adx_new", (DL_FUNC)&wk_adx_new, 1}, {"wk_adx_update", (DL_FUNC)&wk_adx_update, 7}, {"wk_adx_warmup_period", (DL_FUNC)&wk_adx_warmup_period, 1}, {"wk_adx_is_ready", (DL_FUNC)&wk_adx_is_ready, 1}, + {"wk_adx_name", (DL_FUNC)&wk_adx_name, 1}, {"wk_adx_reset", (DL_FUNC)&wk_adx_reset, 1}, {"wk_adxr_new", (DL_FUNC)&wk_adxr_new, 1}, {"wk_adxr_update", (DL_FUNC)&wk_adxr_update, 7}, {"wk_adxr_batch", (DL_FUNC)&wk_adxr_batch, 7}, {"wk_adxr_warmup_period", (DL_FUNC)&wk_adxr_warmup_period, 1}, {"wk_adxr_is_ready", (DL_FUNC)&wk_adxr_is_ready, 1}, + {"wk_adxr_name", (DL_FUNC)&wk_adxr_name, 1}, {"wk_adxr_reset", (DL_FUNC)&wk_adxr_reset, 1}, {"wk_alligator_new", (DL_FUNC)&wk_alligator_new, 3}, {"wk_alligator_update", (DL_FUNC)&wk_alligator_update, 7}, {"wk_alligator_warmup_period", (DL_FUNC)&wk_alligator_warmup_period, 1}, {"wk_alligator_is_ready", (DL_FUNC)&wk_alligator_is_ready, 1}, + {"wk_alligator_name", (DL_FUNC)&wk_alligator_name, 1}, {"wk_alligator_reset", (DL_FUNC)&wk_alligator_reset, 1}, {"wk_alma_new", (DL_FUNC)&wk_alma_new, 3}, {"wk_alma_update", (DL_FUNC)&wk_alma_update, 2}, {"wk_alma_batch", (DL_FUNC)&wk_alma_batch, 2}, {"wk_alma_warmup_period", (DL_FUNC)&wk_alma_warmup_period, 1}, {"wk_alma_is_ready", (DL_FUNC)&wk_alma_is_ready, 1}, + {"wk_alma_name", (DL_FUNC)&wk_alma_name, 1}, {"wk_alma_reset", (DL_FUNC)&wk_alma_reset, 1}, {"wk_alpha_new", (DL_FUNC)&wk_alpha_new, 2}, {"wk_alpha_update", (DL_FUNC)&wk_alpha_update, 3}, {"wk_alpha_batch", (DL_FUNC)&wk_alpha_batch, 3}, {"wk_alpha_warmup_period", (DL_FUNC)&wk_alpha_warmup_period, 1}, {"wk_alpha_is_ready", (DL_FUNC)&wk_alpha_is_ready, 1}, + {"wk_alpha_name", (DL_FUNC)&wk_alpha_name, 1}, {"wk_alpha_reset", (DL_FUNC)&wk_alpha_reset, 1}, {"wk_amihud_illiquidity_new", (DL_FUNC)&wk_amihud_illiquidity_new, 1}, {"wk_amihud_illiquidity_update", (DL_FUNC)&wk_amihud_illiquidity_update, 5}, {"wk_amihud_illiquidity_warmup_period", (DL_FUNC)&wk_amihud_illiquidity_warmup_period, 1}, {"wk_amihud_illiquidity_is_ready", (DL_FUNC)&wk_amihud_illiquidity_is_ready, 1}, + {"wk_amihud_illiquidity_name", (DL_FUNC)&wk_amihud_illiquidity_name, 1}, {"wk_amihud_illiquidity_reset", (DL_FUNC)&wk_amihud_illiquidity_reset, 1}, {"wk_anchored_rsi_new", (DL_FUNC)&wk_anchored_rsi_new, 0}, {"wk_anchored_rsi_update", (DL_FUNC)&wk_anchored_rsi_update, 2}, {"wk_anchored_rsi_batch", (DL_FUNC)&wk_anchored_rsi_batch, 2}, {"wk_anchored_rsi_warmup_period", (DL_FUNC)&wk_anchored_rsi_warmup_period, 1}, {"wk_anchored_rsi_is_ready", (DL_FUNC)&wk_anchored_rsi_is_ready, 1}, + {"wk_anchored_rsi_name", (DL_FUNC)&wk_anchored_rsi_name, 1}, {"wk_anchored_rsi_reset", (DL_FUNC)&wk_anchored_rsi_reset, 1}, {"wk_anchored_vwap_new", (DL_FUNC)&wk_anchored_vwap_new, 0}, {"wk_anchored_vwap_update", (DL_FUNC)&wk_anchored_vwap_update, 7}, {"wk_anchored_vwap_batch", (DL_FUNC)&wk_anchored_vwap_batch, 7}, {"wk_anchored_vwap_warmup_period", (DL_FUNC)&wk_anchored_vwap_warmup_period, 1}, {"wk_anchored_vwap_is_ready", (DL_FUNC)&wk_anchored_vwap_is_ready, 1}, + {"wk_anchored_vwap_name", (DL_FUNC)&wk_anchored_vwap_name, 1}, {"wk_anchored_vwap_reset", (DL_FUNC)&wk_anchored_vwap_reset, 1}, {"wk_andrews_pitchfork_new", (DL_FUNC)&wk_andrews_pitchfork_new, 1}, {"wk_andrews_pitchfork_update", (DL_FUNC)&wk_andrews_pitchfork_update, 7}, {"wk_andrews_pitchfork_warmup_period", (DL_FUNC)&wk_andrews_pitchfork_warmup_period, 1}, {"wk_andrews_pitchfork_is_ready", (DL_FUNC)&wk_andrews_pitchfork_is_ready, 1}, + {"wk_andrews_pitchfork_name", (DL_FUNC)&wk_andrews_pitchfork_name, 1}, {"wk_andrews_pitchfork_reset", (DL_FUNC)&wk_andrews_pitchfork_reset, 1}, {"wk_apo_new", (DL_FUNC)&wk_apo_new, 2}, {"wk_apo_update", (DL_FUNC)&wk_apo_update, 2}, {"wk_apo_batch", (DL_FUNC)&wk_apo_batch, 2}, {"wk_apo_warmup_period", (DL_FUNC)&wk_apo_warmup_period, 1}, {"wk_apo_is_ready", (DL_FUNC)&wk_apo_is_ready, 1}, + {"wk_apo_name", (DL_FUNC)&wk_apo_name, 1}, {"wk_apo_reset", (DL_FUNC)&wk_apo_reset, 1}, {"wk_aroon_new", (DL_FUNC)&wk_aroon_new, 1}, {"wk_aroon_update", (DL_FUNC)&wk_aroon_update, 7}, {"wk_aroon_warmup_period", (DL_FUNC)&wk_aroon_warmup_period, 1}, {"wk_aroon_is_ready", (DL_FUNC)&wk_aroon_is_ready, 1}, + {"wk_aroon_name", (DL_FUNC)&wk_aroon_name, 1}, {"wk_aroon_reset", (DL_FUNC)&wk_aroon_reset, 1}, {"wk_aroon_oscillator_new", (DL_FUNC)&wk_aroon_oscillator_new, 1}, {"wk_aroon_oscillator_update", (DL_FUNC)&wk_aroon_oscillator_update, 7}, {"wk_aroon_oscillator_batch", (DL_FUNC)&wk_aroon_oscillator_batch, 7}, {"wk_aroon_oscillator_warmup_period", (DL_FUNC)&wk_aroon_oscillator_warmup_period, 1}, {"wk_aroon_oscillator_is_ready", (DL_FUNC)&wk_aroon_oscillator_is_ready, 1}, + {"wk_aroon_oscillator_name", (DL_FUNC)&wk_aroon_oscillator_name, 1}, {"wk_aroon_oscillator_reset", (DL_FUNC)&wk_aroon_oscillator_reset, 1}, {"wk_atr_new", (DL_FUNC)&wk_atr_new, 1}, {"wk_atr_update", (DL_FUNC)&wk_atr_update, 7}, {"wk_atr_batch", (DL_FUNC)&wk_atr_batch, 7}, {"wk_atr_warmup_period", (DL_FUNC)&wk_atr_warmup_period, 1}, {"wk_atr_is_ready", (DL_FUNC)&wk_atr_is_ready, 1}, + {"wk_atr_name", (DL_FUNC)&wk_atr_name, 1}, {"wk_atr_reset", (DL_FUNC)&wk_atr_reset, 1}, {"wk_atr_bands_new", (DL_FUNC)&wk_atr_bands_new, 2}, {"wk_atr_bands_update", (DL_FUNC)&wk_atr_bands_update, 7}, {"wk_atr_bands_warmup_period", (DL_FUNC)&wk_atr_bands_warmup_period, 1}, {"wk_atr_bands_is_ready", (DL_FUNC)&wk_atr_bands_is_ready, 1}, + {"wk_atr_bands_name", (DL_FUNC)&wk_atr_bands_name, 1}, {"wk_atr_bands_reset", (DL_FUNC)&wk_atr_bands_reset, 1}, {"wk_atr_ratchet_new", (DL_FUNC)&wk_atr_ratchet_new, 3}, {"wk_atr_ratchet_update", (DL_FUNC)&wk_atr_ratchet_update, 7}, {"wk_atr_ratchet_warmup_period", (DL_FUNC)&wk_atr_ratchet_warmup_period, 1}, {"wk_atr_ratchet_is_ready", (DL_FUNC)&wk_atr_ratchet_is_ready, 1}, + {"wk_atr_ratchet_name", (DL_FUNC)&wk_atr_ratchet_name, 1}, {"wk_atr_ratchet_reset", (DL_FUNC)&wk_atr_ratchet_reset, 1}, {"wk_atr_trailing_stop_new", (DL_FUNC)&wk_atr_trailing_stop_new, 2}, {"wk_atr_trailing_stop_update", (DL_FUNC)&wk_atr_trailing_stop_update, 7}, {"wk_atr_trailing_stop_batch", (DL_FUNC)&wk_atr_trailing_stop_batch, 7}, {"wk_atr_trailing_stop_warmup_period", (DL_FUNC)&wk_atr_trailing_stop_warmup_period, 1}, {"wk_atr_trailing_stop_is_ready", (DL_FUNC)&wk_atr_trailing_stop_is_ready, 1}, + {"wk_atr_trailing_stop_name", (DL_FUNC)&wk_atr_trailing_stop_name, 1}, {"wk_atr_trailing_stop_reset", (DL_FUNC)&wk_atr_trailing_stop_reset, 1}, {"wk_auto_fib_new", (DL_FUNC)&wk_auto_fib_new, 0}, {"wk_auto_fib_update", (DL_FUNC)&wk_auto_fib_update, 7}, {"wk_auto_fib_warmup_period", (DL_FUNC)&wk_auto_fib_warmup_period, 1}, {"wk_auto_fib_is_ready", (DL_FUNC)&wk_auto_fib_is_ready, 1}, + {"wk_auto_fib_name", (DL_FUNC)&wk_auto_fib_name, 1}, {"wk_auto_fib_reset", (DL_FUNC)&wk_auto_fib_reset, 1}, {"wk_autocorrelation_new", (DL_FUNC)&wk_autocorrelation_new, 2}, {"wk_autocorrelation_update", (DL_FUNC)&wk_autocorrelation_update, 2}, {"wk_autocorrelation_batch", (DL_FUNC)&wk_autocorrelation_batch, 2}, {"wk_autocorrelation_warmup_period", (DL_FUNC)&wk_autocorrelation_warmup_period, 1}, {"wk_autocorrelation_is_ready", (DL_FUNC)&wk_autocorrelation_is_ready, 1}, + {"wk_autocorrelation_name", (DL_FUNC)&wk_autocorrelation_name, 1}, {"wk_autocorrelation_reset", (DL_FUNC)&wk_autocorrelation_reset, 1}, {"wk_autocorrelation_periodogram_new", (DL_FUNC)&wk_autocorrelation_periodogram_new, 2}, {"wk_autocorrelation_periodogram_update", (DL_FUNC)&wk_autocorrelation_periodogram_update, 2}, {"wk_autocorrelation_periodogram_batch", (DL_FUNC)&wk_autocorrelation_periodogram_batch, 2}, {"wk_autocorrelation_periodogram_warmup_period", (DL_FUNC)&wk_autocorrelation_periodogram_warmup_period, 1}, {"wk_autocorrelation_periodogram_is_ready", (DL_FUNC)&wk_autocorrelation_periodogram_is_ready, 1}, + {"wk_autocorrelation_periodogram_name", (DL_FUNC)&wk_autocorrelation_periodogram_name, 1}, {"wk_autocorrelation_periodogram_reset", (DL_FUNC)&wk_autocorrelation_periodogram_reset, 1}, {"wk_average_daily_range_new", (DL_FUNC)&wk_average_daily_range_new, 2}, {"wk_average_daily_range_update", (DL_FUNC)&wk_average_daily_range_update, 7}, {"wk_average_daily_range_batch", (DL_FUNC)&wk_average_daily_range_batch, 7}, {"wk_average_daily_range_warmup_period", (DL_FUNC)&wk_average_daily_range_warmup_period, 1}, {"wk_average_daily_range_is_ready", (DL_FUNC)&wk_average_daily_range_is_ready, 1}, + {"wk_average_daily_range_name", (DL_FUNC)&wk_average_daily_range_name, 1}, {"wk_average_daily_range_reset", (DL_FUNC)&wk_average_daily_range_reset, 1}, {"wk_average_drawdown_new", (DL_FUNC)&wk_average_drawdown_new, 1}, {"wk_average_drawdown_update", (DL_FUNC)&wk_average_drawdown_update, 2}, {"wk_average_drawdown_batch", (DL_FUNC)&wk_average_drawdown_batch, 2}, {"wk_average_drawdown_warmup_period", (DL_FUNC)&wk_average_drawdown_warmup_period, 1}, {"wk_average_drawdown_is_ready", (DL_FUNC)&wk_average_drawdown_is_ready, 1}, + {"wk_average_drawdown_name", (DL_FUNC)&wk_average_drawdown_name, 1}, {"wk_average_drawdown_reset", (DL_FUNC)&wk_average_drawdown_reset, 1}, {"wk_avg_price_new", (DL_FUNC)&wk_avg_price_new, 0}, {"wk_avg_price_update", (DL_FUNC)&wk_avg_price_update, 7}, {"wk_avg_price_batch", (DL_FUNC)&wk_avg_price_batch, 7}, {"wk_avg_price_warmup_period", (DL_FUNC)&wk_avg_price_warmup_period, 1}, {"wk_avg_price_is_ready", (DL_FUNC)&wk_avg_price_is_ready, 1}, + {"wk_avg_price_name", (DL_FUNC)&wk_avg_price_name, 1}, {"wk_avg_price_reset", (DL_FUNC)&wk_avg_price_reset, 1}, {"wk_awesome_oscillator_new", (DL_FUNC)&wk_awesome_oscillator_new, 2}, {"wk_awesome_oscillator_update", (DL_FUNC)&wk_awesome_oscillator_update, 7}, {"wk_awesome_oscillator_batch", (DL_FUNC)&wk_awesome_oscillator_batch, 7}, {"wk_awesome_oscillator_warmup_period", (DL_FUNC)&wk_awesome_oscillator_warmup_period, 1}, {"wk_awesome_oscillator_is_ready", (DL_FUNC)&wk_awesome_oscillator_is_ready, 1}, + {"wk_awesome_oscillator_name", (DL_FUNC)&wk_awesome_oscillator_name, 1}, {"wk_awesome_oscillator_reset", (DL_FUNC)&wk_awesome_oscillator_reset, 1}, {"wk_awesome_oscillator_histogram_new", (DL_FUNC)&wk_awesome_oscillator_histogram_new, 3}, {"wk_awesome_oscillator_histogram_update", (DL_FUNC)&wk_awesome_oscillator_histogram_update, 7}, {"wk_awesome_oscillator_histogram_batch", (DL_FUNC)&wk_awesome_oscillator_histogram_batch, 7}, {"wk_awesome_oscillator_histogram_warmup_period", (DL_FUNC)&wk_awesome_oscillator_histogram_warmup_period, 1}, {"wk_awesome_oscillator_histogram_is_ready", (DL_FUNC)&wk_awesome_oscillator_histogram_is_ready, 1}, + {"wk_awesome_oscillator_histogram_name", (DL_FUNC)&wk_awesome_oscillator_histogram_name, 1}, {"wk_awesome_oscillator_histogram_reset", (DL_FUNC)&wk_awesome_oscillator_histogram_reset, 1}, {"wk_balance_of_power_new", (DL_FUNC)&wk_balance_of_power_new, 0}, {"wk_balance_of_power_update", (DL_FUNC)&wk_balance_of_power_update, 7}, {"wk_balance_of_power_batch", (DL_FUNC)&wk_balance_of_power_batch, 7}, {"wk_balance_of_power_warmup_period", (DL_FUNC)&wk_balance_of_power_warmup_period, 1}, {"wk_balance_of_power_is_ready", (DL_FUNC)&wk_balance_of_power_is_ready, 1}, + {"wk_balance_of_power_name", (DL_FUNC)&wk_balance_of_power_name, 1}, {"wk_balance_of_power_reset", (DL_FUNC)&wk_balance_of_power_reset, 1}, {"wk_bandpass_filter_new", (DL_FUNC)&wk_bandpass_filter_new, 2}, {"wk_bandpass_filter_update", (DL_FUNC)&wk_bandpass_filter_update, 2}, {"wk_bandpass_filter_batch", (DL_FUNC)&wk_bandpass_filter_batch, 2}, {"wk_bandpass_filter_warmup_period", (DL_FUNC)&wk_bandpass_filter_warmup_period, 1}, {"wk_bandpass_filter_is_ready", (DL_FUNC)&wk_bandpass_filter_is_ready, 1}, + {"wk_bandpass_filter_name", (DL_FUNC)&wk_bandpass_filter_name, 1}, {"wk_bandpass_filter_reset", (DL_FUNC)&wk_bandpass_filter_reset, 1}, {"wk_bat_new", (DL_FUNC)&wk_bat_new, 0}, {"wk_bat_update", (DL_FUNC)&wk_bat_update, 7}, {"wk_bat_batch", (DL_FUNC)&wk_bat_batch, 7}, {"wk_bat_warmup_period", (DL_FUNC)&wk_bat_warmup_period, 1}, {"wk_bat_is_ready", (DL_FUNC)&wk_bat_is_ready, 1}, + {"wk_bat_name", (DL_FUNC)&wk_bat_name, 1}, {"wk_bat_reset", (DL_FUNC)&wk_bat_reset, 1}, {"wk_belt_hold_new", (DL_FUNC)&wk_belt_hold_new, 0}, {"wk_belt_hold_update", (DL_FUNC)&wk_belt_hold_update, 7}, {"wk_belt_hold_batch", (DL_FUNC)&wk_belt_hold_batch, 7}, {"wk_belt_hold_warmup_period", (DL_FUNC)&wk_belt_hold_warmup_period, 1}, {"wk_belt_hold_is_ready", (DL_FUNC)&wk_belt_hold_is_ready, 1}, + {"wk_belt_hold_name", (DL_FUNC)&wk_belt_hold_name, 1}, {"wk_belt_hold_reset", (DL_FUNC)&wk_belt_hold_reset, 1}, {"wk_beta_new", (DL_FUNC)&wk_beta_new, 1}, {"wk_beta_update", (DL_FUNC)&wk_beta_update, 3}, {"wk_beta_batch", (DL_FUNC)&wk_beta_batch, 3}, {"wk_beta_warmup_period", (DL_FUNC)&wk_beta_warmup_period, 1}, {"wk_beta_is_ready", (DL_FUNC)&wk_beta_is_ready, 1}, + {"wk_beta_name", (DL_FUNC)&wk_beta_name, 1}, {"wk_beta_reset", (DL_FUNC)&wk_beta_reset, 1}, {"wk_beta_neutral_spread_new", (DL_FUNC)&wk_beta_neutral_spread_new, 1}, {"wk_beta_neutral_spread_update", (DL_FUNC)&wk_beta_neutral_spread_update, 3}, {"wk_beta_neutral_spread_batch", (DL_FUNC)&wk_beta_neutral_spread_batch, 3}, {"wk_beta_neutral_spread_warmup_period", (DL_FUNC)&wk_beta_neutral_spread_warmup_period, 1}, {"wk_beta_neutral_spread_is_ready", (DL_FUNC)&wk_beta_neutral_spread_is_ready, 1}, + {"wk_beta_neutral_spread_name", (DL_FUNC)&wk_beta_neutral_spread_name, 1}, {"wk_beta_neutral_spread_reset", (DL_FUNC)&wk_beta_neutral_spread_reset, 1}, {"wk_better_volume_new", (DL_FUNC)&wk_better_volume_new, 1}, {"wk_better_volume_update", (DL_FUNC)&wk_better_volume_update, 7}, {"wk_better_volume_batch", (DL_FUNC)&wk_better_volume_batch, 7}, {"wk_better_volume_warmup_period", (DL_FUNC)&wk_better_volume_warmup_period, 1}, {"wk_better_volume_is_ready", (DL_FUNC)&wk_better_volume_is_ready, 1}, + {"wk_better_volume_name", (DL_FUNC)&wk_better_volume_name, 1}, {"wk_better_volume_reset", (DL_FUNC)&wk_better_volume_reset, 1}, {"wk_bipower_variation_new", (DL_FUNC)&wk_bipower_variation_new, 1}, {"wk_bipower_variation_update", (DL_FUNC)&wk_bipower_variation_update, 2}, {"wk_bipower_variation_batch", (DL_FUNC)&wk_bipower_variation_batch, 2}, {"wk_bipower_variation_warmup_period", (DL_FUNC)&wk_bipower_variation_warmup_period, 1}, {"wk_bipower_variation_is_ready", (DL_FUNC)&wk_bipower_variation_is_ready, 1}, + {"wk_bipower_variation_name", (DL_FUNC)&wk_bipower_variation_name, 1}, {"wk_bipower_variation_reset", (DL_FUNC)&wk_bipower_variation_reset, 1}, {"wk_body_size_pct_new", (DL_FUNC)&wk_body_size_pct_new, 0}, {"wk_body_size_pct_update", (DL_FUNC)&wk_body_size_pct_update, 7}, {"wk_body_size_pct_batch", (DL_FUNC)&wk_body_size_pct_batch, 7}, {"wk_body_size_pct_warmup_period", (DL_FUNC)&wk_body_size_pct_warmup_period, 1}, {"wk_body_size_pct_is_ready", (DL_FUNC)&wk_body_size_pct_is_ready, 1}, + {"wk_body_size_pct_name", (DL_FUNC)&wk_body_size_pct_name, 1}, {"wk_body_size_pct_reset", (DL_FUNC)&wk_body_size_pct_reset, 1}, {"wk_bollinger_bands_new", (DL_FUNC)&wk_bollinger_bands_new, 2}, {"wk_bollinger_bands_update", (DL_FUNC)&wk_bollinger_bands_update, 2}, {"wk_bollinger_bands_warmup_period", (DL_FUNC)&wk_bollinger_bands_warmup_period, 1}, {"wk_bollinger_bands_is_ready", (DL_FUNC)&wk_bollinger_bands_is_ready, 1}, + {"wk_bollinger_bands_name", (DL_FUNC)&wk_bollinger_bands_name, 1}, {"wk_bollinger_bands_reset", (DL_FUNC)&wk_bollinger_bands_reset, 1}, {"wk_bollinger_bandwidth_new", (DL_FUNC)&wk_bollinger_bandwidth_new, 2}, {"wk_bollinger_bandwidth_update", (DL_FUNC)&wk_bollinger_bandwidth_update, 2}, {"wk_bollinger_bandwidth_batch", (DL_FUNC)&wk_bollinger_bandwidth_batch, 2}, {"wk_bollinger_bandwidth_warmup_period", (DL_FUNC)&wk_bollinger_bandwidth_warmup_period, 1}, {"wk_bollinger_bandwidth_is_ready", (DL_FUNC)&wk_bollinger_bandwidth_is_ready, 1}, + {"wk_bollinger_bandwidth_name", (DL_FUNC)&wk_bollinger_bandwidth_name, 1}, {"wk_bollinger_bandwidth_reset", (DL_FUNC)&wk_bollinger_bandwidth_reset, 1}, {"wk_bomar_bands_new", (DL_FUNC)&wk_bomar_bands_new, 2}, {"wk_bomar_bands_update", (DL_FUNC)&wk_bomar_bands_update, 2}, {"wk_bomar_bands_warmup_period", (DL_FUNC)&wk_bomar_bands_warmup_period, 1}, {"wk_bomar_bands_is_ready", (DL_FUNC)&wk_bomar_bands_is_ready, 1}, + {"wk_bomar_bands_name", (DL_FUNC)&wk_bomar_bands_name, 1}, {"wk_bomar_bands_reset", (DL_FUNC)&wk_bomar_bands_reset, 1}, {"wk_breadth_thrust_new", (DL_FUNC)&wk_breadth_thrust_new, 1}, {"wk_breadth_thrust_update", (DL_FUNC)&wk_breadth_thrust_update, 8}, {"wk_breadth_thrust_warmup_period", (DL_FUNC)&wk_breadth_thrust_warmup_period, 1}, {"wk_breadth_thrust_is_ready", (DL_FUNC)&wk_breadth_thrust_is_ready, 1}, + {"wk_breadth_thrust_name", (DL_FUNC)&wk_breadth_thrust_name, 1}, {"wk_breadth_thrust_reset", (DL_FUNC)&wk_breadth_thrust_reset, 1}, {"wk_breakaway_new", (DL_FUNC)&wk_breakaway_new, 0}, {"wk_breakaway_update", (DL_FUNC)&wk_breakaway_update, 7}, {"wk_breakaway_batch", (DL_FUNC)&wk_breakaway_batch, 7}, {"wk_breakaway_warmup_period", (DL_FUNC)&wk_breakaway_warmup_period, 1}, {"wk_breakaway_is_ready", (DL_FUNC)&wk_breakaway_is_ready, 1}, + {"wk_breakaway_name", (DL_FUNC)&wk_breakaway_name, 1}, {"wk_breakaway_reset", (DL_FUNC)&wk_breakaway_reset, 1}, {"wk_bullish_percent_index_new", (DL_FUNC)&wk_bullish_percent_index_new, 0}, {"wk_bullish_percent_index_update", (DL_FUNC)&wk_bullish_percent_index_update, 8}, {"wk_bullish_percent_index_warmup_period", (DL_FUNC)&wk_bullish_percent_index_warmup_period, 1}, {"wk_bullish_percent_index_is_ready", (DL_FUNC)&wk_bullish_percent_index_is_ready, 1}, + {"wk_bullish_percent_index_name", (DL_FUNC)&wk_bullish_percent_index_name, 1}, {"wk_bullish_percent_index_reset", (DL_FUNC)&wk_bullish_percent_index_reset, 1}, {"wk_burke_ratio_new", (DL_FUNC)&wk_burke_ratio_new, 1}, {"wk_burke_ratio_update", (DL_FUNC)&wk_burke_ratio_update, 2}, {"wk_burke_ratio_batch", (DL_FUNC)&wk_burke_ratio_batch, 2}, {"wk_burke_ratio_warmup_period", (DL_FUNC)&wk_burke_ratio_warmup_period, 1}, {"wk_burke_ratio_is_ready", (DL_FUNC)&wk_burke_ratio_is_ready, 1}, + {"wk_burke_ratio_name", (DL_FUNC)&wk_burke_ratio_name, 1}, {"wk_burke_ratio_reset", (DL_FUNC)&wk_burke_ratio_reset, 1}, {"wk_butterfly_new", (DL_FUNC)&wk_butterfly_new, 0}, {"wk_butterfly_update", (DL_FUNC)&wk_butterfly_update, 7}, {"wk_butterfly_batch", (DL_FUNC)&wk_butterfly_batch, 7}, {"wk_butterfly_warmup_period", (DL_FUNC)&wk_butterfly_warmup_period, 1}, {"wk_butterfly_is_ready", (DL_FUNC)&wk_butterfly_is_ready, 1}, + {"wk_butterfly_name", (DL_FUNC)&wk_butterfly_name, 1}, {"wk_butterfly_reset", (DL_FUNC)&wk_butterfly_reset, 1}, {"wk_calendar_spread_new", (DL_FUNC)&wk_calendar_spread_new, 0}, {"wk_calendar_spread_update", (DL_FUNC)&wk_calendar_spread_update, 13}, {"wk_calendar_spread_warmup_period", (DL_FUNC)&wk_calendar_spread_warmup_period, 1}, {"wk_calendar_spread_is_ready", (DL_FUNC)&wk_calendar_spread_is_ready, 1}, + {"wk_calendar_spread_name", (DL_FUNC)&wk_calendar_spread_name, 1}, {"wk_calendar_spread_reset", (DL_FUNC)&wk_calendar_spread_reset, 1}, {"wk_calmar_ratio_new", (DL_FUNC)&wk_calmar_ratio_new, 1}, {"wk_calmar_ratio_update", (DL_FUNC)&wk_calmar_ratio_update, 2}, {"wk_calmar_ratio_batch", (DL_FUNC)&wk_calmar_ratio_batch, 2}, {"wk_calmar_ratio_warmup_period", (DL_FUNC)&wk_calmar_ratio_warmup_period, 1}, {"wk_calmar_ratio_is_ready", (DL_FUNC)&wk_calmar_ratio_is_ready, 1}, + {"wk_calmar_ratio_name", (DL_FUNC)&wk_calmar_ratio_name, 1}, {"wk_calmar_ratio_reset", (DL_FUNC)&wk_calmar_ratio_reset, 1}, {"wk_camarilla_new", (DL_FUNC)&wk_camarilla_new, 0}, {"wk_camarilla_update", (DL_FUNC)&wk_camarilla_update, 7}, {"wk_camarilla_warmup_period", (DL_FUNC)&wk_camarilla_warmup_period, 1}, {"wk_camarilla_is_ready", (DL_FUNC)&wk_camarilla_is_ready, 1}, + {"wk_camarilla_name", (DL_FUNC)&wk_camarilla_name, 1}, {"wk_camarilla_reset", (DL_FUNC)&wk_camarilla_reset, 1}, {"wk_candle_volume_new", (DL_FUNC)&wk_candle_volume_new, 1}, {"wk_candle_volume_update", (DL_FUNC)&wk_candle_volume_update, 7}, {"wk_candle_volume_warmup_period", (DL_FUNC)&wk_candle_volume_warmup_period, 1}, {"wk_candle_volume_is_ready", (DL_FUNC)&wk_candle_volume_is_ready, 1}, + {"wk_candle_volume_name", (DL_FUNC)&wk_candle_volume_name, 1}, {"wk_candle_volume_reset", (DL_FUNC)&wk_candle_volume_reset, 1}, {"wk_cci_new", (DL_FUNC)&wk_cci_new, 1}, {"wk_cci_update", (DL_FUNC)&wk_cci_update, 7}, {"wk_cci_batch", (DL_FUNC)&wk_cci_batch, 7}, {"wk_cci_warmup_period", (DL_FUNC)&wk_cci_warmup_period, 1}, {"wk_cci_is_ready", (DL_FUNC)&wk_cci_is_ready, 1}, + {"wk_cci_name", (DL_FUNC)&wk_cci_name, 1}, {"wk_cci_reset", (DL_FUNC)&wk_cci_reset, 1}, {"wk_center_of_gravity_new", (DL_FUNC)&wk_center_of_gravity_new, 1}, {"wk_center_of_gravity_update", (DL_FUNC)&wk_center_of_gravity_update, 2}, {"wk_center_of_gravity_batch", (DL_FUNC)&wk_center_of_gravity_batch, 2}, {"wk_center_of_gravity_warmup_period", (DL_FUNC)&wk_center_of_gravity_warmup_period, 1}, {"wk_center_of_gravity_is_ready", (DL_FUNC)&wk_center_of_gravity_is_ready, 1}, + {"wk_center_of_gravity_name", (DL_FUNC)&wk_center_of_gravity_name, 1}, {"wk_center_of_gravity_reset", (DL_FUNC)&wk_center_of_gravity_reset, 1}, {"wk_central_pivot_range_new", (DL_FUNC)&wk_central_pivot_range_new, 0}, {"wk_central_pivot_range_update", (DL_FUNC)&wk_central_pivot_range_update, 7}, {"wk_central_pivot_range_warmup_period", (DL_FUNC)&wk_central_pivot_range_warmup_period, 1}, {"wk_central_pivot_range_is_ready", (DL_FUNC)&wk_central_pivot_range_is_ready, 1}, + {"wk_central_pivot_range_name", (DL_FUNC)&wk_central_pivot_range_name, 1}, {"wk_central_pivot_range_reset", (DL_FUNC)&wk_central_pivot_range_reset, 1}, {"wk_cfo_new", (DL_FUNC)&wk_cfo_new, 1}, {"wk_cfo_update", (DL_FUNC)&wk_cfo_update, 2}, {"wk_cfo_batch", (DL_FUNC)&wk_cfo_batch, 2}, {"wk_cfo_warmup_period", (DL_FUNC)&wk_cfo_warmup_period, 1}, {"wk_cfo_is_ready", (DL_FUNC)&wk_cfo_is_ready, 1}, + {"wk_cfo_name", (DL_FUNC)&wk_cfo_name, 1}, {"wk_cfo_reset", (DL_FUNC)&wk_cfo_reset, 1}, {"wk_chaikin_money_flow_new", (DL_FUNC)&wk_chaikin_money_flow_new, 1}, {"wk_chaikin_money_flow_update", (DL_FUNC)&wk_chaikin_money_flow_update, 7}, {"wk_chaikin_money_flow_batch", (DL_FUNC)&wk_chaikin_money_flow_batch, 7}, {"wk_chaikin_money_flow_warmup_period", (DL_FUNC)&wk_chaikin_money_flow_warmup_period, 1}, {"wk_chaikin_money_flow_is_ready", (DL_FUNC)&wk_chaikin_money_flow_is_ready, 1}, + {"wk_chaikin_money_flow_name", (DL_FUNC)&wk_chaikin_money_flow_name, 1}, {"wk_chaikin_money_flow_reset", (DL_FUNC)&wk_chaikin_money_flow_reset, 1}, {"wk_chaikin_oscillator_new", (DL_FUNC)&wk_chaikin_oscillator_new, 2}, {"wk_chaikin_oscillator_update", (DL_FUNC)&wk_chaikin_oscillator_update, 7}, {"wk_chaikin_oscillator_batch", (DL_FUNC)&wk_chaikin_oscillator_batch, 7}, {"wk_chaikin_oscillator_warmup_period", (DL_FUNC)&wk_chaikin_oscillator_warmup_period, 1}, {"wk_chaikin_oscillator_is_ready", (DL_FUNC)&wk_chaikin_oscillator_is_ready, 1}, + {"wk_chaikin_oscillator_name", (DL_FUNC)&wk_chaikin_oscillator_name, 1}, {"wk_chaikin_oscillator_reset", (DL_FUNC)&wk_chaikin_oscillator_reset, 1}, {"wk_chaikin_volatility_new", (DL_FUNC)&wk_chaikin_volatility_new, 2}, {"wk_chaikin_volatility_update", (DL_FUNC)&wk_chaikin_volatility_update, 7}, {"wk_chaikin_volatility_batch", (DL_FUNC)&wk_chaikin_volatility_batch, 7}, {"wk_chaikin_volatility_warmup_period", (DL_FUNC)&wk_chaikin_volatility_warmup_period, 1}, {"wk_chaikin_volatility_is_ready", (DL_FUNC)&wk_chaikin_volatility_is_ready, 1}, + {"wk_chaikin_volatility_name", (DL_FUNC)&wk_chaikin_volatility_name, 1}, {"wk_chaikin_volatility_reset", (DL_FUNC)&wk_chaikin_volatility_reset, 1}, {"wk_chande_kroll_stop_new", (DL_FUNC)&wk_chande_kroll_stop_new, 3}, {"wk_chande_kroll_stop_update", (DL_FUNC)&wk_chande_kroll_stop_update, 7}, {"wk_chande_kroll_stop_warmup_period", (DL_FUNC)&wk_chande_kroll_stop_warmup_period, 1}, {"wk_chande_kroll_stop_is_ready", (DL_FUNC)&wk_chande_kroll_stop_is_ready, 1}, + {"wk_chande_kroll_stop_name", (DL_FUNC)&wk_chande_kroll_stop_name, 1}, {"wk_chande_kroll_stop_reset", (DL_FUNC)&wk_chande_kroll_stop_reset, 1}, {"wk_chandelier_exit_new", (DL_FUNC)&wk_chandelier_exit_new, 2}, {"wk_chandelier_exit_update", (DL_FUNC)&wk_chandelier_exit_update, 7}, {"wk_chandelier_exit_warmup_period", (DL_FUNC)&wk_chandelier_exit_warmup_period, 1}, {"wk_chandelier_exit_is_ready", (DL_FUNC)&wk_chandelier_exit_is_ready, 1}, + {"wk_chandelier_exit_name", (DL_FUNC)&wk_chandelier_exit_name, 1}, {"wk_chandelier_exit_reset", (DL_FUNC)&wk_chandelier_exit_reset, 1}, {"wk_choppiness_index_new", (DL_FUNC)&wk_choppiness_index_new, 1}, {"wk_choppiness_index_update", (DL_FUNC)&wk_choppiness_index_update, 7}, {"wk_choppiness_index_batch", (DL_FUNC)&wk_choppiness_index_batch, 7}, {"wk_choppiness_index_warmup_period", (DL_FUNC)&wk_choppiness_index_warmup_period, 1}, {"wk_choppiness_index_is_ready", (DL_FUNC)&wk_choppiness_index_is_ready, 1}, + {"wk_choppiness_index_name", (DL_FUNC)&wk_choppiness_index_name, 1}, {"wk_choppiness_index_reset", (DL_FUNC)&wk_choppiness_index_reset, 1}, {"wk_classic_pivots_new", (DL_FUNC)&wk_classic_pivots_new, 0}, {"wk_classic_pivots_update", (DL_FUNC)&wk_classic_pivots_update, 7}, {"wk_classic_pivots_warmup_period", (DL_FUNC)&wk_classic_pivots_warmup_period, 1}, {"wk_classic_pivots_is_ready", (DL_FUNC)&wk_classic_pivots_is_ready, 1}, + {"wk_classic_pivots_name", (DL_FUNC)&wk_classic_pivots_name, 1}, {"wk_classic_pivots_reset", (DL_FUNC)&wk_classic_pivots_reset, 1}, {"wk_close_vs_open_new", (DL_FUNC)&wk_close_vs_open_new, 0}, {"wk_close_vs_open_update", (DL_FUNC)&wk_close_vs_open_update, 7}, {"wk_close_vs_open_batch", (DL_FUNC)&wk_close_vs_open_batch, 7}, {"wk_close_vs_open_warmup_period", (DL_FUNC)&wk_close_vs_open_warmup_period, 1}, {"wk_close_vs_open_is_ready", (DL_FUNC)&wk_close_vs_open_is_ready, 1}, + {"wk_close_vs_open_name", (DL_FUNC)&wk_close_vs_open_name, 1}, {"wk_close_vs_open_reset", (DL_FUNC)&wk_close_vs_open_reset, 1}, {"wk_closing_marubozu_new", (DL_FUNC)&wk_closing_marubozu_new, 0}, {"wk_closing_marubozu_update", (DL_FUNC)&wk_closing_marubozu_update, 7}, {"wk_closing_marubozu_batch", (DL_FUNC)&wk_closing_marubozu_batch, 7}, {"wk_closing_marubozu_warmup_period", (DL_FUNC)&wk_closing_marubozu_warmup_period, 1}, {"wk_closing_marubozu_is_ready", (DL_FUNC)&wk_closing_marubozu_is_ready, 1}, + {"wk_closing_marubozu_name", (DL_FUNC)&wk_closing_marubozu_name, 1}, {"wk_closing_marubozu_reset", (DL_FUNC)&wk_closing_marubozu_reset, 1}, {"wk_cmo_new", (DL_FUNC)&wk_cmo_new, 1}, {"wk_cmo_update", (DL_FUNC)&wk_cmo_update, 2}, {"wk_cmo_batch", (DL_FUNC)&wk_cmo_batch, 2}, {"wk_cmo_warmup_period", (DL_FUNC)&wk_cmo_warmup_period, 1}, {"wk_cmo_is_ready", (DL_FUNC)&wk_cmo_is_ready, 1}, + {"wk_cmo_name", (DL_FUNC)&wk_cmo_name, 1}, {"wk_cmo_reset", (DL_FUNC)&wk_cmo_reset, 1}, {"wk_coefficient_of_variation_new", (DL_FUNC)&wk_coefficient_of_variation_new, 1}, {"wk_coefficient_of_variation_update", (DL_FUNC)&wk_coefficient_of_variation_update, 2}, {"wk_coefficient_of_variation_batch", (DL_FUNC)&wk_coefficient_of_variation_batch, 2}, {"wk_coefficient_of_variation_warmup_period", (DL_FUNC)&wk_coefficient_of_variation_warmup_period, 1}, {"wk_coefficient_of_variation_is_ready", (DL_FUNC)&wk_coefficient_of_variation_is_ready, 1}, + {"wk_coefficient_of_variation_name", (DL_FUNC)&wk_coefficient_of_variation_name, 1}, {"wk_coefficient_of_variation_reset", (DL_FUNC)&wk_coefficient_of_variation_reset, 1}, {"wk_cointegration_new", (DL_FUNC)&wk_cointegration_new, 2}, {"wk_cointegration_update", (DL_FUNC)&wk_cointegration_update, 3}, {"wk_cointegration_warmup_period", (DL_FUNC)&wk_cointegration_warmup_period, 1}, {"wk_cointegration_is_ready", (DL_FUNC)&wk_cointegration_is_ready, 1}, + {"wk_cointegration_name", (DL_FUNC)&wk_cointegration_name, 1}, {"wk_cointegration_reset", (DL_FUNC)&wk_cointegration_reset, 1}, {"wk_common_sense_ratio_new", (DL_FUNC)&wk_common_sense_ratio_new, 1}, {"wk_common_sense_ratio_update", (DL_FUNC)&wk_common_sense_ratio_update, 2}, {"wk_common_sense_ratio_batch", (DL_FUNC)&wk_common_sense_ratio_batch, 2}, {"wk_common_sense_ratio_warmup_period", (DL_FUNC)&wk_common_sense_ratio_warmup_period, 1}, {"wk_common_sense_ratio_is_ready", (DL_FUNC)&wk_common_sense_ratio_is_ready, 1}, + {"wk_common_sense_ratio_name", (DL_FUNC)&wk_common_sense_ratio_name, 1}, {"wk_common_sense_ratio_reset", (DL_FUNC)&wk_common_sense_ratio_reset, 1}, {"wk_composite_profile_new", (DL_FUNC)&wk_composite_profile_new, 3}, {"wk_composite_profile_update", (DL_FUNC)&wk_composite_profile_update, 7}, {"wk_composite_profile_warmup_period", (DL_FUNC)&wk_composite_profile_warmup_period, 1}, {"wk_composite_profile_is_ready", (DL_FUNC)&wk_composite_profile_is_ready, 1}, + {"wk_composite_profile_name", (DL_FUNC)&wk_composite_profile_name, 1}, {"wk_composite_profile_reset", (DL_FUNC)&wk_composite_profile_reset, 1}, {"wk_concealing_baby_swallow_new", (DL_FUNC)&wk_concealing_baby_swallow_new, 0}, {"wk_concealing_baby_swallow_update", (DL_FUNC)&wk_concealing_baby_swallow_update, 7}, {"wk_concealing_baby_swallow_batch", (DL_FUNC)&wk_concealing_baby_swallow_batch, 7}, {"wk_concealing_baby_swallow_warmup_period", (DL_FUNC)&wk_concealing_baby_swallow_warmup_period, 1}, {"wk_concealing_baby_swallow_is_ready", (DL_FUNC)&wk_concealing_baby_swallow_is_ready, 1}, + {"wk_concealing_baby_swallow_name", (DL_FUNC)&wk_concealing_baby_swallow_name, 1}, {"wk_concealing_baby_swallow_reset", (DL_FUNC)&wk_concealing_baby_swallow_reset, 1}, {"wk_conditional_value_at_risk_new", (DL_FUNC)&wk_conditional_value_at_risk_new, 2}, {"wk_conditional_value_at_risk_update", (DL_FUNC)&wk_conditional_value_at_risk_update, 2}, {"wk_conditional_value_at_risk_batch", (DL_FUNC)&wk_conditional_value_at_risk_batch, 2}, {"wk_conditional_value_at_risk_warmup_period", (DL_FUNC)&wk_conditional_value_at_risk_warmup_period, 1}, {"wk_conditional_value_at_risk_is_ready", (DL_FUNC)&wk_conditional_value_at_risk_is_ready, 1}, + {"wk_conditional_value_at_risk_name", (DL_FUNC)&wk_conditional_value_at_risk_name, 1}, {"wk_conditional_value_at_risk_reset", (DL_FUNC)&wk_conditional_value_at_risk_reset, 1}, {"wk_connors_rsi_new", (DL_FUNC)&wk_connors_rsi_new, 3}, {"wk_connors_rsi_update", (DL_FUNC)&wk_connors_rsi_update, 2}, {"wk_connors_rsi_batch", (DL_FUNC)&wk_connors_rsi_batch, 2}, {"wk_connors_rsi_warmup_period", (DL_FUNC)&wk_connors_rsi_warmup_period, 1}, {"wk_connors_rsi_is_ready", (DL_FUNC)&wk_connors_rsi_is_ready, 1}, + {"wk_connors_rsi_name", (DL_FUNC)&wk_connors_rsi_name, 1}, {"wk_connors_rsi_reset", (DL_FUNC)&wk_connors_rsi_reset, 1}, {"wk_coppock_new", (DL_FUNC)&wk_coppock_new, 3}, {"wk_coppock_update", (DL_FUNC)&wk_coppock_update, 2}, {"wk_coppock_batch", (DL_FUNC)&wk_coppock_batch, 2}, {"wk_coppock_warmup_period", (DL_FUNC)&wk_coppock_warmup_period, 1}, {"wk_coppock_is_ready", (DL_FUNC)&wk_coppock_is_ready, 1}, + {"wk_coppock_name", (DL_FUNC)&wk_coppock_name, 1}, {"wk_coppock_reset", (DL_FUNC)&wk_coppock_reset, 1}, {"wk_correlation_trend_indicator_new", (DL_FUNC)&wk_correlation_trend_indicator_new, 1}, {"wk_correlation_trend_indicator_update", (DL_FUNC)&wk_correlation_trend_indicator_update, 2}, {"wk_correlation_trend_indicator_batch", (DL_FUNC)&wk_correlation_trend_indicator_batch, 2}, {"wk_correlation_trend_indicator_warmup_period", (DL_FUNC)&wk_correlation_trend_indicator_warmup_period, 1}, {"wk_correlation_trend_indicator_is_ready", (DL_FUNC)&wk_correlation_trend_indicator_is_ready, 1}, + {"wk_correlation_trend_indicator_name", (DL_FUNC)&wk_correlation_trend_indicator_name, 1}, {"wk_correlation_trend_indicator_reset", (DL_FUNC)&wk_correlation_trend_indicator_reset, 1}, {"wk_counterattack_new", (DL_FUNC)&wk_counterattack_new, 0}, {"wk_counterattack_update", (DL_FUNC)&wk_counterattack_update, 7}, {"wk_counterattack_batch", (DL_FUNC)&wk_counterattack_batch, 7}, {"wk_counterattack_warmup_period", (DL_FUNC)&wk_counterattack_warmup_period, 1}, {"wk_counterattack_is_ready", (DL_FUNC)&wk_counterattack_is_ready, 1}, + {"wk_counterattack_name", (DL_FUNC)&wk_counterattack_name, 1}, {"wk_counterattack_reset", (DL_FUNC)&wk_counterattack_reset, 1}, {"wk_crab_new", (DL_FUNC)&wk_crab_new, 0}, {"wk_crab_update", (DL_FUNC)&wk_crab_update, 7}, {"wk_crab_batch", (DL_FUNC)&wk_crab_batch, 7}, {"wk_crab_warmup_period", (DL_FUNC)&wk_crab_warmup_period, 1}, {"wk_crab_is_ready", (DL_FUNC)&wk_crab_is_ready, 1}, + {"wk_crab_name", (DL_FUNC)&wk_crab_name, 1}, {"wk_crab_reset", (DL_FUNC)&wk_crab_reset, 1}, {"wk_cumulative_volume_delta_new", (DL_FUNC)&wk_cumulative_volume_delta_new, 0}, {"wk_cumulative_volume_delta_update", (DL_FUNC)&wk_cumulative_volume_delta_update, 5}, {"wk_cumulative_volume_delta_warmup_period", (DL_FUNC)&wk_cumulative_volume_delta_warmup_period, 1}, {"wk_cumulative_volume_delta_is_ready", (DL_FUNC)&wk_cumulative_volume_delta_is_ready, 1}, + {"wk_cumulative_volume_delta_name", (DL_FUNC)&wk_cumulative_volume_delta_name, 1}, {"wk_cumulative_volume_delta_reset", (DL_FUNC)&wk_cumulative_volume_delta_reset, 1}, {"wk_cumulative_volume_index_new", (DL_FUNC)&wk_cumulative_volume_index_new, 0}, {"wk_cumulative_volume_index_update", (DL_FUNC)&wk_cumulative_volume_index_update, 8}, {"wk_cumulative_volume_index_warmup_period", (DL_FUNC)&wk_cumulative_volume_index_warmup_period, 1}, {"wk_cumulative_volume_index_is_ready", (DL_FUNC)&wk_cumulative_volume_index_is_ready, 1}, + {"wk_cumulative_volume_index_name", (DL_FUNC)&wk_cumulative_volume_index_name, 1}, {"wk_cumulative_volume_index_reset", (DL_FUNC)&wk_cumulative_volume_index_reset, 1}, {"wk_cup_and_handle_new", (DL_FUNC)&wk_cup_and_handle_new, 0}, {"wk_cup_and_handle_update", (DL_FUNC)&wk_cup_and_handle_update, 7}, {"wk_cup_and_handle_batch", (DL_FUNC)&wk_cup_and_handle_batch, 7}, {"wk_cup_and_handle_warmup_period", (DL_FUNC)&wk_cup_and_handle_warmup_period, 1}, {"wk_cup_and_handle_is_ready", (DL_FUNC)&wk_cup_and_handle_is_ready, 1}, + {"wk_cup_and_handle_name", (DL_FUNC)&wk_cup_and_handle_name, 1}, {"wk_cup_and_handle_reset", (DL_FUNC)&wk_cup_and_handle_reset, 1}, {"wk_cybernetic_cycle_new", (DL_FUNC)&wk_cybernetic_cycle_new, 1}, {"wk_cybernetic_cycle_update", (DL_FUNC)&wk_cybernetic_cycle_update, 2}, {"wk_cybernetic_cycle_batch", (DL_FUNC)&wk_cybernetic_cycle_batch, 2}, {"wk_cybernetic_cycle_warmup_period", (DL_FUNC)&wk_cybernetic_cycle_warmup_period, 1}, {"wk_cybernetic_cycle_is_ready", (DL_FUNC)&wk_cybernetic_cycle_is_ready, 1}, + {"wk_cybernetic_cycle_name", (DL_FUNC)&wk_cybernetic_cycle_name, 1}, {"wk_cybernetic_cycle_reset", (DL_FUNC)&wk_cybernetic_cycle_reset, 1}, {"wk_cypher_new", (DL_FUNC)&wk_cypher_new, 0}, {"wk_cypher_update", (DL_FUNC)&wk_cypher_update, 7}, {"wk_cypher_batch", (DL_FUNC)&wk_cypher_batch, 7}, {"wk_cypher_warmup_period", (DL_FUNC)&wk_cypher_warmup_period, 1}, {"wk_cypher_is_ready", (DL_FUNC)&wk_cypher_is_ready, 1}, + {"wk_cypher_name", (DL_FUNC)&wk_cypher_name, 1}, {"wk_cypher_reset", (DL_FUNC)&wk_cypher_reset, 1}, {"wk_day_of_week_profile_new", (DL_FUNC)&wk_day_of_week_profile_new, 1}, {"wk_day_of_week_profile_update", (DL_FUNC)&wk_day_of_week_profile_update, 8}, {"wk_day_of_week_profile_warmup_period", (DL_FUNC)&wk_day_of_week_profile_warmup_period, 1}, {"wk_day_of_week_profile_is_ready", (DL_FUNC)&wk_day_of_week_profile_is_ready, 1}, + {"wk_day_of_week_profile_name", (DL_FUNC)&wk_day_of_week_profile_name, 1}, {"wk_day_of_week_profile_reset", (DL_FUNC)&wk_day_of_week_profile_reset, 1}, {"wk_decycler_new", (DL_FUNC)&wk_decycler_new, 1}, {"wk_decycler_update", (DL_FUNC)&wk_decycler_update, 2}, {"wk_decycler_batch", (DL_FUNC)&wk_decycler_batch, 2}, {"wk_decycler_warmup_period", (DL_FUNC)&wk_decycler_warmup_period, 1}, {"wk_decycler_is_ready", (DL_FUNC)&wk_decycler_is_ready, 1}, + {"wk_decycler_name", (DL_FUNC)&wk_decycler_name, 1}, {"wk_decycler_reset", (DL_FUNC)&wk_decycler_reset, 1}, {"wk_decycler_oscillator_new", (DL_FUNC)&wk_decycler_oscillator_new, 2}, {"wk_decycler_oscillator_update", (DL_FUNC)&wk_decycler_oscillator_update, 2}, {"wk_decycler_oscillator_batch", (DL_FUNC)&wk_decycler_oscillator_batch, 2}, {"wk_decycler_oscillator_warmup_period", (DL_FUNC)&wk_decycler_oscillator_warmup_period, 1}, {"wk_decycler_oscillator_is_ready", (DL_FUNC)&wk_decycler_oscillator_is_ready, 1}, + {"wk_decycler_oscillator_name", (DL_FUNC)&wk_decycler_oscillator_name, 1}, {"wk_decycler_oscillator_reset", (DL_FUNC)&wk_decycler_oscillator_reset, 1}, {"wk_dema_new", (DL_FUNC)&wk_dema_new, 1}, {"wk_dema_update", (DL_FUNC)&wk_dema_update, 2}, {"wk_dema_batch", (DL_FUNC)&wk_dema_batch, 2}, {"wk_dema_warmup_period", (DL_FUNC)&wk_dema_warmup_period, 1}, {"wk_dema_is_ready", (DL_FUNC)&wk_dema_is_ready, 1}, + {"wk_dema_name", (DL_FUNC)&wk_dema_name, 1}, {"wk_dema_reset", (DL_FUNC)&wk_dema_reset, 1}, {"wk_demand_index_new", (DL_FUNC)&wk_demand_index_new, 1}, {"wk_demand_index_update", (DL_FUNC)&wk_demand_index_update, 7}, {"wk_demand_index_batch", (DL_FUNC)&wk_demand_index_batch, 7}, {"wk_demand_index_warmup_period", (DL_FUNC)&wk_demand_index_warmup_period, 1}, {"wk_demand_index_is_ready", (DL_FUNC)&wk_demand_index_is_ready, 1}, + {"wk_demand_index_name", (DL_FUNC)&wk_demand_index_name, 1}, {"wk_demand_index_reset", (DL_FUNC)&wk_demand_index_reset, 1}, {"wk_demark_pivots_new", (DL_FUNC)&wk_demark_pivots_new, 0}, {"wk_demark_pivots_update", (DL_FUNC)&wk_demark_pivots_update, 7}, {"wk_demark_pivots_warmup_period", (DL_FUNC)&wk_demark_pivots_warmup_period, 1}, {"wk_demark_pivots_is_ready", (DL_FUNC)&wk_demark_pivots_is_ready, 1}, + {"wk_demark_pivots_name", (DL_FUNC)&wk_demark_pivots_name, 1}, {"wk_demark_pivots_reset", (DL_FUNC)&wk_demark_pivots_reset, 1}, {"wk_depth_slope_new", (DL_FUNC)&wk_depth_slope_new, 0}, {"wk_depth_slope_update", (DL_FUNC)&wk_depth_slope_update, 5}, {"wk_depth_slope_warmup_period", (DL_FUNC)&wk_depth_slope_warmup_period, 1}, {"wk_depth_slope_is_ready", (DL_FUNC)&wk_depth_slope_is_ready, 1}, + {"wk_depth_slope_name", (DL_FUNC)&wk_depth_slope_name, 1}, {"wk_depth_slope_reset", (DL_FUNC)&wk_depth_slope_reset, 1}, {"wk_derivative_oscillator_new", (DL_FUNC)&wk_derivative_oscillator_new, 4}, {"wk_derivative_oscillator_update", (DL_FUNC)&wk_derivative_oscillator_update, 2}, {"wk_derivative_oscillator_batch", (DL_FUNC)&wk_derivative_oscillator_batch, 2}, {"wk_derivative_oscillator_warmup_period", (DL_FUNC)&wk_derivative_oscillator_warmup_period, 1}, {"wk_derivative_oscillator_is_ready", (DL_FUNC)&wk_derivative_oscillator_is_ready, 1}, + {"wk_derivative_oscillator_name", (DL_FUNC)&wk_derivative_oscillator_name, 1}, {"wk_derivative_oscillator_reset", (DL_FUNC)&wk_derivative_oscillator_reset, 1}, {"wk_detrended_std_dev_new", (DL_FUNC)&wk_detrended_std_dev_new, 1}, {"wk_detrended_std_dev_update", (DL_FUNC)&wk_detrended_std_dev_update, 2}, {"wk_detrended_std_dev_batch", (DL_FUNC)&wk_detrended_std_dev_batch, 2}, {"wk_detrended_std_dev_warmup_period", (DL_FUNC)&wk_detrended_std_dev_warmup_period, 1}, {"wk_detrended_std_dev_is_ready", (DL_FUNC)&wk_detrended_std_dev_is_ready, 1}, + {"wk_detrended_std_dev_name", (DL_FUNC)&wk_detrended_std_dev_name, 1}, {"wk_detrended_std_dev_reset", (DL_FUNC)&wk_detrended_std_dev_reset, 1}, {"wk_disparity_index_new", (DL_FUNC)&wk_disparity_index_new, 1}, {"wk_disparity_index_update", (DL_FUNC)&wk_disparity_index_update, 2}, {"wk_disparity_index_batch", (DL_FUNC)&wk_disparity_index_batch, 2}, {"wk_disparity_index_warmup_period", (DL_FUNC)&wk_disparity_index_warmup_period, 1}, {"wk_disparity_index_is_ready", (DL_FUNC)&wk_disparity_index_is_ready, 1}, + {"wk_disparity_index_name", (DL_FUNC)&wk_disparity_index_name, 1}, {"wk_disparity_index_reset", (DL_FUNC)&wk_disparity_index_reset, 1}, {"wk_distance_ssd_new", (DL_FUNC)&wk_distance_ssd_new, 1}, {"wk_distance_ssd_update", (DL_FUNC)&wk_distance_ssd_update, 3}, {"wk_distance_ssd_batch", (DL_FUNC)&wk_distance_ssd_batch, 3}, {"wk_distance_ssd_warmup_period", (DL_FUNC)&wk_distance_ssd_warmup_period, 1}, {"wk_distance_ssd_is_ready", (DL_FUNC)&wk_distance_ssd_is_ready, 1}, + {"wk_distance_ssd_name", (DL_FUNC)&wk_distance_ssd_name, 1}, {"wk_distance_ssd_reset", (DL_FUNC)&wk_distance_ssd_reset, 1}, {"wk_doji_new", (DL_FUNC)&wk_doji_new, 0}, {"wk_doji_update", (DL_FUNC)&wk_doji_update, 7}, {"wk_doji_batch", (DL_FUNC)&wk_doji_batch, 7}, {"wk_doji_warmup_period", (DL_FUNC)&wk_doji_warmup_period, 1}, {"wk_doji_is_ready", (DL_FUNC)&wk_doji_is_ready, 1}, + {"wk_doji_name", (DL_FUNC)&wk_doji_name, 1}, {"wk_doji_reset", (DL_FUNC)&wk_doji_reset, 1}, {"wk_doji_star_new", (DL_FUNC)&wk_doji_star_new, 0}, {"wk_doji_star_update", (DL_FUNC)&wk_doji_star_update, 7}, {"wk_doji_star_batch", (DL_FUNC)&wk_doji_star_batch, 7}, {"wk_doji_star_warmup_period", (DL_FUNC)&wk_doji_star_warmup_period, 1}, {"wk_doji_star_is_ready", (DL_FUNC)&wk_doji_star_is_ready, 1}, + {"wk_doji_star_name", (DL_FUNC)&wk_doji_star_name, 1}, {"wk_doji_star_reset", (DL_FUNC)&wk_doji_star_reset, 1}, {"wk_dollar_bars_new", (DL_FUNC)&wk_dollar_bars_new, 1}, {"wk_dollar_bars_update", (DL_FUNC)&wk_dollar_bars_update, 7}, + {"wk_dollar_bars_name", (DL_FUNC)&wk_dollar_bars_name, 1}, {"wk_dollar_bars_reset", (DL_FUNC)&wk_dollar_bars_reset, 1}, {"wk_donchian_new", (DL_FUNC)&wk_donchian_new, 1}, {"wk_donchian_update", (DL_FUNC)&wk_donchian_update, 7}, {"wk_donchian_warmup_period", (DL_FUNC)&wk_donchian_warmup_period, 1}, {"wk_donchian_is_ready", (DL_FUNC)&wk_donchian_is_ready, 1}, + {"wk_donchian_name", (DL_FUNC)&wk_donchian_name, 1}, {"wk_donchian_reset", (DL_FUNC)&wk_donchian_reset, 1}, {"wk_donchian_stop_new", (DL_FUNC)&wk_donchian_stop_new, 1}, {"wk_donchian_stop_update", (DL_FUNC)&wk_donchian_stop_update, 7}, {"wk_donchian_stop_warmup_period", (DL_FUNC)&wk_donchian_stop_warmup_period, 1}, {"wk_donchian_stop_is_ready", (DL_FUNC)&wk_donchian_stop_is_ready, 1}, + {"wk_donchian_stop_name", (DL_FUNC)&wk_donchian_stop_name, 1}, {"wk_donchian_stop_reset", (DL_FUNC)&wk_donchian_stop_reset, 1}, {"wk_double_bollinger_new", (DL_FUNC)&wk_double_bollinger_new, 3}, {"wk_double_bollinger_update", (DL_FUNC)&wk_double_bollinger_update, 2}, {"wk_double_bollinger_warmup_period", (DL_FUNC)&wk_double_bollinger_warmup_period, 1}, {"wk_double_bollinger_is_ready", (DL_FUNC)&wk_double_bollinger_is_ready, 1}, + {"wk_double_bollinger_name", (DL_FUNC)&wk_double_bollinger_name, 1}, {"wk_double_bollinger_reset", (DL_FUNC)&wk_double_bollinger_reset, 1}, {"wk_double_top_bottom_new", (DL_FUNC)&wk_double_top_bottom_new, 0}, {"wk_double_top_bottom_update", (DL_FUNC)&wk_double_top_bottom_update, 7}, {"wk_double_top_bottom_batch", (DL_FUNC)&wk_double_top_bottom_batch, 7}, {"wk_double_top_bottom_warmup_period", (DL_FUNC)&wk_double_top_bottom_warmup_period, 1}, {"wk_double_top_bottom_is_ready", (DL_FUNC)&wk_double_top_bottom_is_ready, 1}, + {"wk_double_top_bottom_name", (DL_FUNC)&wk_double_top_bottom_name, 1}, {"wk_double_top_bottom_reset", (DL_FUNC)&wk_double_top_bottom_reset, 1}, {"wk_downside_gap_three_methods_new", (DL_FUNC)&wk_downside_gap_three_methods_new, 0}, {"wk_downside_gap_three_methods_update", (DL_FUNC)&wk_downside_gap_three_methods_update, 7}, {"wk_downside_gap_three_methods_batch", (DL_FUNC)&wk_downside_gap_three_methods_batch, 7}, {"wk_downside_gap_three_methods_warmup_period", (DL_FUNC)&wk_downside_gap_three_methods_warmup_period, 1}, {"wk_downside_gap_three_methods_is_ready", (DL_FUNC)&wk_downside_gap_three_methods_is_ready, 1}, + {"wk_downside_gap_three_methods_name", (DL_FUNC)&wk_downside_gap_three_methods_name, 1}, {"wk_downside_gap_three_methods_reset", (DL_FUNC)&wk_downside_gap_three_methods_reset, 1}, {"wk_dpo_new", (DL_FUNC)&wk_dpo_new, 1}, {"wk_dpo_update", (DL_FUNC)&wk_dpo_update, 2}, {"wk_dpo_batch", (DL_FUNC)&wk_dpo_batch, 2}, {"wk_dpo_warmup_period", (DL_FUNC)&wk_dpo_warmup_period, 1}, {"wk_dpo_is_ready", (DL_FUNC)&wk_dpo_is_ready, 1}, + {"wk_dpo_name", (DL_FUNC)&wk_dpo_name, 1}, {"wk_dpo_reset", (DL_FUNC)&wk_dpo_reset, 1}, {"wk_dragonfly_doji_new", (DL_FUNC)&wk_dragonfly_doji_new, 0}, {"wk_dragonfly_doji_update", (DL_FUNC)&wk_dragonfly_doji_update, 7}, {"wk_dragonfly_doji_batch", (DL_FUNC)&wk_dragonfly_doji_batch, 7}, {"wk_dragonfly_doji_warmup_period", (DL_FUNC)&wk_dragonfly_doji_warmup_period, 1}, {"wk_dragonfly_doji_is_ready", (DL_FUNC)&wk_dragonfly_doji_is_ready, 1}, + {"wk_dragonfly_doji_name", (DL_FUNC)&wk_dragonfly_doji_name, 1}, {"wk_dragonfly_doji_reset", (DL_FUNC)&wk_dragonfly_doji_reset, 1}, {"wk_drawdown_duration_new", (DL_FUNC)&wk_drawdown_duration_new, 0}, {"wk_drawdown_duration_update", (DL_FUNC)&wk_drawdown_duration_update, 2}, {"wk_drawdown_duration_batch", (DL_FUNC)&wk_drawdown_duration_batch, 2}, {"wk_drawdown_duration_warmup_period", (DL_FUNC)&wk_drawdown_duration_warmup_period, 1}, {"wk_drawdown_duration_is_ready", (DL_FUNC)&wk_drawdown_duration_is_ready, 1}, + {"wk_drawdown_duration_name", (DL_FUNC)&wk_drawdown_duration_name, 1}, {"wk_drawdown_duration_reset", (DL_FUNC)&wk_drawdown_duration_reset, 1}, {"wk_dumpling_top_new", (DL_FUNC)&wk_dumpling_top_new, 1}, {"wk_dumpling_top_update", (DL_FUNC)&wk_dumpling_top_update, 7}, {"wk_dumpling_top_batch", (DL_FUNC)&wk_dumpling_top_batch, 7}, {"wk_dumpling_top_warmup_period", (DL_FUNC)&wk_dumpling_top_warmup_period, 1}, {"wk_dumpling_top_is_ready", (DL_FUNC)&wk_dumpling_top_is_ready, 1}, + {"wk_dumpling_top_name", (DL_FUNC)&wk_dumpling_top_name, 1}, {"wk_dumpling_top_reset", (DL_FUNC)&wk_dumpling_top_reset, 1}, {"wk_dx_new", (DL_FUNC)&wk_dx_new, 1}, {"wk_dx_update", (DL_FUNC)&wk_dx_update, 7}, {"wk_dx_batch", (DL_FUNC)&wk_dx_batch, 7}, {"wk_dx_warmup_period", (DL_FUNC)&wk_dx_warmup_period, 1}, {"wk_dx_is_ready", (DL_FUNC)&wk_dx_is_ready, 1}, + {"wk_dx_name", (DL_FUNC)&wk_dx_name, 1}, {"wk_dx_reset", (DL_FUNC)&wk_dx_reset, 1}, {"wk_dynamic_momentum_index_new", (DL_FUNC)&wk_dynamic_momentum_index_new, 1}, {"wk_dynamic_momentum_index_update", (DL_FUNC)&wk_dynamic_momentum_index_update, 2}, {"wk_dynamic_momentum_index_batch", (DL_FUNC)&wk_dynamic_momentum_index_batch, 2}, {"wk_dynamic_momentum_index_warmup_period", (DL_FUNC)&wk_dynamic_momentum_index_warmup_period, 1}, {"wk_dynamic_momentum_index_is_ready", (DL_FUNC)&wk_dynamic_momentum_index_is_ready, 1}, + {"wk_dynamic_momentum_index_name", (DL_FUNC)&wk_dynamic_momentum_index_name, 1}, {"wk_dynamic_momentum_index_reset", (DL_FUNC)&wk_dynamic_momentum_index_reset, 1}, {"wk_ease_of_movement_new", (DL_FUNC)&wk_ease_of_movement_new, 1}, {"wk_ease_of_movement_update", (DL_FUNC)&wk_ease_of_movement_update, 7}, {"wk_ease_of_movement_batch", (DL_FUNC)&wk_ease_of_movement_batch, 7}, {"wk_ease_of_movement_warmup_period", (DL_FUNC)&wk_ease_of_movement_warmup_period, 1}, {"wk_ease_of_movement_is_ready", (DL_FUNC)&wk_ease_of_movement_is_ready, 1}, + {"wk_ease_of_movement_name", (DL_FUNC)&wk_ease_of_movement_name, 1}, {"wk_ease_of_movement_reset", (DL_FUNC)&wk_ease_of_movement_reset, 1}, {"wk_effective_spread_new", (DL_FUNC)&wk_effective_spread_new, 0}, {"wk_effective_spread_update", (DL_FUNC)&wk_effective_spread_update, 6}, {"wk_effective_spread_warmup_period", (DL_FUNC)&wk_effective_spread_warmup_period, 1}, {"wk_effective_spread_is_ready", (DL_FUNC)&wk_effective_spread_is_ready, 1}, + {"wk_effective_spread_name", (DL_FUNC)&wk_effective_spread_name, 1}, {"wk_effective_spread_reset", (DL_FUNC)&wk_effective_spread_reset, 1}, {"wk_ehlers_stochastic_new", (DL_FUNC)&wk_ehlers_stochastic_new, 1}, {"wk_ehlers_stochastic_update", (DL_FUNC)&wk_ehlers_stochastic_update, 2}, {"wk_ehlers_stochastic_batch", (DL_FUNC)&wk_ehlers_stochastic_batch, 2}, {"wk_ehlers_stochastic_warmup_period", (DL_FUNC)&wk_ehlers_stochastic_warmup_period, 1}, {"wk_ehlers_stochastic_is_ready", (DL_FUNC)&wk_ehlers_stochastic_is_ready, 1}, + {"wk_ehlers_stochastic_name", (DL_FUNC)&wk_ehlers_stochastic_name, 1}, {"wk_ehlers_stochastic_reset", (DL_FUNC)&wk_ehlers_stochastic_reset, 1}, {"wk_ehma_new", (DL_FUNC)&wk_ehma_new, 1}, {"wk_ehma_update", (DL_FUNC)&wk_ehma_update, 2}, {"wk_ehma_batch", (DL_FUNC)&wk_ehma_batch, 2}, {"wk_ehma_warmup_period", (DL_FUNC)&wk_ehma_warmup_period, 1}, {"wk_ehma_is_ready", (DL_FUNC)&wk_ehma_is_ready, 1}, + {"wk_ehma_name", (DL_FUNC)&wk_ehma_name, 1}, {"wk_ehma_reset", (DL_FUNC)&wk_ehma_reset, 1}, {"wk_elder_impulse_new", (DL_FUNC)&wk_elder_impulse_new, 4}, {"wk_elder_impulse_update", (DL_FUNC)&wk_elder_impulse_update, 2}, {"wk_elder_impulse_batch", (DL_FUNC)&wk_elder_impulse_batch, 2}, {"wk_elder_impulse_warmup_period", (DL_FUNC)&wk_elder_impulse_warmup_period, 1}, {"wk_elder_impulse_is_ready", (DL_FUNC)&wk_elder_impulse_is_ready, 1}, + {"wk_elder_impulse_name", (DL_FUNC)&wk_elder_impulse_name, 1}, {"wk_elder_impulse_reset", (DL_FUNC)&wk_elder_impulse_reset, 1}, {"wk_elder_ray_new", (DL_FUNC)&wk_elder_ray_new, 1}, {"wk_elder_ray_update", (DL_FUNC)&wk_elder_ray_update, 7}, {"wk_elder_ray_warmup_period", (DL_FUNC)&wk_elder_ray_warmup_period, 1}, {"wk_elder_ray_is_ready", (DL_FUNC)&wk_elder_ray_is_ready, 1}, + {"wk_elder_ray_name", (DL_FUNC)&wk_elder_ray_name, 1}, {"wk_elder_ray_reset", (DL_FUNC)&wk_elder_ray_reset, 1}, {"wk_elder_safe_zone_new", (DL_FUNC)&wk_elder_safe_zone_new, 2}, {"wk_elder_safe_zone_update", (DL_FUNC)&wk_elder_safe_zone_update, 7}, {"wk_elder_safe_zone_warmup_period", (DL_FUNC)&wk_elder_safe_zone_warmup_period, 1}, {"wk_elder_safe_zone_is_ready", (DL_FUNC)&wk_elder_safe_zone_is_ready, 1}, + {"wk_elder_safe_zone_name", (DL_FUNC)&wk_elder_safe_zone_name, 1}, {"wk_elder_safe_zone_reset", (DL_FUNC)&wk_elder_safe_zone_reset, 1}, {"wk_ema_new", (DL_FUNC)&wk_ema_new, 1}, {"wk_ema_update", (DL_FUNC)&wk_ema_update, 2}, {"wk_ema_batch", (DL_FUNC)&wk_ema_batch, 2}, {"wk_ema_warmup_period", (DL_FUNC)&wk_ema_warmup_period, 1}, {"wk_ema_is_ready", (DL_FUNC)&wk_ema_is_ready, 1}, + {"wk_ema_name", (DL_FUNC)&wk_ema_name, 1}, {"wk_ema_reset", (DL_FUNC)&wk_ema_reset, 1}, {"wk_empirical_mode_decomposition_new", (DL_FUNC)&wk_empirical_mode_decomposition_new, 2}, {"wk_empirical_mode_decomposition_update", (DL_FUNC)&wk_empirical_mode_decomposition_update, 2}, {"wk_empirical_mode_decomposition_batch", (DL_FUNC)&wk_empirical_mode_decomposition_batch, 2}, {"wk_empirical_mode_decomposition_warmup_period", (DL_FUNC)&wk_empirical_mode_decomposition_warmup_period, 1}, {"wk_empirical_mode_decomposition_is_ready", (DL_FUNC)&wk_empirical_mode_decomposition_is_ready, 1}, + {"wk_empirical_mode_decomposition_name", (DL_FUNC)&wk_empirical_mode_decomposition_name, 1}, {"wk_empirical_mode_decomposition_reset", (DL_FUNC)&wk_empirical_mode_decomposition_reset, 1}, {"wk_engulfing_new", (DL_FUNC)&wk_engulfing_new, 0}, {"wk_engulfing_update", (DL_FUNC)&wk_engulfing_update, 7}, {"wk_engulfing_batch", (DL_FUNC)&wk_engulfing_batch, 7}, {"wk_engulfing_warmup_period", (DL_FUNC)&wk_engulfing_warmup_period, 1}, {"wk_engulfing_is_ready", (DL_FUNC)&wk_engulfing_is_ready, 1}, + {"wk_engulfing_name", (DL_FUNC)&wk_engulfing_name, 1}, {"wk_engulfing_reset", (DL_FUNC)&wk_engulfing_reset, 1}, {"wk_equivolume_new", (DL_FUNC)&wk_equivolume_new, 1}, {"wk_equivolume_update", (DL_FUNC)&wk_equivolume_update, 7}, {"wk_equivolume_warmup_period", (DL_FUNC)&wk_equivolume_warmup_period, 1}, {"wk_equivolume_is_ready", (DL_FUNC)&wk_equivolume_is_ready, 1}, + {"wk_equivolume_name", (DL_FUNC)&wk_equivolume_name, 1}, {"wk_equivolume_reset", (DL_FUNC)&wk_equivolume_reset, 1}, {"wk_estimated_leverage_ratio_new", (DL_FUNC)&wk_estimated_leverage_ratio_new, 0}, {"wk_estimated_leverage_ratio_update", (DL_FUNC)&wk_estimated_leverage_ratio_update, 13}, {"wk_estimated_leverage_ratio_warmup_period", (DL_FUNC)&wk_estimated_leverage_ratio_warmup_period, 1}, {"wk_estimated_leverage_ratio_is_ready", (DL_FUNC)&wk_estimated_leverage_ratio_is_ready, 1}, + {"wk_estimated_leverage_ratio_name", (DL_FUNC)&wk_estimated_leverage_ratio_name, 1}, {"wk_estimated_leverage_ratio_reset", (DL_FUNC)&wk_estimated_leverage_ratio_reset, 1}, {"wk_even_better_sinewave_new", (DL_FUNC)&wk_even_better_sinewave_new, 2}, {"wk_even_better_sinewave_update", (DL_FUNC)&wk_even_better_sinewave_update, 2}, {"wk_even_better_sinewave_batch", (DL_FUNC)&wk_even_better_sinewave_batch, 2}, {"wk_even_better_sinewave_warmup_period", (DL_FUNC)&wk_even_better_sinewave_warmup_period, 1}, {"wk_even_better_sinewave_is_ready", (DL_FUNC)&wk_even_better_sinewave_is_ready, 1}, + {"wk_even_better_sinewave_name", (DL_FUNC)&wk_even_better_sinewave_name, 1}, {"wk_even_better_sinewave_reset", (DL_FUNC)&wk_even_better_sinewave_reset, 1}, {"wk_evening_doji_star_new", (DL_FUNC)&wk_evening_doji_star_new, 0}, {"wk_evening_doji_star_update", (DL_FUNC)&wk_evening_doji_star_update, 7}, {"wk_evening_doji_star_batch", (DL_FUNC)&wk_evening_doji_star_batch, 7}, {"wk_evening_doji_star_warmup_period", (DL_FUNC)&wk_evening_doji_star_warmup_period, 1}, {"wk_evening_doji_star_is_ready", (DL_FUNC)&wk_evening_doji_star_is_ready, 1}, + {"wk_evening_doji_star_name", (DL_FUNC)&wk_evening_doji_star_name, 1}, {"wk_evening_doji_star_reset", (DL_FUNC)&wk_evening_doji_star_reset, 1}, {"wk_evwma_new", (DL_FUNC)&wk_evwma_new, 1}, {"wk_evwma_update", (DL_FUNC)&wk_evwma_update, 7}, {"wk_evwma_batch", (DL_FUNC)&wk_evwma_batch, 7}, {"wk_evwma_warmup_period", (DL_FUNC)&wk_evwma_warmup_period, 1}, {"wk_evwma_is_ready", (DL_FUNC)&wk_evwma_is_ready, 1}, + {"wk_evwma_name", (DL_FUNC)&wk_evwma_name, 1}, {"wk_evwma_reset", (DL_FUNC)&wk_evwma_reset, 1}, {"wk_ewma_volatility_new", (DL_FUNC)&wk_ewma_volatility_new, 1}, {"wk_ewma_volatility_update", (DL_FUNC)&wk_ewma_volatility_update, 2}, {"wk_ewma_volatility_batch", (DL_FUNC)&wk_ewma_volatility_batch, 2}, {"wk_ewma_volatility_warmup_period", (DL_FUNC)&wk_ewma_volatility_warmup_period, 1}, {"wk_ewma_volatility_is_ready", (DL_FUNC)&wk_ewma_volatility_is_ready, 1}, + {"wk_ewma_volatility_name", (DL_FUNC)&wk_ewma_volatility_name, 1}, {"wk_ewma_volatility_reset", (DL_FUNC)&wk_ewma_volatility_reset, 1}, {"wk_expectancy_new", (DL_FUNC)&wk_expectancy_new, 1}, {"wk_expectancy_update", (DL_FUNC)&wk_expectancy_update, 2}, {"wk_expectancy_batch", (DL_FUNC)&wk_expectancy_batch, 2}, {"wk_expectancy_warmup_period", (DL_FUNC)&wk_expectancy_warmup_period, 1}, {"wk_expectancy_is_ready", (DL_FUNC)&wk_expectancy_is_ready, 1}, + {"wk_expectancy_name", (DL_FUNC)&wk_expectancy_name, 1}, {"wk_expectancy_reset", (DL_FUNC)&wk_expectancy_reset, 1}, {"wk_falling_three_methods_new", (DL_FUNC)&wk_falling_three_methods_new, 0}, {"wk_falling_three_methods_update", (DL_FUNC)&wk_falling_three_methods_update, 7}, {"wk_falling_three_methods_batch", (DL_FUNC)&wk_falling_three_methods_batch, 7}, {"wk_falling_three_methods_warmup_period", (DL_FUNC)&wk_falling_three_methods_warmup_period, 1}, {"wk_falling_three_methods_is_ready", (DL_FUNC)&wk_falling_three_methods_is_ready, 1}, + {"wk_falling_three_methods_name", (DL_FUNC)&wk_falling_three_methods_name, 1}, {"wk_falling_three_methods_reset", (DL_FUNC)&wk_falling_three_methods_reset, 1}, {"wk_fama_new", (DL_FUNC)&wk_fama_new, 2}, {"wk_fama_update", (DL_FUNC)&wk_fama_update, 2}, {"wk_fama_batch", (DL_FUNC)&wk_fama_batch, 2}, {"wk_fama_warmup_period", (DL_FUNC)&wk_fama_warmup_period, 1}, {"wk_fama_is_ready", (DL_FUNC)&wk_fama_is_ready, 1}, + {"wk_fama_name", (DL_FUNC)&wk_fama_name, 1}, {"wk_fama_reset", (DL_FUNC)&wk_fama_reset, 1}, {"wk_fib_arcs_new", (DL_FUNC)&wk_fib_arcs_new, 0}, {"wk_fib_arcs_update", (DL_FUNC)&wk_fib_arcs_update, 7}, {"wk_fib_arcs_warmup_period", (DL_FUNC)&wk_fib_arcs_warmup_period, 1}, {"wk_fib_arcs_is_ready", (DL_FUNC)&wk_fib_arcs_is_ready, 1}, + {"wk_fib_arcs_name", (DL_FUNC)&wk_fib_arcs_name, 1}, {"wk_fib_arcs_reset", (DL_FUNC)&wk_fib_arcs_reset, 1}, {"wk_fib_channel_new", (DL_FUNC)&wk_fib_channel_new, 0}, {"wk_fib_channel_update", (DL_FUNC)&wk_fib_channel_update, 7}, {"wk_fib_channel_warmup_period", (DL_FUNC)&wk_fib_channel_warmup_period, 1}, {"wk_fib_channel_is_ready", (DL_FUNC)&wk_fib_channel_is_ready, 1}, + {"wk_fib_channel_name", (DL_FUNC)&wk_fib_channel_name, 1}, {"wk_fib_channel_reset", (DL_FUNC)&wk_fib_channel_reset, 1}, {"wk_fib_confluence_new", (DL_FUNC)&wk_fib_confluence_new, 0}, {"wk_fib_confluence_update", (DL_FUNC)&wk_fib_confluence_update, 7}, {"wk_fib_confluence_warmup_period", (DL_FUNC)&wk_fib_confluence_warmup_period, 1}, {"wk_fib_confluence_is_ready", (DL_FUNC)&wk_fib_confluence_is_ready, 1}, + {"wk_fib_confluence_name", (DL_FUNC)&wk_fib_confluence_name, 1}, {"wk_fib_confluence_reset", (DL_FUNC)&wk_fib_confluence_reset, 1}, {"wk_fib_extension_new", (DL_FUNC)&wk_fib_extension_new, 0}, {"wk_fib_extension_update", (DL_FUNC)&wk_fib_extension_update, 7}, {"wk_fib_extension_warmup_period", (DL_FUNC)&wk_fib_extension_warmup_period, 1}, {"wk_fib_extension_is_ready", (DL_FUNC)&wk_fib_extension_is_ready, 1}, + {"wk_fib_extension_name", (DL_FUNC)&wk_fib_extension_name, 1}, {"wk_fib_extension_reset", (DL_FUNC)&wk_fib_extension_reset, 1}, {"wk_fib_fan_new", (DL_FUNC)&wk_fib_fan_new, 0}, {"wk_fib_fan_update", (DL_FUNC)&wk_fib_fan_update, 7}, {"wk_fib_fan_warmup_period", (DL_FUNC)&wk_fib_fan_warmup_period, 1}, {"wk_fib_fan_is_ready", (DL_FUNC)&wk_fib_fan_is_ready, 1}, + {"wk_fib_fan_name", (DL_FUNC)&wk_fib_fan_name, 1}, {"wk_fib_fan_reset", (DL_FUNC)&wk_fib_fan_reset, 1}, {"wk_fib_projection_new", (DL_FUNC)&wk_fib_projection_new, 0}, {"wk_fib_projection_update", (DL_FUNC)&wk_fib_projection_update, 7}, {"wk_fib_projection_warmup_period", (DL_FUNC)&wk_fib_projection_warmup_period, 1}, {"wk_fib_projection_is_ready", (DL_FUNC)&wk_fib_projection_is_ready, 1}, + {"wk_fib_projection_name", (DL_FUNC)&wk_fib_projection_name, 1}, {"wk_fib_projection_reset", (DL_FUNC)&wk_fib_projection_reset, 1}, {"wk_fib_retracement_new", (DL_FUNC)&wk_fib_retracement_new, 0}, {"wk_fib_retracement_update", (DL_FUNC)&wk_fib_retracement_update, 7}, {"wk_fib_retracement_warmup_period", (DL_FUNC)&wk_fib_retracement_warmup_period, 1}, {"wk_fib_retracement_is_ready", (DL_FUNC)&wk_fib_retracement_is_ready, 1}, + {"wk_fib_retracement_name", (DL_FUNC)&wk_fib_retracement_name, 1}, {"wk_fib_retracement_reset", (DL_FUNC)&wk_fib_retracement_reset, 1}, {"wk_fib_time_zones_new", (DL_FUNC)&wk_fib_time_zones_new, 0}, {"wk_fib_time_zones_update", (DL_FUNC)&wk_fib_time_zones_update, 7}, {"wk_fib_time_zones_warmup_period", (DL_FUNC)&wk_fib_time_zones_warmup_period, 1}, {"wk_fib_time_zones_is_ready", (DL_FUNC)&wk_fib_time_zones_is_ready, 1}, + {"wk_fib_time_zones_name", (DL_FUNC)&wk_fib_time_zones_name, 1}, {"wk_fib_time_zones_reset", (DL_FUNC)&wk_fib_time_zones_reset, 1}, {"wk_fibonacci_pivots_new", (DL_FUNC)&wk_fibonacci_pivots_new, 0}, {"wk_fibonacci_pivots_update", (DL_FUNC)&wk_fibonacci_pivots_update, 7}, {"wk_fibonacci_pivots_warmup_period", (DL_FUNC)&wk_fibonacci_pivots_warmup_period, 1}, {"wk_fibonacci_pivots_is_ready", (DL_FUNC)&wk_fibonacci_pivots_is_ready, 1}, + {"wk_fibonacci_pivots_name", (DL_FUNC)&wk_fibonacci_pivots_name, 1}, {"wk_fibonacci_pivots_reset", (DL_FUNC)&wk_fibonacci_pivots_reset, 1}, {"wk_fisher_rsi_new", (DL_FUNC)&wk_fisher_rsi_new, 1}, {"wk_fisher_rsi_update", (DL_FUNC)&wk_fisher_rsi_update, 2}, {"wk_fisher_rsi_batch", (DL_FUNC)&wk_fisher_rsi_batch, 2}, {"wk_fisher_rsi_warmup_period", (DL_FUNC)&wk_fisher_rsi_warmup_period, 1}, {"wk_fisher_rsi_is_ready", (DL_FUNC)&wk_fisher_rsi_is_ready, 1}, + {"wk_fisher_rsi_name", (DL_FUNC)&wk_fisher_rsi_name, 1}, {"wk_fisher_rsi_reset", (DL_FUNC)&wk_fisher_rsi_reset, 1}, {"wk_fisher_transform_new", (DL_FUNC)&wk_fisher_transform_new, 1}, {"wk_fisher_transform_update", (DL_FUNC)&wk_fisher_transform_update, 2}, {"wk_fisher_transform_batch", (DL_FUNC)&wk_fisher_transform_batch, 2}, {"wk_fisher_transform_warmup_period", (DL_FUNC)&wk_fisher_transform_warmup_period, 1}, {"wk_fisher_transform_is_ready", (DL_FUNC)&wk_fisher_transform_is_ready, 1}, + {"wk_fisher_transform_name", (DL_FUNC)&wk_fisher_transform_name, 1}, {"wk_fisher_transform_reset", (DL_FUNC)&wk_fisher_transform_reset, 1}, {"wk_flag_pennant_new", (DL_FUNC)&wk_flag_pennant_new, 0}, {"wk_flag_pennant_update", (DL_FUNC)&wk_flag_pennant_update, 7}, {"wk_flag_pennant_batch", (DL_FUNC)&wk_flag_pennant_batch, 7}, {"wk_flag_pennant_warmup_period", (DL_FUNC)&wk_flag_pennant_warmup_period, 1}, {"wk_flag_pennant_is_ready", (DL_FUNC)&wk_flag_pennant_is_ready, 1}, + {"wk_flag_pennant_name", (DL_FUNC)&wk_flag_pennant_name, 1}, {"wk_flag_pennant_reset", (DL_FUNC)&wk_flag_pennant_reset, 1}, {"wk_footprint_new", (DL_FUNC)&wk_footprint_new, 1}, {"wk_footprint_update", (DL_FUNC)&wk_footprint_update, 5}, {"wk_footprint_warmup_period", (DL_FUNC)&wk_footprint_warmup_period, 1}, {"wk_footprint_is_ready", (DL_FUNC)&wk_footprint_is_ready, 1}, + {"wk_footprint_name", (DL_FUNC)&wk_footprint_name, 1}, {"wk_footprint_reset", (DL_FUNC)&wk_footprint_reset, 1}, {"wk_force_index_new", (DL_FUNC)&wk_force_index_new, 1}, {"wk_force_index_update", (DL_FUNC)&wk_force_index_update, 7}, {"wk_force_index_batch", (DL_FUNC)&wk_force_index_batch, 7}, {"wk_force_index_warmup_period", (DL_FUNC)&wk_force_index_warmup_period, 1}, {"wk_force_index_is_ready", (DL_FUNC)&wk_force_index_is_ready, 1}, + {"wk_force_index_name", (DL_FUNC)&wk_force_index_name, 1}, {"wk_force_index_reset", (DL_FUNC)&wk_force_index_reset, 1}, {"wk_fractal_chaos_bands_new", (DL_FUNC)&wk_fractal_chaos_bands_new, 1}, {"wk_fractal_chaos_bands_update", (DL_FUNC)&wk_fractal_chaos_bands_update, 7}, {"wk_fractal_chaos_bands_warmup_period", (DL_FUNC)&wk_fractal_chaos_bands_warmup_period, 1}, {"wk_fractal_chaos_bands_is_ready", (DL_FUNC)&wk_fractal_chaos_bands_is_ready, 1}, + {"wk_fractal_chaos_bands_name", (DL_FUNC)&wk_fractal_chaos_bands_name, 1}, {"wk_fractal_chaos_bands_reset", (DL_FUNC)&wk_fractal_chaos_bands_reset, 1}, {"wk_frama_new", (DL_FUNC)&wk_frama_new, 1}, {"wk_frama_update", (DL_FUNC)&wk_frama_update, 2}, {"wk_frama_batch", (DL_FUNC)&wk_frama_batch, 2}, {"wk_frama_warmup_period", (DL_FUNC)&wk_frama_warmup_period, 1}, {"wk_frama_is_ready", (DL_FUNC)&wk_frama_is_ready, 1}, + {"wk_frama_name", (DL_FUNC)&wk_frama_name, 1}, {"wk_frama_reset", (DL_FUNC)&wk_frama_reset, 1}, {"wk_fry_pan_bottom_new", (DL_FUNC)&wk_fry_pan_bottom_new, 1}, {"wk_fry_pan_bottom_update", (DL_FUNC)&wk_fry_pan_bottom_update, 7}, {"wk_fry_pan_bottom_batch", (DL_FUNC)&wk_fry_pan_bottom_batch, 7}, {"wk_fry_pan_bottom_warmup_period", (DL_FUNC)&wk_fry_pan_bottom_warmup_period, 1}, {"wk_fry_pan_bottom_is_ready", (DL_FUNC)&wk_fry_pan_bottom_is_ready, 1}, + {"wk_fry_pan_bottom_name", (DL_FUNC)&wk_fry_pan_bottom_name, 1}, {"wk_fry_pan_bottom_reset", (DL_FUNC)&wk_fry_pan_bottom_reset, 1}, {"wk_funding_basis_new", (DL_FUNC)&wk_funding_basis_new, 0}, {"wk_funding_basis_update", (DL_FUNC)&wk_funding_basis_update, 13}, {"wk_funding_basis_warmup_period", (DL_FUNC)&wk_funding_basis_warmup_period, 1}, {"wk_funding_basis_is_ready", (DL_FUNC)&wk_funding_basis_is_ready, 1}, + {"wk_funding_basis_name", (DL_FUNC)&wk_funding_basis_name, 1}, {"wk_funding_basis_reset", (DL_FUNC)&wk_funding_basis_reset, 1}, {"wk_funding_implied_apr_new", (DL_FUNC)&wk_funding_implied_apr_new, 1}, {"wk_funding_implied_apr_update", (DL_FUNC)&wk_funding_implied_apr_update, 13}, {"wk_funding_implied_apr_warmup_period", (DL_FUNC)&wk_funding_implied_apr_warmup_period, 1}, {"wk_funding_implied_apr_is_ready", (DL_FUNC)&wk_funding_implied_apr_is_ready, 1}, + {"wk_funding_implied_apr_name", (DL_FUNC)&wk_funding_implied_apr_name, 1}, {"wk_funding_implied_apr_reset", (DL_FUNC)&wk_funding_implied_apr_reset, 1}, {"wk_funding_rate_new", (DL_FUNC)&wk_funding_rate_new, 0}, {"wk_funding_rate_update", (DL_FUNC)&wk_funding_rate_update, 13}, {"wk_funding_rate_warmup_period", (DL_FUNC)&wk_funding_rate_warmup_period, 1}, {"wk_funding_rate_is_ready", (DL_FUNC)&wk_funding_rate_is_ready, 1}, + {"wk_funding_rate_name", (DL_FUNC)&wk_funding_rate_name, 1}, {"wk_funding_rate_reset", (DL_FUNC)&wk_funding_rate_reset, 1}, {"wk_funding_rate_mean_new", (DL_FUNC)&wk_funding_rate_mean_new, 1}, {"wk_funding_rate_mean_update", (DL_FUNC)&wk_funding_rate_mean_update, 13}, {"wk_funding_rate_mean_warmup_period", (DL_FUNC)&wk_funding_rate_mean_warmup_period, 1}, {"wk_funding_rate_mean_is_ready", (DL_FUNC)&wk_funding_rate_mean_is_ready, 1}, + {"wk_funding_rate_mean_name", (DL_FUNC)&wk_funding_rate_mean_name, 1}, {"wk_funding_rate_mean_reset", (DL_FUNC)&wk_funding_rate_mean_reset, 1}, {"wk_funding_rate_z_score_new", (DL_FUNC)&wk_funding_rate_z_score_new, 1}, {"wk_funding_rate_z_score_update", (DL_FUNC)&wk_funding_rate_z_score_update, 13}, {"wk_funding_rate_z_score_warmup_period", (DL_FUNC)&wk_funding_rate_z_score_warmup_period, 1}, {"wk_funding_rate_z_score_is_ready", (DL_FUNC)&wk_funding_rate_z_score_is_ready, 1}, + {"wk_funding_rate_z_score_name", (DL_FUNC)&wk_funding_rate_z_score_name, 1}, {"wk_funding_rate_z_score_reset", (DL_FUNC)&wk_funding_rate_z_score_reset, 1}, {"wk_gain_loss_ratio_new", (DL_FUNC)&wk_gain_loss_ratio_new, 1}, {"wk_gain_loss_ratio_update", (DL_FUNC)&wk_gain_loss_ratio_update, 2}, {"wk_gain_loss_ratio_batch", (DL_FUNC)&wk_gain_loss_ratio_batch, 2}, {"wk_gain_loss_ratio_warmup_period", (DL_FUNC)&wk_gain_loss_ratio_warmup_period, 1}, {"wk_gain_loss_ratio_is_ready", (DL_FUNC)&wk_gain_loss_ratio_is_ready, 1}, + {"wk_gain_loss_ratio_name", (DL_FUNC)&wk_gain_loss_ratio_name, 1}, {"wk_gain_loss_ratio_reset", (DL_FUNC)&wk_gain_loss_ratio_reset, 1}, {"wk_gain_to_pain_ratio_new", (DL_FUNC)&wk_gain_to_pain_ratio_new, 1}, {"wk_gain_to_pain_ratio_update", (DL_FUNC)&wk_gain_to_pain_ratio_update, 2}, {"wk_gain_to_pain_ratio_batch", (DL_FUNC)&wk_gain_to_pain_ratio_batch, 2}, {"wk_gain_to_pain_ratio_warmup_period", (DL_FUNC)&wk_gain_to_pain_ratio_warmup_period, 1}, {"wk_gain_to_pain_ratio_is_ready", (DL_FUNC)&wk_gain_to_pain_ratio_is_ready, 1}, + {"wk_gain_to_pain_ratio_name", (DL_FUNC)&wk_gain_to_pain_ratio_name, 1}, {"wk_gain_to_pain_ratio_reset", (DL_FUNC)&wk_gain_to_pain_ratio_reset, 1}, {"wk_gap_side_by_side_white_new", (DL_FUNC)&wk_gap_side_by_side_white_new, 0}, {"wk_gap_side_by_side_white_update", (DL_FUNC)&wk_gap_side_by_side_white_update, 7}, {"wk_gap_side_by_side_white_batch", (DL_FUNC)&wk_gap_side_by_side_white_batch, 7}, {"wk_gap_side_by_side_white_warmup_period", (DL_FUNC)&wk_gap_side_by_side_white_warmup_period, 1}, {"wk_gap_side_by_side_white_is_ready", (DL_FUNC)&wk_gap_side_by_side_white_is_ready, 1}, + {"wk_gap_side_by_side_white_name", (DL_FUNC)&wk_gap_side_by_side_white_name, 1}, {"wk_gap_side_by_side_white_reset", (DL_FUNC)&wk_gap_side_by_side_white_reset, 1}, {"wk_garch11_new", (DL_FUNC)&wk_garch11_new, 3}, {"wk_garch11_update", (DL_FUNC)&wk_garch11_update, 2}, {"wk_garch11_batch", (DL_FUNC)&wk_garch11_batch, 2}, {"wk_garch11_warmup_period", (DL_FUNC)&wk_garch11_warmup_period, 1}, {"wk_garch11_is_ready", (DL_FUNC)&wk_garch11_is_ready, 1}, + {"wk_garch11_name", (DL_FUNC)&wk_garch11_name, 1}, {"wk_garch11_reset", (DL_FUNC)&wk_garch11_reset, 1}, {"wk_garman_klass_volatility_new", (DL_FUNC)&wk_garman_klass_volatility_new, 2}, {"wk_garman_klass_volatility_update", (DL_FUNC)&wk_garman_klass_volatility_update, 7}, {"wk_garman_klass_volatility_batch", (DL_FUNC)&wk_garman_klass_volatility_batch, 7}, {"wk_garman_klass_volatility_warmup_period", (DL_FUNC)&wk_garman_klass_volatility_warmup_period, 1}, {"wk_garman_klass_volatility_is_ready", (DL_FUNC)&wk_garman_klass_volatility_is_ready, 1}, + {"wk_garman_klass_volatility_name", (DL_FUNC)&wk_garman_klass_volatility_name, 1}, {"wk_garman_klass_volatility_reset", (DL_FUNC)&wk_garman_klass_volatility_reset, 1}, {"wk_gartley_new", (DL_FUNC)&wk_gartley_new, 0}, {"wk_gartley_update", (DL_FUNC)&wk_gartley_update, 7}, {"wk_gartley_batch", (DL_FUNC)&wk_gartley_batch, 7}, {"wk_gartley_warmup_period", (DL_FUNC)&wk_gartley_warmup_period, 1}, {"wk_gartley_is_ready", (DL_FUNC)&wk_gartley_is_ready, 1}, + {"wk_gartley_name", (DL_FUNC)&wk_gartley_name, 1}, {"wk_gartley_reset", (DL_FUNC)&wk_gartley_reset, 1}, {"wk_gator_oscillator_new", (DL_FUNC)&wk_gator_oscillator_new, 3}, {"wk_gator_oscillator_update", (DL_FUNC)&wk_gator_oscillator_update, 7}, {"wk_gator_oscillator_warmup_period", (DL_FUNC)&wk_gator_oscillator_warmup_period, 1}, {"wk_gator_oscillator_is_ready", (DL_FUNC)&wk_gator_oscillator_is_ready, 1}, + {"wk_gator_oscillator_name", (DL_FUNC)&wk_gator_oscillator_name, 1}, {"wk_gator_oscillator_reset", (DL_FUNC)&wk_gator_oscillator_reset, 1}, {"wk_generalized_dema_new", (DL_FUNC)&wk_generalized_dema_new, 2}, {"wk_generalized_dema_update", (DL_FUNC)&wk_generalized_dema_update, 2}, {"wk_generalized_dema_batch", (DL_FUNC)&wk_generalized_dema_batch, 2}, {"wk_generalized_dema_warmup_period", (DL_FUNC)&wk_generalized_dema_warmup_period, 1}, {"wk_generalized_dema_is_ready", (DL_FUNC)&wk_generalized_dema_is_ready, 1}, + {"wk_generalized_dema_name", (DL_FUNC)&wk_generalized_dema_name, 1}, {"wk_generalized_dema_reset", (DL_FUNC)&wk_generalized_dema_reset, 1}, {"wk_geometric_ma_new", (DL_FUNC)&wk_geometric_ma_new, 1}, {"wk_geometric_ma_update", (DL_FUNC)&wk_geometric_ma_update, 2}, {"wk_geometric_ma_batch", (DL_FUNC)&wk_geometric_ma_batch, 2}, {"wk_geometric_ma_warmup_period", (DL_FUNC)&wk_geometric_ma_warmup_period, 1}, {"wk_geometric_ma_is_ready", (DL_FUNC)&wk_geometric_ma_is_ready, 1}, + {"wk_geometric_ma_name", (DL_FUNC)&wk_geometric_ma_name, 1}, {"wk_geometric_ma_reset", (DL_FUNC)&wk_geometric_ma_reset, 1}, {"wk_golden_pocket_new", (DL_FUNC)&wk_golden_pocket_new, 0}, {"wk_golden_pocket_update", (DL_FUNC)&wk_golden_pocket_update, 7}, {"wk_golden_pocket_warmup_period", (DL_FUNC)&wk_golden_pocket_warmup_period, 1}, {"wk_golden_pocket_is_ready", (DL_FUNC)&wk_golden_pocket_is_ready, 1}, + {"wk_golden_pocket_name", (DL_FUNC)&wk_golden_pocket_name, 1}, {"wk_golden_pocket_reset", (DL_FUNC)&wk_golden_pocket_reset, 1}, {"wk_granger_causality_new", (DL_FUNC)&wk_granger_causality_new, 2}, {"wk_granger_causality_update", (DL_FUNC)&wk_granger_causality_update, 3}, {"wk_granger_causality_batch", (DL_FUNC)&wk_granger_causality_batch, 3}, {"wk_granger_causality_warmup_period", (DL_FUNC)&wk_granger_causality_warmup_period, 1}, {"wk_granger_causality_is_ready", (DL_FUNC)&wk_granger_causality_is_ready, 1}, + {"wk_granger_causality_name", (DL_FUNC)&wk_granger_causality_name, 1}, {"wk_granger_causality_reset", (DL_FUNC)&wk_granger_causality_reset, 1}, {"wk_gravestone_doji_new", (DL_FUNC)&wk_gravestone_doji_new, 0}, {"wk_gravestone_doji_update", (DL_FUNC)&wk_gravestone_doji_update, 7}, {"wk_gravestone_doji_batch", (DL_FUNC)&wk_gravestone_doji_batch, 7}, {"wk_gravestone_doji_warmup_period", (DL_FUNC)&wk_gravestone_doji_warmup_period, 1}, {"wk_gravestone_doji_is_ready", (DL_FUNC)&wk_gravestone_doji_is_ready, 1}, + {"wk_gravestone_doji_name", (DL_FUNC)&wk_gravestone_doji_name, 1}, {"wk_gravestone_doji_reset", (DL_FUNC)&wk_gravestone_doji_reset, 1}, {"wk_hammer_new", (DL_FUNC)&wk_hammer_new, 0}, {"wk_hammer_update", (DL_FUNC)&wk_hammer_update, 7}, {"wk_hammer_batch", (DL_FUNC)&wk_hammer_batch, 7}, {"wk_hammer_warmup_period", (DL_FUNC)&wk_hammer_warmup_period, 1}, {"wk_hammer_is_ready", (DL_FUNC)&wk_hammer_is_ready, 1}, + {"wk_hammer_name", (DL_FUNC)&wk_hammer_name, 1}, {"wk_hammer_reset", (DL_FUNC)&wk_hammer_reset, 1}, {"wk_hanging_man_new", (DL_FUNC)&wk_hanging_man_new, 0}, {"wk_hanging_man_update", (DL_FUNC)&wk_hanging_man_update, 7}, {"wk_hanging_man_batch", (DL_FUNC)&wk_hanging_man_batch, 7}, {"wk_hanging_man_warmup_period", (DL_FUNC)&wk_hanging_man_warmup_period, 1}, {"wk_hanging_man_is_ready", (DL_FUNC)&wk_hanging_man_is_ready, 1}, + {"wk_hanging_man_name", (DL_FUNC)&wk_hanging_man_name, 1}, {"wk_hanging_man_reset", (DL_FUNC)&wk_hanging_man_reset, 1}, {"wk_harami_new", (DL_FUNC)&wk_harami_new, 0}, {"wk_harami_update", (DL_FUNC)&wk_harami_update, 7}, {"wk_harami_batch", (DL_FUNC)&wk_harami_batch, 7}, {"wk_harami_warmup_period", (DL_FUNC)&wk_harami_warmup_period, 1}, {"wk_harami_is_ready", (DL_FUNC)&wk_harami_is_ready, 1}, + {"wk_harami_name", (DL_FUNC)&wk_harami_name, 1}, {"wk_harami_reset", (DL_FUNC)&wk_harami_reset, 1}, {"wk_harami_cross_new", (DL_FUNC)&wk_harami_cross_new, 0}, {"wk_harami_cross_update", (DL_FUNC)&wk_harami_cross_update, 7}, {"wk_harami_cross_batch", (DL_FUNC)&wk_harami_cross_batch, 7}, {"wk_harami_cross_warmup_period", (DL_FUNC)&wk_harami_cross_warmup_period, 1}, {"wk_harami_cross_is_ready", (DL_FUNC)&wk_harami_cross_is_ready, 1}, + {"wk_harami_cross_name", (DL_FUNC)&wk_harami_cross_name, 1}, {"wk_harami_cross_reset", (DL_FUNC)&wk_harami_cross_reset, 1}, {"wk_hasbrouck_information_share_new", (DL_FUNC)&wk_hasbrouck_information_share_new, 1}, {"wk_hasbrouck_information_share_update", (DL_FUNC)&wk_hasbrouck_information_share_update, 3}, {"wk_hasbrouck_information_share_batch", (DL_FUNC)&wk_hasbrouck_information_share_batch, 3}, {"wk_hasbrouck_information_share_warmup_period", (DL_FUNC)&wk_hasbrouck_information_share_warmup_period, 1}, {"wk_hasbrouck_information_share_is_ready", (DL_FUNC)&wk_hasbrouck_information_share_is_ready, 1}, + {"wk_hasbrouck_information_share_name", (DL_FUNC)&wk_hasbrouck_information_share_name, 1}, {"wk_hasbrouck_information_share_reset", (DL_FUNC)&wk_hasbrouck_information_share_reset, 1}, {"wk_head_and_shoulders_new", (DL_FUNC)&wk_head_and_shoulders_new, 0}, {"wk_head_and_shoulders_update", (DL_FUNC)&wk_head_and_shoulders_update, 7}, {"wk_head_and_shoulders_batch", (DL_FUNC)&wk_head_and_shoulders_batch, 7}, {"wk_head_and_shoulders_warmup_period", (DL_FUNC)&wk_head_and_shoulders_warmup_period, 1}, {"wk_head_and_shoulders_is_ready", (DL_FUNC)&wk_head_and_shoulders_is_ready, 1}, + {"wk_head_and_shoulders_name", (DL_FUNC)&wk_head_and_shoulders_name, 1}, {"wk_head_and_shoulders_reset", (DL_FUNC)&wk_head_and_shoulders_reset, 1}, {"wk_heikin_ashi_new", (DL_FUNC)&wk_heikin_ashi_new, 0}, {"wk_heikin_ashi_update", (DL_FUNC)&wk_heikin_ashi_update, 7}, {"wk_heikin_ashi_warmup_period", (DL_FUNC)&wk_heikin_ashi_warmup_period, 1}, {"wk_heikin_ashi_is_ready", (DL_FUNC)&wk_heikin_ashi_is_ready, 1}, + {"wk_heikin_ashi_name", (DL_FUNC)&wk_heikin_ashi_name, 1}, {"wk_heikin_ashi_reset", (DL_FUNC)&wk_heikin_ashi_reset, 1}, {"wk_heikin_ashi_oscillator_new", (DL_FUNC)&wk_heikin_ashi_oscillator_new, 1}, {"wk_heikin_ashi_oscillator_update", (DL_FUNC)&wk_heikin_ashi_oscillator_update, 7}, {"wk_heikin_ashi_oscillator_batch", (DL_FUNC)&wk_heikin_ashi_oscillator_batch, 7}, {"wk_heikin_ashi_oscillator_warmup_period", (DL_FUNC)&wk_heikin_ashi_oscillator_warmup_period, 1}, {"wk_heikin_ashi_oscillator_is_ready", (DL_FUNC)&wk_heikin_ashi_oscillator_is_ready, 1}, + {"wk_heikin_ashi_oscillator_name", (DL_FUNC)&wk_heikin_ashi_oscillator_name, 1}, {"wk_heikin_ashi_oscillator_reset", (DL_FUNC)&wk_heikin_ashi_oscillator_reset, 1}, {"wk_hi_lo_activator_new", (DL_FUNC)&wk_hi_lo_activator_new, 1}, {"wk_hi_lo_activator_update", (DL_FUNC)&wk_hi_lo_activator_update, 7}, {"wk_hi_lo_activator_batch", (DL_FUNC)&wk_hi_lo_activator_batch, 7}, {"wk_hi_lo_activator_warmup_period", (DL_FUNC)&wk_hi_lo_activator_warmup_period, 1}, {"wk_hi_lo_activator_is_ready", (DL_FUNC)&wk_hi_lo_activator_is_ready, 1}, + {"wk_hi_lo_activator_name", (DL_FUNC)&wk_hi_lo_activator_name, 1}, {"wk_hi_lo_activator_reset", (DL_FUNC)&wk_hi_lo_activator_reset, 1}, {"wk_high_low_index_new", (DL_FUNC)&wk_high_low_index_new, 1}, {"wk_high_low_index_update", (DL_FUNC)&wk_high_low_index_update, 8}, {"wk_high_low_index_warmup_period", (DL_FUNC)&wk_high_low_index_warmup_period, 1}, {"wk_high_low_index_is_ready", (DL_FUNC)&wk_high_low_index_is_ready, 1}, + {"wk_high_low_index_name", (DL_FUNC)&wk_high_low_index_name, 1}, {"wk_high_low_index_reset", (DL_FUNC)&wk_high_low_index_reset, 1}, {"wk_high_low_range_new", (DL_FUNC)&wk_high_low_range_new, 0}, {"wk_high_low_range_update", (DL_FUNC)&wk_high_low_range_update, 7}, {"wk_high_low_range_batch", (DL_FUNC)&wk_high_low_range_batch, 7}, {"wk_high_low_range_warmup_period", (DL_FUNC)&wk_high_low_range_warmup_period, 1}, {"wk_high_low_range_is_ready", (DL_FUNC)&wk_high_low_range_is_ready, 1}, + {"wk_high_low_range_name", (DL_FUNC)&wk_high_low_range_name, 1}, {"wk_high_low_range_reset", (DL_FUNC)&wk_high_low_range_reset, 1}, {"wk_high_low_volume_nodes_new", (DL_FUNC)&wk_high_low_volume_nodes_new, 2}, {"wk_high_low_volume_nodes_update", (DL_FUNC)&wk_high_low_volume_nodes_update, 7}, {"wk_high_low_volume_nodes_warmup_period", (DL_FUNC)&wk_high_low_volume_nodes_warmup_period, 1}, {"wk_high_low_volume_nodes_is_ready", (DL_FUNC)&wk_high_low_volume_nodes_is_ready, 1}, + {"wk_high_low_volume_nodes_name", (DL_FUNC)&wk_high_low_volume_nodes_name, 1}, {"wk_high_low_volume_nodes_reset", (DL_FUNC)&wk_high_low_volume_nodes_reset, 1}, {"wk_high_wave_new", (DL_FUNC)&wk_high_wave_new, 0}, {"wk_high_wave_update", (DL_FUNC)&wk_high_wave_update, 7}, {"wk_high_wave_batch", (DL_FUNC)&wk_high_wave_batch, 7}, {"wk_high_wave_warmup_period", (DL_FUNC)&wk_high_wave_warmup_period, 1}, {"wk_high_wave_is_ready", (DL_FUNC)&wk_high_wave_is_ready, 1}, + {"wk_high_wave_name", (DL_FUNC)&wk_high_wave_name, 1}, {"wk_high_wave_reset", (DL_FUNC)&wk_high_wave_reset, 1}, {"wk_highpass_filter_new", (DL_FUNC)&wk_highpass_filter_new, 1}, {"wk_highpass_filter_update", (DL_FUNC)&wk_highpass_filter_update, 2}, {"wk_highpass_filter_batch", (DL_FUNC)&wk_highpass_filter_batch, 2}, {"wk_highpass_filter_warmup_period", (DL_FUNC)&wk_highpass_filter_warmup_period, 1}, {"wk_highpass_filter_is_ready", (DL_FUNC)&wk_highpass_filter_is_ready, 1}, + {"wk_highpass_filter_name", (DL_FUNC)&wk_highpass_filter_name, 1}, {"wk_highpass_filter_reset", (DL_FUNC)&wk_highpass_filter_reset, 1}, {"wk_hikkake_new", (DL_FUNC)&wk_hikkake_new, 0}, {"wk_hikkake_update", (DL_FUNC)&wk_hikkake_update, 7}, {"wk_hikkake_batch", (DL_FUNC)&wk_hikkake_batch, 7}, {"wk_hikkake_warmup_period", (DL_FUNC)&wk_hikkake_warmup_period, 1}, {"wk_hikkake_is_ready", (DL_FUNC)&wk_hikkake_is_ready, 1}, + {"wk_hikkake_name", (DL_FUNC)&wk_hikkake_name, 1}, {"wk_hikkake_reset", (DL_FUNC)&wk_hikkake_reset, 1}, {"wk_hikkake_modified_new", (DL_FUNC)&wk_hikkake_modified_new, 0}, {"wk_hikkake_modified_update", (DL_FUNC)&wk_hikkake_modified_update, 7}, {"wk_hikkake_modified_batch", (DL_FUNC)&wk_hikkake_modified_batch, 7}, {"wk_hikkake_modified_warmup_period", (DL_FUNC)&wk_hikkake_modified_warmup_period, 1}, {"wk_hikkake_modified_is_ready", (DL_FUNC)&wk_hikkake_modified_is_ready, 1}, + {"wk_hikkake_modified_name", (DL_FUNC)&wk_hikkake_modified_name, 1}, {"wk_hikkake_modified_reset", (DL_FUNC)&wk_hikkake_modified_reset, 1}, {"wk_hilbert_dominant_cycle_new", (DL_FUNC)&wk_hilbert_dominant_cycle_new, 0}, {"wk_hilbert_dominant_cycle_update", (DL_FUNC)&wk_hilbert_dominant_cycle_update, 2}, {"wk_hilbert_dominant_cycle_batch", (DL_FUNC)&wk_hilbert_dominant_cycle_batch, 2}, {"wk_hilbert_dominant_cycle_warmup_period", (DL_FUNC)&wk_hilbert_dominant_cycle_warmup_period, 1}, {"wk_hilbert_dominant_cycle_is_ready", (DL_FUNC)&wk_hilbert_dominant_cycle_is_ready, 1}, + {"wk_hilbert_dominant_cycle_name", (DL_FUNC)&wk_hilbert_dominant_cycle_name, 1}, {"wk_hilbert_dominant_cycle_reset", (DL_FUNC)&wk_hilbert_dominant_cycle_reset, 1}, {"wk_historical_volatility_new", (DL_FUNC)&wk_historical_volatility_new, 2}, {"wk_historical_volatility_update", (DL_FUNC)&wk_historical_volatility_update, 2}, {"wk_historical_volatility_batch", (DL_FUNC)&wk_historical_volatility_batch, 2}, {"wk_historical_volatility_warmup_period", (DL_FUNC)&wk_historical_volatility_warmup_period, 1}, {"wk_historical_volatility_is_ready", (DL_FUNC)&wk_historical_volatility_is_ready, 1}, + {"wk_historical_volatility_name", (DL_FUNC)&wk_historical_volatility_name, 1}, {"wk_historical_volatility_reset", (DL_FUNC)&wk_historical_volatility_reset, 1}, {"wk_hma_new", (DL_FUNC)&wk_hma_new, 1}, {"wk_hma_update", (DL_FUNC)&wk_hma_update, 2}, {"wk_hma_batch", (DL_FUNC)&wk_hma_batch, 2}, {"wk_hma_warmup_period", (DL_FUNC)&wk_hma_warmup_period, 1}, {"wk_hma_is_ready", (DL_FUNC)&wk_hma_is_ready, 1}, + {"wk_hma_name", (DL_FUNC)&wk_hma_name, 1}, {"wk_hma_reset", (DL_FUNC)&wk_hma_reset, 1}, {"wk_holt_winters_new", (DL_FUNC)&wk_holt_winters_new, 2}, {"wk_holt_winters_update", (DL_FUNC)&wk_holt_winters_update, 2}, {"wk_holt_winters_batch", (DL_FUNC)&wk_holt_winters_batch, 2}, {"wk_holt_winters_warmup_period", (DL_FUNC)&wk_holt_winters_warmup_period, 1}, {"wk_holt_winters_is_ready", (DL_FUNC)&wk_holt_winters_is_ready, 1}, + {"wk_holt_winters_name", (DL_FUNC)&wk_holt_winters_name, 1}, {"wk_holt_winters_reset", (DL_FUNC)&wk_holt_winters_reset, 1}, {"wk_homing_pigeon_new", (DL_FUNC)&wk_homing_pigeon_new, 0}, {"wk_homing_pigeon_update", (DL_FUNC)&wk_homing_pigeon_update, 7}, {"wk_homing_pigeon_batch", (DL_FUNC)&wk_homing_pigeon_batch, 7}, {"wk_homing_pigeon_warmup_period", (DL_FUNC)&wk_homing_pigeon_warmup_period, 1}, {"wk_homing_pigeon_is_ready", (DL_FUNC)&wk_homing_pigeon_is_ready, 1}, + {"wk_homing_pigeon_name", (DL_FUNC)&wk_homing_pigeon_name, 1}, {"wk_homing_pigeon_reset", (DL_FUNC)&wk_homing_pigeon_reset, 1}, {"wk_ht_dc_phase_new", (DL_FUNC)&wk_ht_dc_phase_new, 0}, {"wk_ht_dc_phase_update", (DL_FUNC)&wk_ht_dc_phase_update, 2}, {"wk_ht_dc_phase_batch", (DL_FUNC)&wk_ht_dc_phase_batch, 2}, {"wk_ht_dc_phase_warmup_period", (DL_FUNC)&wk_ht_dc_phase_warmup_period, 1}, {"wk_ht_dc_phase_is_ready", (DL_FUNC)&wk_ht_dc_phase_is_ready, 1}, + {"wk_ht_dc_phase_name", (DL_FUNC)&wk_ht_dc_phase_name, 1}, {"wk_ht_dc_phase_reset", (DL_FUNC)&wk_ht_dc_phase_reset, 1}, {"wk_ht_phasor_new", (DL_FUNC)&wk_ht_phasor_new, 0}, {"wk_ht_phasor_update", (DL_FUNC)&wk_ht_phasor_update, 2}, {"wk_ht_phasor_warmup_period", (DL_FUNC)&wk_ht_phasor_warmup_period, 1}, {"wk_ht_phasor_is_ready", (DL_FUNC)&wk_ht_phasor_is_ready, 1}, + {"wk_ht_phasor_name", (DL_FUNC)&wk_ht_phasor_name, 1}, {"wk_ht_phasor_reset", (DL_FUNC)&wk_ht_phasor_reset, 1}, {"wk_ht_trend_mode_new", (DL_FUNC)&wk_ht_trend_mode_new, 0}, {"wk_ht_trend_mode_update", (DL_FUNC)&wk_ht_trend_mode_update, 2}, {"wk_ht_trend_mode_batch", (DL_FUNC)&wk_ht_trend_mode_batch, 2}, {"wk_ht_trend_mode_warmup_period", (DL_FUNC)&wk_ht_trend_mode_warmup_period, 1}, {"wk_ht_trend_mode_is_ready", (DL_FUNC)&wk_ht_trend_mode_is_ready, 1}, + {"wk_ht_trend_mode_name", (DL_FUNC)&wk_ht_trend_mode_name, 1}, {"wk_ht_trend_mode_reset", (DL_FUNC)&wk_ht_trend_mode_reset, 1}, {"wk_hurst_channel_new", (DL_FUNC)&wk_hurst_channel_new, 2}, {"wk_hurst_channel_update", (DL_FUNC)&wk_hurst_channel_update, 7}, {"wk_hurst_channel_warmup_period", (DL_FUNC)&wk_hurst_channel_warmup_period, 1}, {"wk_hurst_channel_is_ready", (DL_FUNC)&wk_hurst_channel_is_ready, 1}, + {"wk_hurst_channel_name", (DL_FUNC)&wk_hurst_channel_name, 1}, {"wk_hurst_channel_reset", (DL_FUNC)&wk_hurst_channel_reset, 1}, {"wk_hurst_exponent_new", (DL_FUNC)&wk_hurst_exponent_new, 2}, {"wk_hurst_exponent_update", (DL_FUNC)&wk_hurst_exponent_update, 2}, {"wk_hurst_exponent_batch", (DL_FUNC)&wk_hurst_exponent_batch, 2}, {"wk_hurst_exponent_warmup_period", (DL_FUNC)&wk_hurst_exponent_warmup_period, 1}, {"wk_hurst_exponent_is_ready", (DL_FUNC)&wk_hurst_exponent_is_ready, 1}, + {"wk_hurst_exponent_name", (DL_FUNC)&wk_hurst_exponent_name, 1}, {"wk_hurst_exponent_reset", (DL_FUNC)&wk_hurst_exponent_reset, 1}, {"wk_ichimoku_new", (DL_FUNC)&wk_ichimoku_new, 4}, {"wk_ichimoku_update", (DL_FUNC)&wk_ichimoku_update, 7}, {"wk_ichimoku_warmup_period", (DL_FUNC)&wk_ichimoku_warmup_period, 1}, {"wk_ichimoku_is_ready", (DL_FUNC)&wk_ichimoku_is_ready, 1}, + {"wk_ichimoku_name", (DL_FUNC)&wk_ichimoku_name, 1}, {"wk_ichimoku_reset", (DL_FUNC)&wk_ichimoku_reset, 1}, {"wk_identical_three_crows_new", (DL_FUNC)&wk_identical_three_crows_new, 0}, {"wk_identical_three_crows_update", (DL_FUNC)&wk_identical_three_crows_update, 7}, {"wk_identical_three_crows_batch", (DL_FUNC)&wk_identical_three_crows_batch, 7}, {"wk_identical_three_crows_warmup_period", (DL_FUNC)&wk_identical_three_crows_warmup_period, 1}, {"wk_identical_three_crows_is_ready", (DL_FUNC)&wk_identical_three_crows_is_ready, 1}, + {"wk_identical_three_crows_name", (DL_FUNC)&wk_identical_three_crows_name, 1}, {"wk_identical_three_crows_reset", (DL_FUNC)&wk_identical_three_crows_reset, 1}, {"wk_imbalance_bars_new", (DL_FUNC)&wk_imbalance_bars_new, 1}, {"wk_imbalance_bars_update", (DL_FUNC)&wk_imbalance_bars_update, 7}, + {"wk_imbalance_bars_name", (DL_FUNC)&wk_imbalance_bars_name, 1}, {"wk_imbalance_bars_reset", (DL_FUNC)&wk_imbalance_bars_reset, 1}, {"wk_in_neck_new", (DL_FUNC)&wk_in_neck_new, 0}, {"wk_in_neck_update", (DL_FUNC)&wk_in_neck_update, 7}, {"wk_in_neck_batch", (DL_FUNC)&wk_in_neck_batch, 7}, {"wk_in_neck_warmup_period", (DL_FUNC)&wk_in_neck_warmup_period, 1}, {"wk_in_neck_is_ready", (DL_FUNC)&wk_in_neck_is_ready, 1}, + {"wk_in_neck_name", (DL_FUNC)&wk_in_neck_name, 1}, {"wk_in_neck_reset", (DL_FUNC)&wk_in_neck_reset, 1}, {"wk_inertia_new", (DL_FUNC)&wk_inertia_new, 2}, {"wk_inertia_update", (DL_FUNC)&wk_inertia_update, 7}, {"wk_inertia_batch", (DL_FUNC)&wk_inertia_batch, 7}, {"wk_inertia_warmup_period", (DL_FUNC)&wk_inertia_warmup_period, 1}, {"wk_inertia_is_ready", (DL_FUNC)&wk_inertia_is_ready, 1}, + {"wk_inertia_name", (DL_FUNC)&wk_inertia_name, 1}, {"wk_inertia_reset", (DL_FUNC)&wk_inertia_reset, 1}, {"wk_information_ratio_new", (DL_FUNC)&wk_information_ratio_new, 1}, {"wk_information_ratio_update", (DL_FUNC)&wk_information_ratio_update, 3}, {"wk_information_ratio_batch", (DL_FUNC)&wk_information_ratio_batch, 3}, {"wk_information_ratio_warmup_period", (DL_FUNC)&wk_information_ratio_warmup_period, 1}, {"wk_information_ratio_is_ready", (DL_FUNC)&wk_information_ratio_is_ready, 1}, + {"wk_information_ratio_name", (DL_FUNC)&wk_information_ratio_name, 1}, {"wk_information_ratio_reset", (DL_FUNC)&wk_information_ratio_reset, 1}, {"wk_initial_balance_new", (DL_FUNC)&wk_initial_balance_new, 1}, {"wk_initial_balance_update", (DL_FUNC)&wk_initial_balance_update, 7}, {"wk_initial_balance_warmup_period", (DL_FUNC)&wk_initial_balance_warmup_period, 1}, {"wk_initial_balance_is_ready", (DL_FUNC)&wk_initial_balance_is_ready, 1}, + {"wk_initial_balance_name", (DL_FUNC)&wk_initial_balance_name, 1}, {"wk_initial_balance_reset", (DL_FUNC)&wk_initial_balance_reset, 1}, {"wk_instantaneous_trendline_new", (DL_FUNC)&wk_instantaneous_trendline_new, 1}, {"wk_instantaneous_trendline_update", (DL_FUNC)&wk_instantaneous_trendline_update, 2}, {"wk_instantaneous_trendline_batch", (DL_FUNC)&wk_instantaneous_trendline_batch, 2}, {"wk_instantaneous_trendline_warmup_period", (DL_FUNC)&wk_instantaneous_trendline_warmup_period, 1}, {"wk_instantaneous_trendline_is_ready", (DL_FUNC)&wk_instantaneous_trendline_is_ready, 1}, + {"wk_instantaneous_trendline_name", (DL_FUNC)&wk_instantaneous_trendline_name, 1}, {"wk_instantaneous_trendline_reset", (DL_FUNC)&wk_instantaneous_trendline_reset, 1}, {"wk_intraday_intensity_new", (DL_FUNC)&wk_intraday_intensity_new, 0}, {"wk_intraday_intensity_update", (DL_FUNC)&wk_intraday_intensity_update, 7}, {"wk_intraday_intensity_batch", (DL_FUNC)&wk_intraday_intensity_batch, 7}, {"wk_intraday_intensity_warmup_period", (DL_FUNC)&wk_intraday_intensity_warmup_period, 1}, {"wk_intraday_intensity_is_ready", (DL_FUNC)&wk_intraday_intensity_is_ready, 1}, + {"wk_intraday_intensity_name", (DL_FUNC)&wk_intraday_intensity_name, 1}, {"wk_intraday_intensity_reset", (DL_FUNC)&wk_intraday_intensity_reset, 1}, {"wk_intraday_momentum_index_new", (DL_FUNC)&wk_intraday_momentum_index_new, 1}, {"wk_intraday_momentum_index_update", (DL_FUNC)&wk_intraday_momentum_index_update, 7}, {"wk_intraday_momentum_index_batch", (DL_FUNC)&wk_intraday_momentum_index_batch, 7}, {"wk_intraday_momentum_index_warmup_period", (DL_FUNC)&wk_intraday_momentum_index_warmup_period, 1}, {"wk_intraday_momentum_index_is_ready", (DL_FUNC)&wk_intraday_momentum_index_is_ready, 1}, + {"wk_intraday_momentum_index_name", (DL_FUNC)&wk_intraday_momentum_index_name, 1}, {"wk_intraday_momentum_index_reset", (DL_FUNC)&wk_intraday_momentum_index_reset, 1}, {"wk_intraday_volatility_profile_new", (DL_FUNC)&wk_intraday_volatility_profile_new, 2}, {"wk_intraday_volatility_profile_update", (DL_FUNC)&wk_intraday_volatility_profile_update, 8}, {"wk_intraday_volatility_profile_warmup_period", (DL_FUNC)&wk_intraday_volatility_profile_warmup_period, 1}, {"wk_intraday_volatility_profile_is_ready", (DL_FUNC)&wk_intraday_volatility_profile_is_ready, 1}, + {"wk_intraday_volatility_profile_name", (DL_FUNC)&wk_intraday_volatility_profile_name, 1}, {"wk_intraday_volatility_profile_reset", (DL_FUNC)&wk_intraday_volatility_profile_reset, 1}, {"wk_inverse_fisher_transform_new", (DL_FUNC)&wk_inverse_fisher_transform_new, 1}, {"wk_inverse_fisher_transform_update", (DL_FUNC)&wk_inverse_fisher_transform_update, 2}, {"wk_inverse_fisher_transform_batch", (DL_FUNC)&wk_inverse_fisher_transform_batch, 2}, {"wk_inverse_fisher_transform_warmup_period", (DL_FUNC)&wk_inverse_fisher_transform_warmup_period, 1}, {"wk_inverse_fisher_transform_is_ready", (DL_FUNC)&wk_inverse_fisher_transform_is_ready, 1}, + {"wk_inverse_fisher_transform_name", (DL_FUNC)&wk_inverse_fisher_transform_name, 1}, {"wk_inverse_fisher_transform_reset", (DL_FUNC)&wk_inverse_fisher_transform_reset, 1}, {"wk_inverted_hammer_new", (DL_FUNC)&wk_inverted_hammer_new, 0}, {"wk_inverted_hammer_update", (DL_FUNC)&wk_inverted_hammer_update, 7}, {"wk_inverted_hammer_batch", (DL_FUNC)&wk_inverted_hammer_batch, 7}, {"wk_inverted_hammer_warmup_period", (DL_FUNC)&wk_inverted_hammer_warmup_period, 1}, {"wk_inverted_hammer_is_ready", (DL_FUNC)&wk_inverted_hammer_is_ready, 1}, + {"wk_inverted_hammer_name", (DL_FUNC)&wk_inverted_hammer_name, 1}, {"wk_inverted_hammer_reset", (DL_FUNC)&wk_inverted_hammer_reset, 1}, {"wk_jarque_bera_new", (DL_FUNC)&wk_jarque_bera_new, 1}, {"wk_jarque_bera_update", (DL_FUNC)&wk_jarque_bera_update, 2}, {"wk_jarque_bera_batch", (DL_FUNC)&wk_jarque_bera_batch, 2}, {"wk_jarque_bera_warmup_period", (DL_FUNC)&wk_jarque_bera_warmup_period, 1}, {"wk_jarque_bera_is_ready", (DL_FUNC)&wk_jarque_bera_is_ready, 1}, + {"wk_jarque_bera_name", (DL_FUNC)&wk_jarque_bera_name, 1}, {"wk_jarque_bera_reset", (DL_FUNC)&wk_jarque_bera_reset, 1}, {"wk_jma_new", (DL_FUNC)&wk_jma_new, 3}, {"wk_jma_update", (DL_FUNC)&wk_jma_update, 2}, {"wk_jma_batch", (DL_FUNC)&wk_jma_batch, 2}, {"wk_jma_warmup_period", (DL_FUNC)&wk_jma_warmup_period, 1}, {"wk_jma_is_ready", (DL_FUNC)&wk_jma_is_ready, 1}, + {"wk_jma_name", (DL_FUNC)&wk_jma_name, 1}, {"wk_jma_reset", (DL_FUNC)&wk_jma_reset, 1}, {"wk_jump_indicator_new", (DL_FUNC)&wk_jump_indicator_new, 2}, {"wk_jump_indicator_update", (DL_FUNC)&wk_jump_indicator_update, 2}, {"wk_jump_indicator_batch", (DL_FUNC)&wk_jump_indicator_batch, 2}, {"wk_jump_indicator_warmup_period", (DL_FUNC)&wk_jump_indicator_warmup_period, 1}, {"wk_jump_indicator_is_ready", (DL_FUNC)&wk_jump_indicator_is_ready, 1}, + {"wk_jump_indicator_name", (DL_FUNC)&wk_jump_indicator_name, 1}, {"wk_jump_indicator_reset", (DL_FUNC)&wk_jump_indicator_reset, 1}, {"wk_k_ratio_new", (DL_FUNC)&wk_k_ratio_new, 1}, {"wk_k_ratio_update", (DL_FUNC)&wk_k_ratio_update, 2}, {"wk_k_ratio_batch", (DL_FUNC)&wk_k_ratio_batch, 2}, {"wk_k_ratio_warmup_period", (DL_FUNC)&wk_k_ratio_warmup_period, 1}, {"wk_k_ratio_is_ready", (DL_FUNC)&wk_k_ratio_is_ready, 1}, + {"wk_k_ratio_name", (DL_FUNC)&wk_k_ratio_name, 1}, {"wk_k_ratio_reset", (DL_FUNC)&wk_k_ratio_reset, 1}, {"wk_kagi_bars_new", (DL_FUNC)&wk_kagi_bars_new, 1}, {"wk_kagi_bars_update", (DL_FUNC)&wk_kagi_bars_update, 7}, + {"wk_kagi_bars_name", (DL_FUNC)&wk_kagi_bars_name, 1}, {"wk_kagi_bars_reset", (DL_FUNC)&wk_kagi_bars_reset, 1}, {"wk_kalman_hedge_ratio_new", (DL_FUNC)&wk_kalman_hedge_ratio_new, 2}, {"wk_kalman_hedge_ratio_update", (DL_FUNC)&wk_kalman_hedge_ratio_update, 3}, {"wk_kalman_hedge_ratio_warmup_period", (DL_FUNC)&wk_kalman_hedge_ratio_warmup_period, 1}, {"wk_kalman_hedge_ratio_is_ready", (DL_FUNC)&wk_kalman_hedge_ratio_is_ready, 1}, + {"wk_kalman_hedge_ratio_name", (DL_FUNC)&wk_kalman_hedge_ratio_name, 1}, {"wk_kalman_hedge_ratio_reset", (DL_FUNC)&wk_kalman_hedge_ratio_reset, 1}, {"wk_kama_new", (DL_FUNC)&wk_kama_new, 3}, {"wk_kama_update", (DL_FUNC)&wk_kama_update, 2}, {"wk_kama_batch", (DL_FUNC)&wk_kama_batch, 2}, {"wk_kama_warmup_period", (DL_FUNC)&wk_kama_warmup_period, 1}, {"wk_kama_is_ready", (DL_FUNC)&wk_kama_is_ready, 1}, + {"wk_kama_name", (DL_FUNC)&wk_kama_name, 1}, {"wk_kama_reset", (DL_FUNC)&wk_kama_reset, 1}, {"wk_kase_dev_stop_new", (DL_FUNC)&wk_kase_dev_stop_new, 2}, {"wk_kase_dev_stop_update", (DL_FUNC)&wk_kase_dev_stop_update, 7}, {"wk_kase_dev_stop_warmup_period", (DL_FUNC)&wk_kase_dev_stop_warmup_period, 1}, {"wk_kase_dev_stop_is_ready", (DL_FUNC)&wk_kase_dev_stop_is_ready, 1}, + {"wk_kase_dev_stop_name", (DL_FUNC)&wk_kase_dev_stop_name, 1}, {"wk_kase_dev_stop_reset", (DL_FUNC)&wk_kase_dev_stop_reset, 1}, {"wk_kase_permission_stochastic_new", (DL_FUNC)&wk_kase_permission_stochastic_new, 2}, {"wk_kase_permission_stochastic_update", (DL_FUNC)&wk_kase_permission_stochastic_update, 7}, {"wk_kase_permission_stochastic_warmup_period", (DL_FUNC)&wk_kase_permission_stochastic_warmup_period, 1}, {"wk_kase_permission_stochastic_is_ready", (DL_FUNC)&wk_kase_permission_stochastic_is_ready, 1}, + {"wk_kase_permission_stochastic_name", (DL_FUNC)&wk_kase_permission_stochastic_name, 1}, {"wk_kase_permission_stochastic_reset", (DL_FUNC)&wk_kase_permission_stochastic_reset, 1}, {"wk_kelly_criterion_new", (DL_FUNC)&wk_kelly_criterion_new, 1}, {"wk_kelly_criterion_update", (DL_FUNC)&wk_kelly_criterion_update, 2}, {"wk_kelly_criterion_batch", (DL_FUNC)&wk_kelly_criterion_batch, 2}, {"wk_kelly_criterion_warmup_period", (DL_FUNC)&wk_kelly_criterion_warmup_period, 1}, {"wk_kelly_criterion_is_ready", (DL_FUNC)&wk_kelly_criterion_is_ready, 1}, + {"wk_kelly_criterion_name", (DL_FUNC)&wk_kelly_criterion_name, 1}, {"wk_kelly_criterion_reset", (DL_FUNC)&wk_kelly_criterion_reset, 1}, {"wk_keltner_new", (DL_FUNC)&wk_keltner_new, 3}, {"wk_keltner_update", (DL_FUNC)&wk_keltner_update, 7}, {"wk_keltner_warmup_period", (DL_FUNC)&wk_keltner_warmup_period, 1}, {"wk_keltner_is_ready", (DL_FUNC)&wk_keltner_is_ready, 1}, + {"wk_keltner_name", (DL_FUNC)&wk_keltner_name, 1}, {"wk_keltner_reset", (DL_FUNC)&wk_keltner_reset, 1}, {"wk_kendall_tau_new", (DL_FUNC)&wk_kendall_tau_new, 1}, {"wk_kendall_tau_update", (DL_FUNC)&wk_kendall_tau_update, 3}, {"wk_kendall_tau_batch", (DL_FUNC)&wk_kendall_tau_batch, 3}, {"wk_kendall_tau_warmup_period", (DL_FUNC)&wk_kendall_tau_warmup_period, 1}, {"wk_kendall_tau_is_ready", (DL_FUNC)&wk_kendall_tau_is_ready, 1}, + {"wk_kendall_tau_name", (DL_FUNC)&wk_kendall_tau_name, 1}, {"wk_kendall_tau_reset", (DL_FUNC)&wk_kendall_tau_reset, 1}, {"wk_kicking_new", (DL_FUNC)&wk_kicking_new, 0}, {"wk_kicking_update", (DL_FUNC)&wk_kicking_update, 7}, {"wk_kicking_batch", (DL_FUNC)&wk_kicking_batch, 7}, {"wk_kicking_warmup_period", (DL_FUNC)&wk_kicking_warmup_period, 1}, {"wk_kicking_is_ready", (DL_FUNC)&wk_kicking_is_ready, 1}, + {"wk_kicking_name", (DL_FUNC)&wk_kicking_name, 1}, {"wk_kicking_reset", (DL_FUNC)&wk_kicking_reset, 1}, {"wk_kicking_by_length_new", (DL_FUNC)&wk_kicking_by_length_new, 0}, {"wk_kicking_by_length_update", (DL_FUNC)&wk_kicking_by_length_update, 7}, {"wk_kicking_by_length_batch", (DL_FUNC)&wk_kicking_by_length_batch, 7}, {"wk_kicking_by_length_warmup_period", (DL_FUNC)&wk_kicking_by_length_warmup_period, 1}, {"wk_kicking_by_length_is_ready", (DL_FUNC)&wk_kicking_by_length_is_ready, 1}, + {"wk_kicking_by_length_name", (DL_FUNC)&wk_kicking_by_length_name, 1}, {"wk_kicking_by_length_reset", (DL_FUNC)&wk_kicking_by_length_reset, 1}, {"wk_kst_new", (DL_FUNC)&wk_kst_new, 9}, {"wk_kst_update", (DL_FUNC)&wk_kst_update, 2}, {"wk_kst_warmup_period", (DL_FUNC)&wk_kst_warmup_period, 1}, {"wk_kst_is_ready", (DL_FUNC)&wk_kst_is_ready, 1}, + {"wk_kst_name", (DL_FUNC)&wk_kst_name, 1}, {"wk_kst_reset", (DL_FUNC)&wk_kst_reset, 1}, {"wk_kurtosis_new", (DL_FUNC)&wk_kurtosis_new, 1}, {"wk_kurtosis_update", (DL_FUNC)&wk_kurtosis_update, 2}, {"wk_kurtosis_batch", (DL_FUNC)&wk_kurtosis_batch, 2}, {"wk_kurtosis_warmup_period", (DL_FUNC)&wk_kurtosis_warmup_period, 1}, {"wk_kurtosis_is_ready", (DL_FUNC)&wk_kurtosis_is_ready, 1}, + {"wk_kurtosis_name", (DL_FUNC)&wk_kurtosis_name, 1}, {"wk_kurtosis_reset", (DL_FUNC)&wk_kurtosis_reset, 1}, {"wk_kvo_new", (DL_FUNC)&wk_kvo_new, 2}, {"wk_kvo_update", (DL_FUNC)&wk_kvo_update, 7}, {"wk_kvo_batch", (DL_FUNC)&wk_kvo_batch, 7}, {"wk_kvo_warmup_period", (DL_FUNC)&wk_kvo_warmup_period, 1}, {"wk_kvo_is_ready", (DL_FUNC)&wk_kvo_is_ready, 1}, + {"wk_kvo_name", (DL_FUNC)&wk_kvo_name, 1}, {"wk_kvo_reset", (DL_FUNC)&wk_kvo_reset, 1}, {"wk_kyles_lambda_new", (DL_FUNC)&wk_kyles_lambda_new, 1}, {"wk_kyles_lambda_update", (DL_FUNC)&wk_kyles_lambda_update, 6}, {"wk_kyles_lambda_warmup_period", (DL_FUNC)&wk_kyles_lambda_warmup_period, 1}, {"wk_kyles_lambda_is_ready", (DL_FUNC)&wk_kyles_lambda_is_ready, 1}, + {"wk_kyles_lambda_name", (DL_FUNC)&wk_kyles_lambda_name, 1}, {"wk_kyles_lambda_reset", (DL_FUNC)&wk_kyles_lambda_reset, 1}, {"wk_ladder_bottom_new", (DL_FUNC)&wk_ladder_bottom_new, 0}, {"wk_ladder_bottom_update", (DL_FUNC)&wk_ladder_bottom_update, 7}, {"wk_ladder_bottom_batch", (DL_FUNC)&wk_ladder_bottom_batch, 7}, {"wk_ladder_bottom_warmup_period", (DL_FUNC)&wk_ladder_bottom_warmup_period, 1}, {"wk_ladder_bottom_is_ready", (DL_FUNC)&wk_ladder_bottom_is_ready, 1}, + {"wk_ladder_bottom_name", (DL_FUNC)&wk_ladder_bottom_name, 1}, {"wk_ladder_bottom_reset", (DL_FUNC)&wk_ladder_bottom_reset, 1}, {"wk_laguerre_rsi_new", (DL_FUNC)&wk_laguerre_rsi_new, 1}, {"wk_laguerre_rsi_update", (DL_FUNC)&wk_laguerre_rsi_update, 2}, {"wk_laguerre_rsi_batch", (DL_FUNC)&wk_laguerre_rsi_batch, 2}, {"wk_laguerre_rsi_warmup_period", (DL_FUNC)&wk_laguerre_rsi_warmup_period, 1}, {"wk_laguerre_rsi_is_ready", (DL_FUNC)&wk_laguerre_rsi_is_ready, 1}, + {"wk_laguerre_rsi_name", (DL_FUNC)&wk_laguerre_rsi_name, 1}, {"wk_laguerre_rsi_reset", (DL_FUNC)&wk_laguerre_rsi_reset, 1}, {"wk_lead_lag_cross_correlation_new", (DL_FUNC)&wk_lead_lag_cross_correlation_new, 2}, {"wk_lead_lag_cross_correlation_update", (DL_FUNC)&wk_lead_lag_cross_correlation_update, 3}, {"wk_lead_lag_cross_correlation_warmup_period", (DL_FUNC)&wk_lead_lag_cross_correlation_warmup_period, 1}, {"wk_lead_lag_cross_correlation_is_ready", (DL_FUNC)&wk_lead_lag_cross_correlation_is_ready, 1}, + {"wk_lead_lag_cross_correlation_name", (DL_FUNC)&wk_lead_lag_cross_correlation_name, 1}, {"wk_lead_lag_cross_correlation_reset", (DL_FUNC)&wk_lead_lag_cross_correlation_reset, 1}, {"wk_lin_reg_angle_new", (DL_FUNC)&wk_lin_reg_angle_new, 1}, {"wk_lin_reg_angle_update", (DL_FUNC)&wk_lin_reg_angle_update, 2}, {"wk_lin_reg_angle_batch", (DL_FUNC)&wk_lin_reg_angle_batch, 2}, {"wk_lin_reg_angle_warmup_period", (DL_FUNC)&wk_lin_reg_angle_warmup_period, 1}, {"wk_lin_reg_angle_is_ready", (DL_FUNC)&wk_lin_reg_angle_is_ready, 1}, + {"wk_lin_reg_angle_name", (DL_FUNC)&wk_lin_reg_angle_name, 1}, {"wk_lin_reg_angle_reset", (DL_FUNC)&wk_lin_reg_angle_reset, 1}, {"wk_lin_reg_channel_new", (DL_FUNC)&wk_lin_reg_channel_new, 2}, {"wk_lin_reg_channel_update", (DL_FUNC)&wk_lin_reg_channel_update, 2}, {"wk_lin_reg_channel_warmup_period", (DL_FUNC)&wk_lin_reg_channel_warmup_period, 1}, {"wk_lin_reg_channel_is_ready", (DL_FUNC)&wk_lin_reg_channel_is_ready, 1}, + {"wk_lin_reg_channel_name", (DL_FUNC)&wk_lin_reg_channel_name, 1}, {"wk_lin_reg_channel_reset", (DL_FUNC)&wk_lin_reg_channel_reset, 1}, {"wk_lin_reg_intercept_new", (DL_FUNC)&wk_lin_reg_intercept_new, 1}, {"wk_lin_reg_intercept_update", (DL_FUNC)&wk_lin_reg_intercept_update, 2}, {"wk_lin_reg_intercept_batch", (DL_FUNC)&wk_lin_reg_intercept_batch, 2}, {"wk_lin_reg_intercept_warmup_period", (DL_FUNC)&wk_lin_reg_intercept_warmup_period, 1}, {"wk_lin_reg_intercept_is_ready", (DL_FUNC)&wk_lin_reg_intercept_is_ready, 1}, + {"wk_lin_reg_intercept_name", (DL_FUNC)&wk_lin_reg_intercept_name, 1}, {"wk_lin_reg_intercept_reset", (DL_FUNC)&wk_lin_reg_intercept_reset, 1}, {"wk_lin_reg_slope_new", (DL_FUNC)&wk_lin_reg_slope_new, 1}, {"wk_lin_reg_slope_update", (DL_FUNC)&wk_lin_reg_slope_update, 2}, {"wk_lin_reg_slope_batch", (DL_FUNC)&wk_lin_reg_slope_batch, 2}, {"wk_lin_reg_slope_warmup_period", (DL_FUNC)&wk_lin_reg_slope_warmup_period, 1}, {"wk_lin_reg_slope_is_ready", (DL_FUNC)&wk_lin_reg_slope_is_ready, 1}, + {"wk_lin_reg_slope_name", (DL_FUNC)&wk_lin_reg_slope_name, 1}, {"wk_lin_reg_slope_reset", (DL_FUNC)&wk_lin_reg_slope_reset, 1}, {"wk_linear_regression_new", (DL_FUNC)&wk_linear_regression_new, 1}, {"wk_linear_regression_update", (DL_FUNC)&wk_linear_regression_update, 2}, {"wk_linear_regression_batch", (DL_FUNC)&wk_linear_regression_batch, 2}, {"wk_linear_regression_warmup_period", (DL_FUNC)&wk_linear_regression_warmup_period, 1}, {"wk_linear_regression_is_ready", (DL_FUNC)&wk_linear_regression_is_ready, 1}, + {"wk_linear_regression_name", (DL_FUNC)&wk_linear_regression_name, 1}, {"wk_linear_regression_reset", (DL_FUNC)&wk_linear_regression_reset, 1}, {"wk_liquidation_features_new", (DL_FUNC)&wk_liquidation_features_new, 0}, {"wk_liquidation_features_update", (DL_FUNC)&wk_liquidation_features_update, 13}, {"wk_liquidation_features_warmup_period", (DL_FUNC)&wk_liquidation_features_warmup_period, 1}, {"wk_liquidation_features_is_ready", (DL_FUNC)&wk_liquidation_features_is_ready, 1}, + {"wk_liquidation_features_name", (DL_FUNC)&wk_liquidation_features_name, 1}, {"wk_liquidation_features_reset", (DL_FUNC)&wk_liquidation_features_reset, 1}, {"wk_log_return_new", (DL_FUNC)&wk_log_return_new, 1}, {"wk_log_return_update", (DL_FUNC)&wk_log_return_update, 2}, {"wk_log_return_batch", (DL_FUNC)&wk_log_return_batch, 2}, {"wk_log_return_warmup_period", (DL_FUNC)&wk_log_return_warmup_period, 1}, {"wk_log_return_is_ready", (DL_FUNC)&wk_log_return_is_ready, 1}, + {"wk_log_return_name", (DL_FUNC)&wk_log_return_name, 1}, {"wk_log_return_reset", (DL_FUNC)&wk_log_return_reset, 1}, {"wk_long_legged_doji_new", (DL_FUNC)&wk_long_legged_doji_new, 0}, {"wk_long_legged_doji_update", (DL_FUNC)&wk_long_legged_doji_update, 7}, {"wk_long_legged_doji_batch", (DL_FUNC)&wk_long_legged_doji_batch, 7}, {"wk_long_legged_doji_warmup_period", (DL_FUNC)&wk_long_legged_doji_warmup_period, 1}, {"wk_long_legged_doji_is_ready", (DL_FUNC)&wk_long_legged_doji_is_ready, 1}, + {"wk_long_legged_doji_name", (DL_FUNC)&wk_long_legged_doji_name, 1}, {"wk_long_legged_doji_reset", (DL_FUNC)&wk_long_legged_doji_reset, 1}, {"wk_long_line_new", (DL_FUNC)&wk_long_line_new, 0}, {"wk_long_line_update", (DL_FUNC)&wk_long_line_update, 7}, {"wk_long_line_batch", (DL_FUNC)&wk_long_line_batch, 7}, {"wk_long_line_warmup_period", (DL_FUNC)&wk_long_line_warmup_period, 1}, {"wk_long_line_is_ready", (DL_FUNC)&wk_long_line_is_ready, 1}, + {"wk_long_line_name", (DL_FUNC)&wk_long_line_name, 1}, {"wk_long_line_reset", (DL_FUNC)&wk_long_line_reset, 1}, {"wk_long_short_ratio_new", (DL_FUNC)&wk_long_short_ratio_new, 0}, {"wk_long_short_ratio_update", (DL_FUNC)&wk_long_short_ratio_update, 13}, {"wk_long_short_ratio_warmup_period", (DL_FUNC)&wk_long_short_ratio_warmup_period, 1}, {"wk_long_short_ratio_is_ready", (DL_FUNC)&wk_long_short_ratio_is_ready, 1}, + {"wk_long_short_ratio_name", (DL_FUNC)&wk_long_short_ratio_name, 1}, {"wk_long_short_ratio_reset", (DL_FUNC)&wk_long_short_ratio_reset, 1}, {"wk_m2_measure_new", (DL_FUNC)&wk_m2_measure_new, 3}, {"wk_m2_measure_update", (DL_FUNC)&wk_m2_measure_update, 2}, {"wk_m2_measure_batch", (DL_FUNC)&wk_m2_measure_batch, 2}, {"wk_m2_measure_warmup_period", (DL_FUNC)&wk_m2_measure_warmup_period, 1}, {"wk_m2_measure_is_ready", (DL_FUNC)&wk_m2_measure_is_ready, 1}, + {"wk_m2_measure_name", (DL_FUNC)&wk_m2_measure_name, 1}, {"wk_m2_measure_reset", (DL_FUNC)&wk_m2_measure_reset, 1}, {"wk_ma_envelope_new", (DL_FUNC)&wk_ma_envelope_new, 2}, {"wk_ma_envelope_update", (DL_FUNC)&wk_ma_envelope_update, 2}, {"wk_ma_envelope_warmup_period", (DL_FUNC)&wk_ma_envelope_warmup_period, 1}, {"wk_ma_envelope_is_ready", (DL_FUNC)&wk_ma_envelope_is_ready, 1}, + {"wk_ma_envelope_name", (DL_FUNC)&wk_ma_envelope_name, 1}, {"wk_ma_envelope_reset", (DL_FUNC)&wk_ma_envelope_reset, 1}, {"wk_macd_ext_new", (DL_FUNC)&wk_macd_ext_new, 6}, {"wk_macd_ext_update", (DL_FUNC)&wk_macd_ext_update, 2}, {"wk_macd_ext_warmup_period", (DL_FUNC)&wk_macd_ext_warmup_period, 1}, {"wk_macd_ext_is_ready", (DL_FUNC)&wk_macd_ext_is_ready, 1}, + {"wk_macd_ext_name", (DL_FUNC)&wk_macd_ext_name, 1}, {"wk_macd_ext_reset", (DL_FUNC)&wk_macd_ext_reset, 1}, {"wk_macd_fix_new", (DL_FUNC)&wk_macd_fix_new, 1}, {"wk_macd_fix_update", (DL_FUNC)&wk_macd_fix_update, 2}, {"wk_macd_fix_warmup_period", (DL_FUNC)&wk_macd_fix_warmup_period, 1}, {"wk_macd_fix_is_ready", (DL_FUNC)&wk_macd_fix_is_ready, 1}, + {"wk_macd_fix_name", (DL_FUNC)&wk_macd_fix_name, 1}, {"wk_macd_fix_reset", (DL_FUNC)&wk_macd_fix_reset, 1}, {"wk_macd_histogram_new", (DL_FUNC)&wk_macd_histogram_new, 3}, {"wk_macd_histogram_update", (DL_FUNC)&wk_macd_histogram_update, 2}, {"wk_macd_histogram_batch", (DL_FUNC)&wk_macd_histogram_batch, 2}, {"wk_macd_histogram_warmup_period", (DL_FUNC)&wk_macd_histogram_warmup_period, 1}, {"wk_macd_histogram_is_ready", (DL_FUNC)&wk_macd_histogram_is_ready, 1}, + {"wk_macd_histogram_name", (DL_FUNC)&wk_macd_histogram_name, 1}, {"wk_macd_histogram_reset", (DL_FUNC)&wk_macd_histogram_reset, 1}, {"wk_macd_indicator_new", (DL_FUNC)&wk_macd_indicator_new, 3}, {"wk_macd_indicator_update", (DL_FUNC)&wk_macd_indicator_update, 2}, {"wk_macd_indicator_warmup_period", (DL_FUNC)&wk_macd_indicator_warmup_period, 1}, {"wk_macd_indicator_is_ready", (DL_FUNC)&wk_macd_indicator_is_ready, 1}, + {"wk_macd_indicator_name", (DL_FUNC)&wk_macd_indicator_name, 1}, {"wk_macd_indicator_reset", (DL_FUNC)&wk_macd_indicator_reset, 1}, {"wk_mama_new", (DL_FUNC)&wk_mama_new, 2}, {"wk_mama_update", (DL_FUNC)&wk_mama_update, 2}, {"wk_mama_warmup_period", (DL_FUNC)&wk_mama_warmup_period, 1}, {"wk_mama_is_ready", (DL_FUNC)&wk_mama_is_ready, 1}, + {"wk_mama_name", (DL_FUNC)&wk_mama_name, 1}, {"wk_mama_reset", (DL_FUNC)&wk_mama_reset, 1}, {"wk_market_facilitation_index_new", (DL_FUNC)&wk_market_facilitation_index_new, 0}, {"wk_market_facilitation_index_update", (DL_FUNC)&wk_market_facilitation_index_update, 7}, {"wk_market_facilitation_index_batch", (DL_FUNC)&wk_market_facilitation_index_batch, 7}, {"wk_market_facilitation_index_warmup_period", (DL_FUNC)&wk_market_facilitation_index_warmup_period, 1}, {"wk_market_facilitation_index_is_ready", (DL_FUNC)&wk_market_facilitation_index_is_ready, 1}, + {"wk_market_facilitation_index_name", (DL_FUNC)&wk_market_facilitation_index_name, 1}, {"wk_market_facilitation_index_reset", (DL_FUNC)&wk_market_facilitation_index_reset, 1}, {"wk_martin_ratio_new", (DL_FUNC)&wk_martin_ratio_new, 1}, {"wk_martin_ratio_update", (DL_FUNC)&wk_martin_ratio_update, 2}, {"wk_martin_ratio_batch", (DL_FUNC)&wk_martin_ratio_batch, 2}, {"wk_martin_ratio_warmup_period", (DL_FUNC)&wk_martin_ratio_warmup_period, 1}, {"wk_martin_ratio_is_ready", (DL_FUNC)&wk_martin_ratio_is_ready, 1}, + {"wk_martin_ratio_name", (DL_FUNC)&wk_martin_ratio_name, 1}, {"wk_martin_ratio_reset", (DL_FUNC)&wk_martin_ratio_reset, 1}, {"wk_marubozu_new", (DL_FUNC)&wk_marubozu_new, 0}, {"wk_marubozu_update", (DL_FUNC)&wk_marubozu_update, 7}, {"wk_marubozu_batch", (DL_FUNC)&wk_marubozu_batch, 7}, {"wk_marubozu_warmup_period", (DL_FUNC)&wk_marubozu_warmup_period, 1}, {"wk_marubozu_is_ready", (DL_FUNC)&wk_marubozu_is_ready, 1}, + {"wk_marubozu_name", (DL_FUNC)&wk_marubozu_name, 1}, {"wk_marubozu_reset", (DL_FUNC)&wk_marubozu_reset, 1}, {"wk_mass_index_new", (DL_FUNC)&wk_mass_index_new, 2}, {"wk_mass_index_update", (DL_FUNC)&wk_mass_index_update, 7}, {"wk_mass_index_batch", (DL_FUNC)&wk_mass_index_batch, 7}, {"wk_mass_index_warmup_period", (DL_FUNC)&wk_mass_index_warmup_period, 1}, {"wk_mass_index_is_ready", (DL_FUNC)&wk_mass_index_is_ready, 1}, + {"wk_mass_index_name", (DL_FUNC)&wk_mass_index_name, 1}, {"wk_mass_index_reset", (DL_FUNC)&wk_mass_index_reset, 1}, {"wk_mat_hold_new", (DL_FUNC)&wk_mat_hold_new, 0}, {"wk_mat_hold_update", (DL_FUNC)&wk_mat_hold_update, 7}, {"wk_mat_hold_batch", (DL_FUNC)&wk_mat_hold_batch, 7}, {"wk_mat_hold_warmup_period", (DL_FUNC)&wk_mat_hold_warmup_period, 1}, {"wk_mat_hold_is_ready", (DL_FUNC)&wk_mat_hold_is_ready, 1}, + {"wk_mat_hold_name", (DL_FUNC)&wk_mat_hold_name, 1}, {"wk_mat_hold_reset", (DL_FUNC)&wk_mat_hold_reset, 1}, {"wk_matching_low_new", (DL_FUNC)&wk_matching_low_new, 0}, {"wk_matching_low_update", (DL_FUNC)&wk_matching_low_update, 7}, {"wk_matching_low_batch", (DL_FUNC)&wk_matching_low_batch, 7}, {"wk_matching_low_warmup_period", (DL_FUNC)&wk_matching_low_warmup_period, 1}, {"wk_matching_low_is_ready", (DL_FUNC)&wk_matching_low_is_ready, 1}, + {"wk_matching_low_name", (DL_FUNC)&wk_matching_low_name, 1}, {"wk_matching_low_reset", (DL_FUNC)&wk_matching_low_reset, 1}, {"wk_max_drawdown_new", (DL_FUNC)&wk_max_drawdown_new, 1}, {"wk_max_drawdown_update", (DL_FUNC)&wk_max_drawdown_update, 2}, {"wk_max_drawdown_batch", (DL_FUNC)&wk_max_drawdown_batch, 2}, {"wk_max_drawdown_warmup_period", (DL_FUNC)&wk_max_drawdown_warmup_period, 1}, {"wk_max_drawdown_is_ready", (DL_FUNC)&wk_max_drawdown_is_ready, 1}, + {"wk_max_drawdown_name", (DL_FUNC)&wk_max_drawdown_name, 1}, {"wk_max_drawdown_reset", (DL_FUNC)&wk_max_drawdown_reset, 1}, {"wk_mc_clellan_oscillator_new", (DL_FUNC)&wk_mc_clellan_oscillator_new, 0}, {"wk_mc_clellan_oscillator_update", (DL_FUNC)&wk_mc_clellan_oscillator_update, 8}, {"wk_mc_clellan_oscillator_warmup_period", (DL_FUNC)&wk_mc_clellan_oscillator_warmup_period, 1}, {"wk_mc_clellan_oscillator_is_ready", (DL_FUNC)&wk_mc_clellan_oscillator_is_ready, 1}, + {"wk_mc_clellan_oscillator_name", (DL_FUNC)&wk_mc_clellan_oscillator_name, 1}, {"wk_mc_clellan_oscillator_reset", (DL_FUNC)&wk_mc_clellan_oscillator_reset, 1}, {"wk_mc_clellan_summation_index_new", (DL_FUNC)&wk_mc_clellan_summation_index_new, 0}, {"wk_mc_clellan_summation_index_update", (DL_FUNC)&wk_mc_clellan_summation_index_update, 8}, {"wk_mc_clellan_summation_index_warmup_period", (DL_FUNC)&wk_mc_clellan_summation_index_warmup_period, 1}, {"wk_mc_clellan_summation_index_is_ready", (DL_FUNC)&wk_mc_clellan_summation_index_is_ready, 1}, + {"wk_mc_clellan_summation_index_name", (DL_FUNC)&wk_mc_clellan_summation_index_name, 1}, {"wk_mc_clellan_summation_index_reset", (DL_FUNC)&wk_mc_clellan_summation_index_reset, 1}, {"wk_mc_ginley_dynamic_new", (DL_FUNC)&wk_mc_ginley_dynamic_new, 1}, {"wk_mc_ginley_dynamic_update", (DL_FUNC)&wk_mc_ginley_dynamic_update, 2}, {"wk_mc_ginley_dynamic_batch", (DL_FUNC)&wk_mc_ginley_dynamic_batch, 2}, {"wk_mc_ginley_dynamic_warmup_period", (DL_FUNC)&wk_mc_ginley_dynamic_warmup_period, 1}, {"wk_mc_ginley_dynamic_is_ready", (DL_FUNC)&wk_mc_ginley_dynamic_is_ready, 1}, + {"wk_mc_ginley_dynamic_name", (DL_FUNC)&wk_mc_ginley_dynamic_name, 1}, {"wk_mc_ginley_dynamic_reset", (DL_FUNC)&wk_mc_ginley_dynamic_reset, 1}, {"wk_median_absolute_deviation_new", (DL_FUNC)&wk_median_absolute_deviation_new, 1}, {"wk_median_absolute_deviation_update", (DL_FUNC)&wk_median_absolute_deviation_update, 2}, {"wk_median_absolute_deviation_batch", (DL_FUNC)&wk_median_absolute_deviation_batch, 2}, {"wk_median_absolute_deviation_warmup_period", (DL_FUNC)&wk_median_absolute_deviation_warmup_period, 1}, {"wk_median_absolute_deviation_is_ready", (DL_FUNC)&wk_median_absolute_deviation_is_ready, 1}, + {"wk_median_absolute_deviation_name", (DL_FUNC)&wk_median_absolute_deviation_name, 1}, {"wk_median_absolute_deviation_reset", (DL_FUNC)&wk_median_absolute_deviation_reset, 1}, {"wk_median_channel_new", (DL_FUNC)&wk_median_channel_new, 2}, {"wk_median_channel_update", (DL_FUNC)&wk_median_channel_update, 2}, {"wk_median_channel_warmup_period", (DL_FUNC)&wk_median_channel_warmup_period, 1}, {"wk_median_channel_is_ready", (DL_FUNC)&wk_median_channel_is_ready, 1}, + {"wk_median_channel_name", (DL_FUNC)&wk_median_channel_name, 1}, {"wk_median_channel_reset", (DL_FUNC)&wk_median_channel_reset, 1}, {"wk_median_ma_new", (DL_FUNC)&wk_median_ma_new, 1}, {"wk_median_ma_update", (DL_FUNC)&wk_median_ma_update, 2}, {"wk_median_ma_batch", (DL_FUNC)&wk_median_ma_batch, 2}, {"wk_median_ma_warmup_period", (DL_FUNC)&wk_median_ma_warmup_period, 1}, {"wk_median_ma_is_ready", (DL_FUNC)&wk_median_ma_is_ready, 1}, + {"wk_median_ma_name", (DL_FUNC)&wk_median_ma_name, 1}, {"wk_median_ma_reset", (DL_FUNC)&wk_median_ma_reset, 1}, {"wk_median_price_new", (DL_FUNC)&wk_median_price_new, 0}, {"wk_median_price_update", (DL_FUNC)&wk_median_price_update, 7}, {"wk_median_price_batch", (DL_FUNC)&wk_median_price_batch, 7}, {"wk_median_price_warmup_period", (DL_FUNC)&wk_median_price_warmup_period, 1}, {"wk_median_price_is_ready", (DL_FUNC)&wk_median_price_is_ready, 1}, + {"wk_median_price_name", (DL_FUNC)&wk_median_price_name, 1}, {"wk_median_price_reset", (DL_FUNC)&wk_median_price_reset, 1}, {"wk_mfi_new", (DL_FUNC)&wk_mfi_new, 1}, {"wk_mfi_update", (DL_FUNC)&wk_mfi_update, 7}, {"wk_mfi_batch", (DL_FUNC)&wk_mfi_batch, 7}, {"wk_mfi_warmup_period", (DL_FUNC)&wk_mfi_warmup_period, 1}, {"wk_mfi_is_ready", (DL_FUNC)&wk_mfi_is_ready, 1}, + {"wk_mfi_name", (DL_FUNC)&wk_mfi_name, 1}, {"wk_mfi_reset", (DL_FUNC)&wk_mfi_reset, 1}, {"wk_microprice_new", (DL_FUNC)&wk_microprice_new, 0}, {"wk_microprice_update", (DL_FUNC)&wk_microprice_update, 5}, {"wk_microprice_warmup_period", (DL_FUNC)&wk_microprice_warmup_period, 1}, {"wk_microprice_is_ready", (DL_FUNC)&wk_microprice_is_ready, 1}, + {"wk_microprice_name", (DL_FUNC)&wk_microprice_name, 1}, {"wk_microprice_reset", (DL_FUNC)&wk_microprice_reset, 1}, {"wk_mid_point_new", (DL_FUNC)&wk_mid_point_new, 1}, {"wk_mid_point_update", (DL_FUNC)&wk_mid_point_update, 2}, {"wk_mid_point_batch", (DL_FUNC)&wk_mid_point_batch, 2}, {"wk_mid_point_warmup_period", (DL_FUNC)&wk_mid_point_warmup_period, 1}, {"wk_mid_point_is_ready", (DL_FUNC)&wk_mid_point_is_ready, 1}, + {"wk_mid_point_name", (DL_FUNC)&wk_mid_point_name, 1}, {"wk_mid_point_reset", (DL_FUNC)&wk_mid_point_reset, 1}, {"wk_mid_price_new", (DL_FUNC)&wk_mid_price_new, 1}, {"wk_mid_price_update", (DL_FUNC)&wk_mid_price_update, 7}, {"wk_mid_price_batch", (DL_FUNC)&wk_mid_price_batch, 7}, {"wk_mid_price_warmup_period", (DL_FUNC)&wk_mid_price_warmup_period, 1}, {"wk_mid_price_is_ready", (DL_FUNC)&wk_mid_price_is_ready, 1}, + {"wk_mid_price_name", (DL_FUNC)&wk_mid_price_name, 1}, {"wk_mid_price_reset", (DL_FUNC)&wk_mid_price_reset, 1}, {"wk_minus_di_new", (DL_FUNC)&wk_minus_di_new, 1}, {"wk_minus_di_update", (DL_FUNC)&wk_minus_di_update, 7}, {"wk_minus_di_batch", (DL_FUNC)&wk_minus_di_batch, 7}, {"wk_minus_di_warmup_period", (DL_FUNC)&wk_minus_di_warmup_period, 1}, {"wk_minus_di_is_ready", (DL_FUNC)&wk_minus_di_is_ready, 1}, + {"wk_minus_di_name", (DL_FUNC)&wk_minus_di_name, 1}, {"wk_minus_di_reset", (DL_FUNC)&wk_minus_di_reset, 1}, {"wk_minus_dm_new", (DL_FUNC)&wk_minus_dm_new, 1}, {"wk_minus_dm_update", (DL_FUNC)&wk_minus_dm_update, 7}, {"wk_minus_dm_batch", (DL_FUNC)&wk_minus_dm_batch, 7}, {"wk_minus_dm_warmup_period", (DL_FUNC)&wk_minus_dm_warmup_period, 1}, {"wk_minus_dm_is_ready", (DL_FUNC)&wk_minus_dm_is_ready, 1}, + {"wk_minus_dm_name", (DL_FUNC)&wk_minus_dm_name, 1}, {"wk_minus_dm_reset", (DL_FUNC)&wk_minus_dm_reset, 1}, {"wk_modified_ma_stop_new", (DL_FUNC)&wk_modified_ma_stop_new, 1}, {"wk_modified_ma_stop_update", (DL_FUNC)&wk_modified_ma_stop_update, 7}, {"wk_modified_ma_stop_warmup_period", (DL_FUNC)&wk_modified_ma_stop_warmup_period, 1}, {"wk_modified_ma_stop_is_ready", (DL_FUNC)&wk_modified_ma_stop_is_ready, 1}, + {"wk_modified_ma_stop_name", (DL_FUNC)&wk_modified_ma_stop_name, 1}, {"wk_modified_ma_stop_reset", (DL_FUNC)&wk_modified_ma_stop_reset, 1}, {"wk_mom_new", (DL_FUNC)&wk_mom_new, 1}, {"wk_mom_update", (DL_FUNC)&wk_mom_update, 2}, {"wk_mom_batch", (DL_FUNC)&wk_mom_batch, 2}, {"wk_mom_warmup_period", (DL_FUNC)&wk_mom_warmup_period, 1}, {"wk_mom_is_ready", (DL_FUNC)&wk_mom_is_ready, 1}, + {"wk_mom_name", (DL_FUNC)&wk_mom_name, 1}, {"wk_mom_reset", (DL_FUNC)&wk_mom_reset, 1}, {"wk_morning_doji_star_new", (DL_FUNC)&wk_morning_doji_star_new, 0}, {"wk_morning_doji_star_update", (DL_FUNC)&wk_morning_doji_star_update, 7}, {"wk_morning_doji_star_batch", (DL_FUNC)&wk_morning_doji_star_batch, 7}, {"wk_morning_doji_star_warmup_period", (DL_FUNC)&wk_morning_doji_star_warmup_period, 1}, {"wk_morning_doji_star_is_ready", (DL_FUNC)&wk_morning_doji_star_is_ready, 1}, + {"wk_morning_doji_star_name", (DL_FUNC)&wk_morning_doji_star_name, 1}, {"wk_morning_doji_star_reset", (DL_FUNC)&wk_morning_doji_star_reset, 1}, {"wk_morning_evening_star_new", (DL_FUNC)&wk_morning_evening_star_new, 0}, {"wk_morning_evening_star_update", (DL_FUNC)&wk_morning_evening_star_update, 7}, {"wk_morning_evening_star_batch", (DL_FUNC)&wk_morning_evening_star_batch, 7}, {"wk_morning_evening_star_warmup_period", (DL_FUNC)&wk_morning_evening_star_warmup_period, 1}, {"wk_morning_evening_star_is_ready", (DL_FUNC)&wk_morning_evening_star_is_ready, 1}, + {"wk_morning_evening_star_name", (DL_FUNC)&wk_morning_evening_star_name, 1}, {"wk_morning_evening_star_reset", (DL_FUNC)&wk_morning_evening_star_reset, 1}, {"wk_murrey_math_lines_new", (DL_FUNC)&wk_murrey_math_lines_new, 1}, {"wk_murrey_math_lines_update", (DL_FUNC)&wk_murrey_math_lines_update, 7}, {"wk_murrey_math_lines_warmup_period", (DL_FUNC)&wk_murrey_math_lines_warmup_period, 1}, {"wk_murrey_math_lines_is_ready", (DL_FUNC)&wk_murrey_math_lines_is_ready, 1}, + {"wk_murrey_math_lines_name", (DL_FUNC)&wk_murrey_math_lines_name, 1}, {"wk_murrey_math_lines_reset", (DL_FUNC)&wk_murrey_math_lines_reset, 1}, {"wk_naked_poc_new", (DL_FUNC)&wk_naked_poc_new, 2}, {"wk_naked_poc_update", (DL_FUNC)&wk_naked_poc_update, 7}, {"wk_naked_poc_batch", (DL_FUNC)&wk_naked_poc_batch, 7}, {"wk_naked_poc_warmup_period", (DL_FUNC)&wk_naked_poc_warmup_period, 1}, {"wk_naked_poc_is_ready", (DL_FUNC)&wk_naked_poc_is_ready, 1}, + {"wk_naked_poc_name", (DL_FUNC)&wk_naked_poc_name, 1}, {"wk_naked_poc_reset", (DL_FUNC)&wk_naked_poc_reset, 1}, {"wk_natr_new", (DL_FUNC)&wk_natr_new, 1}, {"wk_natr_update", (DL_FUNC)&wk_natr_update, 7}, {"wk_natr_batch", (DL_FUNC)&wk_natr_batch, 7}, {"wk_natr_warmup_period", (DL_FUNC)&wk_natr_warmup_period, 1}, {"wk_natr_is_ready", (DL_FUNC)&wk_natr_is_ready, 1}, + {"wk_natr_name", (DL_FUNC)&wk_natr_name, 1}, {"wk_natr_reset", (DL_FUNC)&wk_natr_reset, 1}, {"wk_new_highs_new_lows_new", (DL_FUNC)&wk_new_highs_new_lows_new, 0}, {"wk_new_highs_new_lows_update", (DL_FUNC)&wk_new_highs_new_lows_update, 8}, {"wk_new_highs_new_lows_warmup_period", (DL_FUNC)&wk_new_highs_new_lows_warmup_period, 1}, {"wk_new_highs_new_lows_is_ready", (DL_FUNC)&wk_new_highs_new_lows_is_ready, 1}, + {"wk_new_highs_new_lows_name", (DL_FUNC)&wk_new_highs_new_lows_name, 1}, {"wk_new_highs_new_lows_reset", (DL_FUNC)&wk_new_highs_new_lows_reset, 1}, {"wk_new_price_lines_new", (DL_FUNC)&wk_new_price_lines_new, 1}, {"wk_new_price_lines_update", (DL_FUNC)&wk_new_price_lines_update, 7}, {"wk_new_price_lines_batch", (DL_FUNC)&wk_new_price_lines_batch, 7}, {"wk_new_price_lines_warmup_period", (DL_FUNC)&wk_new_price_lines_warmup_period, 1}, {"wk_new_price_lines_is_ready", (DL_FUNC)&wk_new_price_lines_is_ready, 1}, + {"wk_new_price_lines_name", (DL_FUNC)&wk_new_price_lines_name, 1}, {"wk_new_price_lines_reset", (DL_FUNC)&wk_new_price_lines_reset, 1}, {"wk_nrtr_new", (DL_FUNC)&wk_nrtr_new, 1}, {"wk_nrtr_update", (DL_FUNC)&wk_nrtr_update, 7}, {"wk_nrtr_warmup_period", (DL_FUNC)&wk_nrtr_warmup_period, 1}, {"wk_nrtr_is_ready", (DL_FUNC)&wk_nrtr_is_ready, 1}, + {"wk_nrtr_name", (DL_FUNC)&wk_nrtr_name, 1}, {"wk_nrtr_reset", (DL_FUNC)&wk_nrtr_reset, 1}, {"wk_nvi_new", (DL_FUNC)&wk_nvi_new, 0}, {"wk_nvi_update", (DL_FUNC)&wk_nvi_update, 7}, {"wk_nvi_batch", (DL_FUNC)&wk_nvi_batch, 7}, {"wk_nvi_warmup_period", (DL_FUNC)&wk_nvi_warmup_period, 1}, {"wk_nvi_is_ready", (DL_FUNC)&wk_nvi_is_ready, 1}, + {"wk_nvi_name", (DL_FUNC)&wk_nvi_name, 1}, {"wk_nvi_reset", (DL_FUNC)&wk_nvi_reset, 1}, {"wk_obv_new", (DL_FUNC)&wk_obv_new, 0}, {"wk_obv_update", (DL_FUNC)&wk_obv_update, 7}, {"wk_obv_batch", (DL_FUNC)&wk_obv_batch, 7}, {"wk_obv_warmup_period", (DL_FUNC)&wk_obv_warmup_period, 1}, {"wk_obv_is_ready", (DL_FUNC)&wk_obv_is_ready, 1}, + {"wk_obv_name", (DL_FUNC)&wk_obv_name, 1}, {"wk_obv_reset", (DL_FUNC)&wk_obv_reset, 1}, {"wk_oi_price_divergence_new", (DL_FUNC)&wk_oi_price_divergence_new, 1}, {"wk_oi_price_divergence_update", (DL_FUNC)&wk_oi_price_divergence_update, 13}, {"wk_oi_price_divergence_warmup_period", (DL_FUNC)&wk_oi_price_divergence_warmup_period, 1}, {"wk_oi_price_divergence_is_ready", (DL_FUNC)&wk_oi_price_divergence_is_ready, 1}, + {"wk_oi_price_divergence_name", (DL_FUNC)&wk_oi_price_divergence_name, 1}, {"wk_oi_price_divergence_reset", (DL_FUNC)&wk_oi_price_divergence_reset, 1}, {"wk_oi_to_volume_ratio_new", (DL_FUNC)&wk_oi_to_volume_ratio_new, 0}, {"wk_oi_to_volume_ratio_update", (DL_FUNC)&wk_oi_to_volume_ratio_update, 13}, {"wk_oi_to_volume_ratio_warmup_period", (DL_FUNC)&wk_oi_to_volume_ratio_warmup_period, 1}, {"wk_oi_to_volume_ratio_is_ready", (DL_FUNC)&wk_oi_to_volume_ratio_is_ready, 1}, + {"wk_oi_to_volume_ratio_name", (DL_FUNC)&wk_oi_to_volume_ratio_name, 1}, {"wk_oi_to_volume_ratio_reset", (DL_FUNC)&wk_oi_to_volume_ratio_reset, 1}, {"wk_oi_weighted_new", (DL_FUNC)&wk_oi_weighted_new, 0}, {"wk_oi_weighted_update", (DL_FUNC)&wk_oi_weighted_update, 13}, {"wk_oi_weighted_warmup_period", (DL_FUNC)&wk_oi_weighted_warmup_period, 1}, {"wk_oi_weighted_is_ready", (DL_FUNC)&wk_oi_weighted_is_ready, 1}, + {"wk_oi_weighted_name", (DL_FUNC)&wk_oi_weighted_name, 1}, {"wk_oi_weighted_reset", (DL_FUNC)&wk_oi_weighted_reset, 1}, {"wk_omega_ratio_new", (DL_FUNC)&wk_omega_ratio_new, 2}, {"wk_omega_ratio_update", (DL_FUNC)&wk_omega_ratio_update, 2}, {"wk_omega_ratio_batch", (DL_FUNC)&wk_omega_ratio_batch, 2}, {"wk_omega_ratio_warmup_period", (DL_FUNC)&wk_omega_ratio_warmup_period, 1}, {"wk_omega_ratio_is_ready", (DL_FUNC)&wk_omega_ratio_is_ready, 1}, + {"wk_omega_ratio_name", (DL_FUNC)&wk_omega_ratio_name, 1}, {"wk_omega_ratio_reset", (DL_FUNC)&wk_omega_ratio_reset, 1}, {"wk_on_neck_new", (DL_FUNC)&wk_on_neck_new, 0}, {"wk_on_neck_update", (DL_FUNC)&wk_on_neck_update, 7}, {"wk_on_neck_batch", (DL_FUNC)&wk_on_neck_batch, 7}, {"wk_on_neck_warmup_period", (DL_FUNC)&wk_on_neck_warmup_period, 1}, {"wk_on_neck_is_ready", (DL_FUNC)&wk_on_neck_is_ready, 1}, + {"wk_on_neck_name", (DL_FUNC)&wk_on_neck_name, 1}, {"wk_on_neck_reset", (DL_FUNC)&wk_on_neck_reset, 1}, {"wk_open_interest_delta_new", (DL_FUNC)&wk_open_interest_delta_new, 0}, {"wk_open_interest_delta_update", (DL_FUNC)&wk_open_interest_delta_update, 13}, {"wk_open_interest_delta_warmup_period", (DL_FUNC)&wk_open_interest_delta_warmup_period, 1}, {"wk_open_interest_delta_is_ready", (DL_FUNC)&wk_open_interest_delta_is_ready, 1}, + {"wk_open_interest_delta_name", (DL_FUNC)&wk_open_interest_delta_name, 1}, {"wk_open_interest_delta_reset", (DL_FUNC)&wk_open_interest_delta_reset, 1}, {"wk_open_interest_momentum_new", (DL_FUNC)&wk_open_interest_momentum_new, 1}, {"wk_open_interest_momentum_update", (DL_FUNC)&wk_open_interest_momentum_update, 13}, {"wk_open_interest_momentum_warmup_period", (DL_FUNC)&wk_open_interest_momentum_warmup_period, 1}, {"wk_open_interest_momentum_is_ready", (DL_FUNC)&wk_open_interest_momentum_is_ready, 1}, + {"wk_open_interest_momentum_name", (DL_FUNC)&wk_open_interest_momentum_name, 1}, {"wk_open_interest_momentum_reset", (DL_FUNC)&wk_open_interest_momentum_reset, 1}, {"wk_opening_marubozu_new", (DL_FUNC)&wk_opening_marubozu_new, 0}, {"wk_opening_marubozu_update", (DL_FUNC)&wk_opening_marubozu_update, 7}, {"wk_opening_marubozu_batch", (DL_FUNC)&wk_opening_marubozu_batch, 7}, {"wk_opening_marubozu_warmup_period", (DL_FUNC)&wk_opening_marubozu_warmup_period, 1}, {"wk_opening_marubozu_is_ready", (DL_FUNC)&wk_opening_marubozu_is_ready, 1}, + {"wk_opening_marubozu_name", (DL_FUNC)&wk_opening_marubozu_name, 1}, {"wk_opening_marubozu_reset", (DL_FUNC)&wk_opening_marubozu_reset, 1}, {"wk_opening_range_new", (DL_FUNC)&wk_opening_range_new, 1}, {"wk_opening_range_update", (DL_FUNC)&wk_opening_range_update, 7}, {"wk_opening_range_warmup_period", (DL_FUNC)&wk_opening_range_warmup_period, 1}, {"wk_opening_range_is_ready", (DL_FUNC)&wk_opening_range_is_ready, 1}, + {"wk_opening_range_name", (DL_FUNC)&wk_opening_range_name, 1}, {"wk_opening_range_reset", (DL_FUNC)&wk_opening_range_reset, 1}, {"wk_order_book_imbalance_full_new", (DL_FUNC)&wk_order_book_imbalance_full_new, 0}, {"wk_order_book_imbalance_full_update", (DL_FUNC)&wk_order_book_imbalance_full_update, 5}, {"wk_order_book_imbalance_full_warmup_period", (DL_FUNC)&wk_order_book_imbalance_full_warmup_period, 1}, {"wk_order_book_imbalance_full_is_ready", (DL_FUNC)&wk_order_book_imbalance_full_is_ready, 1}, + {"wk_order_book_imbalance_full_name", (DL_FUNC)&wk_order_book_imbalance_full_name, 1}, {"wk_order_book_imbalance_full_reset", (DL_FUNC)&wk_order_book_imbalance_full_reset, 1}, {"wk_order_book_imbalance_top1_new", (DL_FUNC)&wk_order_book_imbalance_top1_new, 0}, {"wk_order_book_imbalance_top1_update", (DL_FUNC)&wk_order_book_imbalance_top1_update, 5}, {"wk_order_book_imbalance_top1_warmup_period", (DL_FUNC)&wk_order_book_imbalance_top1_warmup_period, 1}, {"wk_order_book_imbalance_top1_is_ready", (DL_FUNC)&wk_order_book_imbalance_top1_is_ready, 1}, + {"wk_order_book_imbalance_top1_name", (DL_FUNC)&wk_order_book_imbalance_top1_name, 1}, {"wk_order_book_imbalance_top1_reset", (DL_FUNC)&wk_order_book_imbalance_top1_reset, 1}, {"wk_order_book_imbalance_top_n_new", (DL_FUNC)&wk_order_book_imbalance_top_n_new, 1}, {"wk_order_book_imbalance_top_n_update", (DL_FUNC)&wk_order_book_imbalance_top_n_update, 5}, {"wk_order_book_imbalance_top_n_warmup_period", (DL_FUNC)&wk_order_book_imbalance_top_n_warmup_period, 1}, {"wk_order_book_imbalance_top_n_is_ready", (DL_FUNC)&wk_order_book_imbalance_top_n_is_ready, 1}, + {"wk_order_book_imbalance_top_n_name", (DL_FUNC)&wk_order_book_imbalance_top_n_name, 1}, {"wk_order_book_imbalance_top_n_reset", (DL_FUNC)&wk_order_book_imbalance_top_n_reset, 1}, {"wk_order_flow_imbalance_new", (DL_FUNC)&wk_order_flow_imbalance_new, 1}, {"wk_order_flow_imbalance_update", (DL_FUNC)&wk_order_flow_imbalance_update, 5}, {"wk_order_flow_imbalance_warmup_period", (DL_FUNC)&wk_order_flow_imbalance_warmup_period, 1}, {"wk_order_flow_imbalance_is_ready", (DL_FUNC)&wk_order_flow_imbalance_is_ready, 1}, + {"wk_order_flow_imbalance_name", (DL_FUNC)&wk_order_flow_imbalance_name, 1}, {"wk_order_flow_imbalance_reset", (DL_FUNC)&wk_order_flow_imbalance_reset, 1}, {"wk_ou_half_life_new", (DL_FUNC)&wk_ou_half_life_new, 1}, {"wk_ou_half_life_update", (DL_FUNC)&wk_ou_half_life_update, 3}, {"wk_ou_half_life_batch", (DL_FUNC)&wk_ou_half_life_batch, 3}, {"wk_ou_half_life_warmup_period", (DL_FUNC)&wk_ou_half_life_warmup_period, 1}, {"wk_ou_half_life_is_ready", (DL_FUNC)&wk_ou_half_life_is_ready, 1}, + {"wk_ou_half_life_name", (DL_FUNC)&wk_ou_half_life_name, 1}, {"wk_ou_half_life_reset", (DL_FUNC)&wk_ou_half_life_reset, 1}, {"wk_overnight_gap_new", (DL_FUNC)&wk_overnight_gap_new, 1}, {"wk_overnight_gap_update", (DL_FUNC)&wk_overnight_gap_update, 7}, {"wk_overnight_gap_batch", (DL_FUNC)&wk_overnight_gap_batch, 7}, {"wk_overnight_gap_warmup_period", (DL_FUNC)&wk_overnight_gap_warmup_period, 1}, {"wk_overnight_gap_is_ready", (DL_FUNC)&wk_overnight_gap_is_ready, 1}, + {"wk_overnight_gap_name", (DL_FUNC)&wk_overnight_gap_name, 1}, {"wk_overnight_gap_reset", (DL_FUNC)&wk_overnight_gap_reset, 1}, {"wk_overnight_intraday_return_new", (DL_FUNC)&wk_overnight_intraday_return_new, 1}, {"wk_overnight_intraday_return_update", (DL_FUNC)&wk_overnight_intraday_return_update, 7}, {"wk_overnight_intraday_return_warmup_period", (DL_FUNC)&wk_overnight_intraday_return_warmup_period, 1}, {"wk_overnight_intraday_return_is_ready", (DL_FUNC)&wk_overnight_intraday_return_is_ready, 1}, + {"wk_overnight_intraday_return_name", (DL_FUNC)&wk_overnight_intraday_return_name, 1}, {"wk_overnight_intraday_return_reset", (DL_FUNC)&wk_overnight_intraday_return_reset, 1}, {"wk_pain_index_new", (DL_FUNC)&wk_pain_index_new, 1}, {"wk_pain_index_update", (DL_FUNC)&wk_pain_index_update, 2}, {"wk_pain_index_batch", (DL_FUNC)&wk_pain_index_batch, 2}, {"wk_pain_index_warmup_period", (DL_FUNC)&wk_pain_index_warmup_period, 1}, {"wk_pain_index_is_ready", (DL_FUNC)&wk_pain_index_is_ready, 1}, + {"wk_pain_index_name", (DL_FUNC)&wk_pain_index_name, 1}, {"wk_pain_index_reset", (DL_FUNC)&wk_pain_index_reset, 1}, {"wk_pair_spread_z_score_new", (DL_FUNC)&wk_pair_spread_z_score_new, 2}, {"wk_pair_spread_z_score_update", (DL_FUNC)&wk_pair_spread_z_score_update, 3}, {"wk_pair_spread_z_score_batch", (DL_FUNC)&wk_pair_spread_z_score_batch, 3}, {"wk_pair_spread_z_score_warmup_period", (DL_FUNC)&wk_pair_spread_z_score_warmup_period, 1}, {"wk_pair_spread_z_score_is_ready", (DL_FUNC)&wk_pair_spread_z_score_is_ready, 1}, + {"wk_pair_spread_z_score_name", (DL_FUNC)&wk_pair_spread_z_score_name, 1}, {"wk_pair_spread_z_score_reset", (DL_FUNC)&wk_pair_spread_z_score_reset, 1}, {"wk_pairwise_beta_new", (DL_FUNC)&wk_pairwise_beta_new, 1}, {"wk_pairwise_beta_update", (DL_FUNC)&wk_pairwise_beta_update, 3}, {"wk_pairwise_beta_batch", (DL_FUNC)&wk_pairwise_beta_batch, 3}, {"wk_pairwise_beta_warmup_period", (DL_FUNC)&wk_pairwise_beta_warmup_period, 1}, {"wk_pairwise_beta_is_ready", (DL_FUNC)&wk_pairwise_beta_is_ready, 1}, + {"wk_pairwise_beta_name", (DL_FUNC)&wk_pairwise_beta_name, 1}, {"wk_pairwise_beta_reset", (DL_FUNC)&wk_pairwise_beta_reset, 1}, {"wk_parkinson_volatility_new", (DL_FUNC)&wk_parkinson_volatility_new, 2}, {"wk_parkinson_volatility_update", (DL_FUNC)&wk_parkinson_volatility_update, 7}, {"wk_parkinson_volatility_batch", (DL_FUNC)&wk_parkinson_volatility_batch, 7}, {"wk_parkinson_volatility_warmup_period", (DL_FUNC)&wk_parkinson_volatility_warmup_period, 1}, {"wk_parkinson_volatility_is_ready", (DL_FUNC)&wk_parkinson_volatility_is_ready, 1}, + {"wk_parkinson_volatility_name", (DL_FUNC)&wk_parkinson_volatility_name, 1}, {"wk_parkinson_volatility_reset", (DL_FUNC)&wk_parkinson_volatility_reset, 1}, {"wk_pearson_correlation_new", (DL_FUNC)&wk_pearson_correlation_new, 1}, {"wk_pearson_correlation_update", (DL_FUNC)&wk_pearson_correlation_update, 3}, {"wk_pearson_correlation_batch", (DL_FUNC)&wk_pearson_correlation_batch, 3}, {"wk_pearson_correlation_warmup_period", (DL_FUNC)&wk_pearson_correlation_warmup_period, 1}, {"wk_pearson_correlation_is_ready", (DL_FUNC)&wk_pearson_correlation_is_ready, 1}, + {"wk_pearson_correlation_name", (DL_FUNC)&wk_pearson_correlation_name, 1}, {"wk_pearson_correlation_reset", (DL_FUNC)&wk_pearson_correlation_reset, 1}, {"wk_percent_above_ma_new", (DL_FUNC)&wk_percent_above_ma_new, 0}, {"wk_percent_above_ma_update", (DL_FUNC)&wk_percent_above_ma_update, 8}, {"wk_percent_above_ma_warmup_period", (DL_FUNC)&wk_percent_above_ma_warmup_period, 1}, {"wk_percent_above_ma_is_ready", (DL_FUNC)&wk_percent_above_ma_is_ready, 1}, + {"wk_percent_above_ma_name", (DL_FUNC)&wk_percent_above_ma_name, 1}, {"wk_percent_above_ma_reset", (DL_FUNC)&wk_percent_above_ma_reset, 1}, {"wk_percent_b_new", (DL_FUNC)&wk_percent_b_new, 2}, {"wk_percent_b_update", (DL_FUNC)&wk_percent_b_update, 2}, {"wk_percent_b_batch", (DL_FUNC)&wk_percent_b_batch, 2}, {"wk_percent_b_warmup_period", (DL_FUNC)&wk_percent_b_warmup_period, 1}, {"wk_percent_b_is_ready", (DL_FUNC)&wk_percent_b_is_ready, 1}, + {"wk_percent_b_name", (DL_FUNC)&wk_percent_b_name, 1}, {"wk_percent_b_reset", (DL_FUNC)&wk_percent_b_reset, 1}, {"wk_percentage_trailing_stop_new", (DL_FUNC)&wk_percentage_trailing_stop_new, 1}, {"wk_percentage_trailing_stop_update", (DL_FUNC)&wk_percentage_trailing_stop_update, 2}, {"wk_percentage_trailing_stop_batch", (DL_FUNC)&wk_percentage_trailing_stop_batch, 2}, {"wk_percentage_trailing_stop_warmup_period", (DL_FUNC)&wk_percentage_trailing_stop_warmup_period, 1}, {"wk_percentage_trailing_stop_is_ready", (DL_FUNC)&wk_percentage_trailing_stop_is_ready, 1}, + {"wk_percentage_trailing_stop_name", (DL_FUNC)&wk_percentage_trailing_stop_name, 1}, {"wk_percentage_trailing_stop_reset", (DL_FUNC)&wk_percentage_trailing_stop_reset, 1}, {"wk_perpetual_premium_index_new", (DL_FUNC)&wk_perpetual_premium_index_new, 0}, {"wk_perpetual_premium_index_update", (DL_FUNC)&wk_perpetual_premium_index_update, 13}, {"wk_perpetual_premium_index_warmup_period", (DL_FUNC)&wk_perpetual_premium_index_warmup_period, 1}, {"wk_perpetual_premium_index_is_ready", (DL_FUNC)&wk_perpetual_premium_index_is_ready, 1}, + {"wk_perpetual_premium_index_name", (DL_FUNC)&wk_perpetual_premium_index_name, 1}, {"wk_perpetual_premium_index_reset", (DL_FUNC)&wk_perpetual_premium_index_reset, 1}, {"wk_pgo_new", (DL_FUNC)&wk_pgo_new, 1}, {"wk_pgo_update", (DL_FUNC)&wk_pgo_update, 7}, {"wk_pgo_batch", (DL_FUNC)&wk_pgo_batch, 7}, {"wk_pgo_warmup_period", (DL_FUNC)&wk_pgo_warmup_period, 1}, {"wk_pgo_is_ready", (DL_FUNC)&wk_pgo_is_ready, 1}, + {"wk_pgo_name", (DL_FUNC)&wk_pgo_name, 1}, {"wk_pgo_reset", (DL_FUNC)&wk_pgo_reset, 1}, {"wk_piercing_dark_cloud_new", (DL_FUNC)&wk_piercing_dark_cloud_new, 0}, {"wk_piercing_dark_cloud_update", (DL_FUNC)&wk_piercing_dark_cloud_update, 7}, {"wk_piercing_dark_cloud_batch", (DL_FUNC)&wk_piercing_dark_cloud_batch, 7}, {"wk_piercing_dark_cloud_warmup_period", (DL_FUNC)&wk_piercing_dark_cloud_warmup_period, 1}, {"wk_piercing_dark_cloud_is_ready", (DL_FUNC)&wk_piercing_dark_cloud_is_ready, 1}, + {"wk_piercing_dark_cloud_name", (DL_FUNC)&wk_piercing_dark_cloud_name, 1}, {"wk_piercing_dark_cloud_reset", (DL_FUNC)&wk_piercing_dark_cloud_reset, 1}, {"wk_pin_new", (DL_FUNC)&wk_pin_new, 1}, {"wk_pin_update", (DL_FUNC)&wk_pin_update, 5}, {"wk_pin_warmup_period", (DL_FUNC)&wk_pin_warmup_period, 1}, {"wk_pin_is_ready", (DL_FUNC)&wk_pin_is_ready, 1}, + {"wk_pin_name", (DL_FUNC)&wk_pin_name, 1}, {"wk_pin_reset", (DL_FUNC)&wk_pin_reset, 1}, {"wk_pivot_reversal_new", (DL_FUNC)&wk_pivot_reversal_new, 2}, {"wk_pivot_reversal_update", (DL_FUNC)&wk_pivot_reversal_update, 7}, {"wk_pivot_reversal_batch", (DL_FUNC)&wk_pivot_reversal_batch, 7}, {"wk_pivot_reversal_warmup_period", (DL_FUNC)&wk_pivot_reversal_warmup_period, 1}, {"wk_pivot_reversal_is_ready", (DL_FUNC)&wk_pivot_reversal_is_ready, 1}, + {"wk_pivot_reversal_name", (DL_FUNC)&wk_pivot_reversal_name, 1}, {"wk_pivot_reversal_reset", (DL_FUNC)&wk_pivot_reversal_reset, 1}, {"wk_plus_di_new", (DL_FUNC)&wk_plus_di_new, 1}, {"wk_plus_di_update", (DL_FUNC)&wk_plus_di_update, 7}, {"wk_plus_di_batch", (DL_FUNC)&wk_plus_di_batch, 7}, {"wk_plus_di_warmup_period", (DL_FUNC)&wk_plus_di_warmup_period, 1}, {"wk_plus_di_is_ready", (DL_FUNC)&wk_plus_di_is_ready, 1}, + {"wk_plus_di_name", (DL_FUNC)&wk_plus_di_name, 1}, {"wk_plus_di_reset", (DL_FUNC)&wk_plus_di_reset, 1}, {"wk_plus_dm_new", (DL_FUNC)&wk_plus_dm_new, 1}, {"wk_plus_dm_update", (DL_FUNC)&wk_plus_dm_update, 7}, {"wk_plus_dm_batch", (DL_FUNC)&wk_plus_dm_batch, 7}, {"wk_plus_dm_warmup_period", (DL_FUNC)&wk_plus_dm_warmup_period, 1}, {"wk_plus_dm_is_ready", (DL_FUNC)&wk_plus_dm_is_ready, 1}, + {"wk_plus_dm_name", (DL_FUNC)&wk_plus_dm_name, 1}, {"wk_plus_dm_reset", (DL_FUNC)&wk_plus_dm_reset, 1}, {"wk_pmo_new", (DL_FUNC)&wk_pmo_new, 2}, {"wk_pmo_update", (DL_FUNC)&wk_pmo_update, 2}, {"wk_pmo_batch", (DL_FUNC)&wk_pmo_batch, 2}, {"wk_pmo_warmup_period", (DL_FUNC)&wk_pmo_warmup_period, 1}, {"wk_pmo_is_ready", (DL_FUNC)&wk_pmo_is_ready, 1}, + {"wk_pmo_name", (DL_FUNC)&wk_pmo_name, 1}, {"wk_pmo_reset", (DL_FUNC)&wk_pmo_reset, 1}, {"wk_point_and_figure_bars_new", (DL_FUNC)&wk_point_and_figure_bars_new, 2}, {"wk_point_and_figure_bars_update", (DL_FUNC)&wk_point_and_figure_bars_update, 7}, + {"wk_point_and_figure_bars_name", (DL_FUNC)&wk_point_and_figure_bars_name, 1}, {"wk_point_and_figure_bars_reset", (DL_FUNC)&wk_point_and_figure_bars_reset, 1}, {"wk_polarized_fractal_efficiency_new", (DL_FUNC)&wk_polarized_fractal_efficiency_new, 2}, {"wk_polarized_fractal_efficiency_update", (DL_FUNC)&wk_polarized_fractal_efficiency_update, 2}, {"wk_polarized_fractal_efficiency_batch", (DL_FUNC)&wk_polarized_fractal_efficiency_batch, 2}, {"wk_polarized_fractal_efficiency_warmup_period", (DL_FUNC)&wk_polarized_fractal_efficiency_warmup_period, 1}, {"wk_polarized_fractal_efficiency_is_ready", (DL_FUNC)&wk_polarized_fractal_efficiency_is_ready, 1}, + {"wk_polarized_fractal_efficiency_name", (DL_FUNC)&wk_polarized_fractal_efficiency_name, 1}, {"wk_polarized_fractal_efficiency_reset", (DL_FUNC)&wk_polarized_fractal_efficiency_reset, 1}, {"wk_ppo_new", (DL_FUNC)&wk_ppo_new, 2}, {"wk_ppo_update", (DL_FUNC)&wk_ppo_update, 2}, {"wk_ppo_batch", (DL_FUNC)&wk_ppo_batch, 2}, {"wk_ppo_warmup_period", (DL_FUNC)&wk_ppo_warmup_period, 1}, {"wk_ppo_is_ready", (DL_FUNC)&wk_ppo_is_ready, 1}, + {"wk_ppo_name", (DL_FUNC)&wk_ppo_name, 1}, {"wk_ppo_reset", (DL_FUNC)&wk_ppo_reset, 1}, {"wk_ppo_histogram_new", (DL_FUNC)&wk_ppo_histogram_new, 3}, {"wk_ppo_histogram_update", (DL_FUNC)&wk_ppo_histogram_update, 2}, {"wk_ppo_histogram_batch", (DL_FUNC)&wk_ppo_histogram_batch, 2}, {"wk_ppo_histogram_warmup_period", (DL_FUNC)&wk_ppo_histogram_warmup_period, 1}, {"wk_ppo_histogram_is_ready", (DL_FUNC)&wk_ppo_histogram_is_ready, 1}, + {"wk_ppo_histogram_name", (DL_FUNC)&wk_ppo_histogram_name, 1}, {"wk_ppo_histogram_reset", (DL_FUNC)&wk_ppo_histogram_reset, 1}, {"wk_profile_shape_new", (DL_FUNC)&wk_profile_shape_new, 2}, {"wk_profile_shape_update", (DL_FUNC)&wk_profile_shape_update, 7}, {"wk_profile_shape_batch", (DL_FUNC)&wk_profile_shape_batch, 7}, {"wk_profile_shape_warmup_period", (DL_FUNC)&wk_profile_shape_warmup_period, 1}, {"wk_profile_shape_is_ready", (DL_FUNC)&wk_profile_shape_is_ready, 1}, + {"wk_profile_shape_name", (DL_FUNC)&wk_profile_shape_name, 1}, {"wk_profile_shape_reset", (DL_FUNC)&wk_profile_shape_reset, 1}, {"wk_profit_factor_new", (DL_FUNC)&wk_profit_factor_new, 1}, {"wk_profit_factor_update", (DL_FUNC)&wk_profit_factor_update, 2}, {"wk_profit_factor_batch", (DL_FUNC)&wk_profit_factor_batch, 2}, {"wk_profit_factor_warmup_period", (DL_FUNC)&wk_profit_factor_warmup_period, 1}, {"wk_profit_factor_is_ready", (DL_FUNC)&wk_profit_factor_is_ready, 1}, + {"wk_profit_factor_name", (DL_FUNC)&wk_profit_factor_name, 1}, {"wk_profit_factor_reset", (DL_FUNC)&wk_profit_factor_reset, 1}, {"wk_projection_bands_new", (DL_FUNC)&wk_projection_bands_new, 1}, {"wk_projection_bands_update", (DL_FUNC)&wk_projection_bands_update, 7}, {"wk_projection_bands_warmup_period", (DL_FUNC)&wk_projection_bands_warmup_period, 1}, {"wk_projection_bands_is_ready", (DL_FUNC)&wk_projection_bands_is_ready, 1}, + {"wk_projection_bands_name", (DL_FUNC)&wk_projection_bands_name, 1}, {"wk_projection_bands_reset", (DL_FUNC)&wk_projection_bands_reset, 1}, {"wk_projection_oscillator_new", (DL_FUNC)&wk_projection_oscillator_new, 1}, {"wk_projection_oscillator_update", (DL_FUNC)&wk_projection_oscillator_update, 7}, {"wk_projection_oscillator_batch", (DL_FUNC)&wk_projection_oscillator_batch, 7}, {"wk_projection_oscillator_warmup_period", (DL_FUNC)&wk_projection_oscillator_warmup_period, 1}, {"wk_projection_oscillator_is_ready", (DL_FUNC)&wk_projection_oscillator_is_ready, 1}, + {"wk_projection_oscillator_name", (DL_FUNC)&wk_projection_oscillator_name, 1}, {"wk_projection_oscillator_reset", (DL_FUNC)&wk_projection_oscillator_reset, 1}, {"wk_psar_new", (DL_FUNC)&wk_psar_new, 3}, {"wk_psar_update", (DL_FUNC)&wk_psar_update, 7}, {"wk_psar_batch", (DL_FUNC)&wk_psar_batch, 7}, {"wk_psar_warmup_period", (DL_FUNC)&wk_psar_warmup_period, 1}, {"wk_psar_is_ready", (DL_FUNC)&wk_psar_is_ready, 1}, + {"wk_psar_name", (DL_FUNC)&wk_psar_name, 1}, {"wk_psar_reset", (DL_FUNC)&wk_psar_reset, 1}, {"wk_pvi_new", (DL_FUNC)&wk_pvi_new, 0}, {"wk_pvi_update", (DL_FUNC)&wk_pvi_update, 7}, {"wk_pvi_batch", (DL_FUNC)&wk_pvi_batch, 7}, {"wk_pvi_warmup_period", (DL_FUNC)&wk_pvi_warmup_period, 1}, {"wk_pvi_is_ready", (DL_FUNC)&wk_pvi_is_ready, 1}, + {"wk_pvi_name", (DL_FUNC)&wk_pvi_name, 1}, {"wk_pvi_reset", (DL_FUNC)&wk_pvi_reset, 1}, {"wk_qqe_new", (DL_FUNC)&wk_qqe_new, 3}, {"wk_qqe_update", (DL_FUNC)&wk_qqe_update, 2}, {"wk_qqe_warmup_period", (DL_FUNC)&wk_qqe_warmup_period, 1}, {"wk_qqe_is_ready", (DL_FUNC)&wk_qqe_is_ready, 1}, + {"wk_qqe_name", (DL_FUNC)&wk_qqe_name, 1}, {"wk_qqe_reset", (DL_FUNC)&wk_qqe_reset, 1}, {"wk_qstick_new", (DL_FUNC)&wk_qstick_new, 1}, {"wk_qstick_update", (DL_FUNC)&wk_qstick_update, 7}, {"wk_qstick_batch", (DL_FUNC)&wk_qstick_batch, 7}, {"wk_qstick_warmup_period", (DL_FUNC)&wk_qstick_warmup_period, 1}, {"wk_qstick_is_ready", (DL_FUNC)&wk_qstick_is_ready, 1}, + {"wk_qstick_name", (DL_FUNC)&wk_qstick_name, 1}, {"wk_qstick_reset", (DL_FUNC)&wk_qstick_reset, 1}, {"wk_quartile_bands_new", (DL_FUNC)&wk_quartile_bands_new, 1}, {"wk_quartile_bands_update", (DL_FUNC)&wk_quartile_bands_update, 2}, {"wk_quartile_bands_warmup_period", (DL_FUNC)&wk_quartile_bands_warmup_period, 1}, {"wk_quartile_bands_is_ready", (DL_FUNC)&wk_quartile_bands_is_ready, 1}, + {"wk_quartile_bands_name", (DL_FUNC)&wk_quartile_bands_name, 1}, {"wk_quartile_bands_reset", (DL_FUNC)&wk_quartile_bands_reset, 1}, {"wk_quoted_spread_new", (DL_FUNC)&wk_quoted_spread_new, 0}, {"wk_quoted_spread_update", (DL_FUNC)&wk_quoted_spread_update, 5}, {"wk_quoted_spread_warmup_period", (DL_FUNC)&wk_quoted_spread_warmup_period, 1}, {"wk_quoted_spread_is_ready", (DL_FUNC)&wk_quoted_spread_is_ready, 1}, + {"wk_quoted_spread_name", (DL_FUNC)&wk_quoted_spread_name, 1}, {"wk_quoted_spread_reset", (DL_FUNC)&wk_quoted_spread_reset, 1}, {"wk_r_squared_new", (DL_FUNC)&wk_r_squared_new, 1}, {"wk_r_squared_update", (DL_FUNC)&wk_r_squared_update, 2}, {"wk_r_squared_batch", (DL_FUNC)&wk_r_squared_batch, 2}, {"wk_r_squared_warmup_period", (DL_FUNC)&wk_r_squared_warmup_period, 1}, {"wk_r_squared_is_ready", (DL_FUNC)&wk_r_squared_is_ready, 1}, + {"wk_r_squared_name", (DL_FUNC)&wk_r_squared_name, 1}, {"wk_r_squared_reset", (DL_FUNC)&wk_r_squared_reset, 1}, {"wk_range_bars_new", (DL_FUNC)&wk_range_bars_new, 1}, {"wk_range_bars_update", (DL_FUNC)&wk_range_bars_update, 7}, + {"wk_range_bars_name", (DL_FUNC)&wk_range_bars_name, 1}, {"wk_range_bars_reset", (DL_FUNC)&wk_range_bars_reset, 1}, {"wk_realized_spread_new", (DL_FUNC)&wk_realized_spread_new, 1}, {"wk_realized_spread_update", (DL_FUNC)&wk_realized_spread_update, 6}, {"wk_realized_spread_warmup_period", (DL_FUNC)&wk_realized_spread_warmup_period, 1}, {"wk_realized_spread_is_ready", (DL_FUNC)&wk_realized_spread_is_ready, 1}, + {"wk_realized_spread_name", (DL_FUNC)&wk_realized_spread_name, 1}, {"wk_realized_spread_reset", (DL_FUNC)&wk_realized_spread_reset, 1}, {"wk_realized_volatility_new", (DL_FUNC)&wk_realized_volatility_new, 1}, {"wk_realized_volatility_update", (DL_FUNC)&wk_realized_volatility_update, 2}, {"wk_realized_volatility_batch", (DL_FUNC)&wk_realized_volatility_batch, 2}, {"wk_realized_volatility_warmup_period", (DL_FUNC)&wk_realized_volatility_warmup_period, 1}, {"wk_realized_volatility_is_ready", (DL_FUNC)&wk_realized_volatility_is_ready, 1}, + {"wk_realized_volatility_name", (DL_FUNC)&wk_realized_volatility_name, 1}, {"wk_realized_volatility_reset", (DL_FUNC)&wk_realized_volatility_reset, 1}, {"wk_recovery_factor_new", (DL_FUNC)&wk_recovery_factor_new, 0}, {"wk_recovery_factor_update", (DL_FUNC)&wk_recovery_factor_update, 2}, {"wk_recovery_factor_batch", (DL_FUNC)&wk_recovery_factor_batch, 2}, {"wk_recovery_factor_warmup_period", (DL_FUNC)&wk_recovery_factor_warmup_period, 1}, {"wk_recovery_factor_is_ready", (DL_FUNC)&wk_recovery_factor_is_ready, 1}, + {"wk_recovery_factor_name", (DL_FUNC)&wk_recovery_factor_name, 1}, {"wk_recovery_factor_reset", (DL_FUNC)&wk_recovery_factor_reset, 1}, {"wk_rectangle_range_new", (DL_FUNC)&wk_rectangle_range_new, 0}, {"wk_rectangle_range_update", (DL_FUNC)&wk_rectangle_range_update, 7}, {"wk_rectangle_range_batch", (DL_FUNC)&wk_rectangle_range_batch, 7}, {"wk_rectangle_range_warmup_period", (DL_FUNC)&wk_rectangle_range_warmup_period, 1}, {"wk_rectangle_range_is_ready", (DL_FUNC)&wk_rectangle_range_is_ready, 1}, + {"wk_rectangle_range_name", (DL_FUNC)&wk_rectangle_range_name, 1}, {"wk_rectangle_range_reset", (DL_FUNC)&wk_rectangle_range_reset, 1}, {"wk_reflex_new", (DL_FUNC)&wk_reflex_new, 1}, {"wk_reflex_update", (DL_FUNC)&wk_reflex_update, 2}, {"wk_reflex_batch", (DL_FUNC)&wk_reflex_batch, 2}, {"wk_reflex_warmup_period", (DL_FUNC)&wk_reflex_warmup_period, 1}, {"wk_reflex_is_ready", (DL_FUNC)&wk_reflex_is_ready, 1}, + {"wk_reflex_name", (DL_FUNC)&wk_reflex_name, 1}, {"wk_reflex_reset", (DL_FUNC)&wk_reflex_reset, 1}, {"wk_regime_label_new", (DL_FUNC)&wk_regime_label_new, 2}, {"wk_regime_label_update", (DL_FUNC)&wk_regime_label_update, 2}, {"wk_regime_label_batch", (DL_FUNC)&wk_regime_label_batch, 2}, {"wk_regime_label_warmup_period", (DL_FUNC)&wk_regime_label_warmup_period, 1}, {"wk_regime_label_is_ready", (DL_FUNC)&wk_regime_label_is_ready, 1}, + {"wk_regime_label_name", (DL_FUNC)&wk_regime_label_name, 1}, {"wk_regime_label_reset", (DL_FUNC)&wk_regime_label_reset, 1}, {"wk_relative_strength_ab_new", (DL_FUNC)&wk_relative_strength_ab_new, 2}, {"wk_relative_strength_ab_update", (DL_FUNC)&wk_relative_strength_ab_update, 3}, {"wk_relative_strength_ab_warmup_period", (DL_FUNC)&wk_relative_strength_ab_warmup_period, 1}, {"wk_relative_strength_ab_is_ready", (DL_FUNC)&wk_relative_strength_ab_is_ready, 1}, + {"wk_relative_strength_ab_name", (DL_FUNC)&wk_relative_strength_ab_name, 1}, {"wk_relative_strength_ab_reset", (DL_FUNC)&wk_relative_strength_ab_reset, 1}, {"wk_renko_bars_new", (DL_FUNC)&wk_renko_bars_new, 1}, {"wk_renko_bars_update", (DL_FUNC)&wk_renko_bars_update, 7}, + {"wk_renko_bars_name", (DL_FUNC)&wk_renko_bars_name, 1}, {"wk_renko_bars_reset", (DL_FUNC)&wk_renko_bars_reset, 1}, {"wk_renko_trailing_stop_new", (DL_FUNC)&wk_renko_trailing_stop_new, 1}, {"wk_renko_trailing_stop_update", (DL_FUNC)&wk_renko_trailing_stop_update, 2}, {"wk_renko_trailing_stop_batch", (DL_FUNC)&wk_renko_trailing_stop_batch, 2}, {"wk_renko_trailing_stop_warmup_period", (DL_FUNC)&wk_renko_trailing_stop_warmup_period, 1}, {"wk_renko_trailing_stop_is_ready", (DL_FUNC)&wk_renko_trailing_stop_is_ready, 1}, + {"wk_renko_trailing_stop_name", (DL_FUNC)&wk_renko_trailing_stop_name, 1}, {"wk_renko_trailing_stop_reset", (DL_FUNC)&wk_renko_trailing_stop_reset, 1}, {"wk_rickshaw_man_new", (DL_FUNC)&wk_rickshaw_man_new, 0}, {"wk_rickshaw_man_update", (DL_FUNC)&wk_rickshaw_man_update, 7}, {"wk_rickshaw_man_batch", (DL_FUNC)&wk_rickshaw_man_batch, 7}, {"wk_rickshaw_man_warmup_period", (DL_FUNC)&wk_rickshaw_man_warmup_period, 1}, {"wk_rickshaw_man_is_ready", (DL_FUNC)&wk_rickshaw_man_is_ready, 1}, + {"wk_rickshaw_man_name", (DL_FUNC)&wk_rickshaw_man_name, 1}, {"wk_rickshaw_man_reset", (DL_FUNC)&wk_rickshaw_man_reset, 1}, {"wk_rising_three_methods_new", (DL_FUNC)&wk_rising_three_methods_new, 0}, {"wk_rising_three_methods_update", (DL_FUNC)&wk_rising_three_methods_update, 7}, {"wk_rising_three_methods_batch", (DL_FUNC)&wk_rising_three_methods_batch, 7}, {"wk_rising_three_methods_warmup_period", (DL_FUNC)&wk_rising_three_methods_warmup_period, 1}, {"wk_rising_three_methods_is_ready", (DL_FUNC)&wk_rising_three_methods_is_ready, 1}, + {"wk_rising_three_methods_name", (DL_FUNC)&wk_rising_three_methods_name, 1}, {"wk_rising_three_methods_reset", (DL_FUNC)&wk_rising_three_methods_reset, 1}, {"wk_rmi_new", (DL_FUNC)&wk_rmi_new, 2}, {"wk_rmi_update", (DL_FUNC)&wk_rmi_update, 2}, {"wk_rmi_batch", (DL_FUNC)&wk_rmi_batch, 2}, {"wk_rmi_warmup_period", (DL_FUNC)&wk_rmi_warmup_period, 1}, {"wk_rmi_is_ready", (DL_FUNC)&wk_rmi_is_ready, 1}, + {"wk_rmi_name", (DL_FUNC)&wk_rmi_name, 1}, {"wk_rmi_reset", (DL_FUNC)&wk_rmi_reset, 1}, {"wk_roc_new", (DL_FUNC)&wk_roc_new, 1}, {"wk_roc_update", (DL_FUNC)&wk_roc_update, 2}, {"wk_roc_batch", (DL_FUNC)&wk_roc_batch, 2}, {"wk_roc_warmup_period", (DL_FUNC)&wk_roc_warmup_period, 1}, {"wk_roc_is_ready", (DL_FUNC)&wk_roc_is_ready, 1}, + {"wk_roc_name", (DL_FUNC)&wk_roc_name, 1}, {"wk_roc_reset", (DL_FUNC)&wk_roc_reset, 1}, {"wk_rocp_new", (DL_FUNC)&wk_rocp_new, 1}, {"wk_rocp_update", (DL_FUNC)&wk_rocp_update, 2}, {"wk_rocp_batch", (DL_FUNC)&wk_rocp_batch, 2}, {"wk_rocp_warmup_period", (DL_FUNC)&wk_rocp_warmup_period, 1}, {"wk_rocp_is_ready", (DL_FUNC)&wk_rocp_is_ready, 1}, + {"wk_rocp_name", (DL_FUNC)&wk_rocp_name, 1}, {"wk_rocp_reset", (DL_FUNC)&wk_rocp_reset, 1}, {"wk_rocr_new", (DL_FUNC)&wk_rocr_new, 1}, {"wk_rocr_update", (DL_FUNC)&wk_rocr_update, 2}, {"wk_rocr_batch", (DL_FUNC)&wk_rocr_batch, 2}, {"wk_rocr_warmup_period", (DL_FUNC)&wk_rocr_warmup_period, 1}, {"wk_rocr_is_ready", (DL_FUNC)&wk_rocr_is_ready, 1}, + {"wk_rocr_name", (DL_FUNC)&wk_rocr_name, 1}, {"wk_rocr_reset", (DL_FUNC)&wk_rocr_reset, 1}, {"wk_rocr100_new", (DL_FUNC)&wk_rocr100_new, 1}, {"wk_rocr100_update", (DL_FUNC)&wk_rocr100_update, 2}, {"wk_rocr100_batch", (DL_FUNC)&wk_rocr100_batch, 2}, {"wk_rocr100_warmup_period", (DL_FUNC)&wk_rocr100_warmup_period, 1}, {"wk_rocr100_is_ready", (DL_FUNC)&wk_rocr100_is_ready, 1}, + {"wk_rocr100_name", (DL_FUNC)&wk_rocr100_name, 1}, {"wk_rocr100_reset", (DL_FUNC)&wk_rocr100_reset, 1}, {"wk_rogers_satchell_volatility_new", (DL_FUNC)&wk_rogers_satchell_volatility_new, 2}, {"wk_rogers_satchell_volatility_update", (DL_FUNC)&wk_rogers_satchell_volatility_update, 7}, {"wk_rogers_satchell_volatility_batch", (DL_FUNC)&wk_rogers_satchell_volatility_batch, 7}, {"wk_rogers_satchell_volatility_warmup_period", (DL_FUNC)&wk_rogers_satchell_volatility_warmup_period, 1}, {"wk_rogers_satchell_volatility_is_ready", (DL_FUNC)&wk_rogers_satchell_volatility_is_ready, 1}, + {"wk_rogers_satchell_volatility_name", (DL_FUNC)&wk_rogers_satchell_volatility_name, 1}, {"wk_rogers_satchell_volatility_reset", (DL_FUNC)&wk_rogers_satchell_volatility_reset, 1}, {"wk_roll_measure_new", (DL_FUNC)&wk_roll_measure_new, 1}, {"wk_roll_measure_update", (DL_FUNC)&wk_roll_measure_update, 5}, {"wk_roll_measure_warmup_period", (DL_FUNC)&wk_roll_measure_warmup_period, 1}, {"wk_roll_measure_is_ready", (DL_FUNC)&wk_roll_measure_is_ready, 1}, + {"wk_roll_measure_name", (DL_FUNC)&wk_roll_measure_name, 1}, {"wk_roll_measure_reset", (DL_FUNC)&wk_roll_measure_reset, 1}, {"wk_rolling_correlation_new", (DL_FUNC)&wk_rolling_correlation_new, 1}, {"wk_rolling_correlation_update", (DL_FUNC)&wk_rolling_correlation_update, 3}, {"wk_rolling_correlation_batch", (DL_FUNC)&wk_rolling_correlation_batch, 3}, {"wk_rolling_correlation_warmup_period", (DL_FUNC)&wk_rolling_correlation_warmup_period, 1}, {"wk_rolling_correlation_is_ready", (DL_FUNC)&wk_rolling_correlation_is_ready, 1}, + {"wk_rolling_correlation_name", (DL_FUNC)&wk_rolling_correlation_name, 1}, {"wk_rolling_correlation_reset", (DL_FUNC)&wk_rolling_correlation_reset, 1}, {"wk_rolling_covariance_new", (DL_FUNC)&wk_rolling_covariance_new, 1}, {"wk_rolling_covariance_update", (DL_FUNC)&wk_rolling_covariance_update, 3}, {"wk_rolling_covariance_batch", (DL_FUNC)&wk_rolling_covariance_batch, 3}, {"wk_rolling_covariance_warmup_period", (DL_FUNC)&wk_rolling_covariance_warmup_period, 1}, {"wk_rolling_covariance_is_ready", (DL_FUNC)&wk_rolling_covariance_is_ready, 1}, + {"wk_rolling_covariance_name", (DL_FUNC)&wk_rolling_covariance_name, 1}, {"wk_rolling_covariance_reset", (DL_FUNC)&wk_rolling_covariance_reset, 1}, {"wk_rolling_iqr_new", (DL_FUNC)&wk_rolling_iqr_new, 1}, {"wk_rolling_iqr_update", (DL_FUNC)&wk_rolling_iqr_update, 2}, {"wk_rolling_iqr_batch", (DL_FUNC)&wk_rolling_iqr_batch, 2}, {"wk_rolling_iqr_warmup_period", (DL_FUNC)&wk_rolling_iqr_warmup_period, 1}, {"wk_rolling_iqr_is_ready", (DL_FUNC)&wk_rolling_iqr_is_ready, 1}, + {"wk_rolling_iqr_name", (DL_FUNC)&wk_rolling_iqr_name, 1}, {"wk_rolling_iqr_reset", (DL_FUNC)&wk_rolling_iqr_reset, 1}, {"wk_rolling_min_max_scaler_new", (DL_FUNC)&wk_rolling_min_max_scaler_new, 1}, {"wk_rolling_min_max_scaler_update", (DL_FUNC)&wk_rolling_min_max_scaler_update, 2}, {"wk_rolling_min_max_scaler_batch", (DL_FUNC)&wk_rolling_min_max_scaler_batch, 2}, {"wk_rolling_min_max_scaler_warmup_period", (DL_FUNC)&wk_rolling_min_max_scaler_warmup_period, 1}, {"wk_rolling_min_max_scaler_is_ready", (DL_FUNC)&wk_rolling_min_max_scaler_is_ready, 1}, + {"wk_rolling_min_max_scaler_name", (DL_FUNC)&wk_rolling_min_max_scaler_name, 1}, {"wk_rolling_min_max_scaler_reset", (DL_FUNC)&wk_rolling_min_max_scaler_reset, 1}, {"wk_rolling_percentile_rank_new", (DL_FUNC)&wk_rolling_percentile_rank_new, 1}, {"wk_rolling_percentile_rank_update", (DL_FUNC)&wk_rolling_percentile_rank_update, 2}, {"wk_rolling_percentile_rank_batch", (DL_FUNC)&wk_rolling_percentile_rank_batch, 2}, {"wk_rolling_percentile_rank_warmup_period", (DL_FUNC)&wk_rolling_percentile_rank_warmup_period, 1}, {"wk_rolling_percentile_rank_is_ready", (DL_FUNC)&wk_rolling_percentile_rank_is_ready, 1}, + {"wk_rolling_percentile_rank_name", (DL_FUNC)&wk_rolling_percentile_rank_name, 1}, {"wk_rolling_percentile_rank_reset", (DL_FUNC)&wk_rolling_percentile_rank_reset, 1}, {"wk_rolling_quantile_new", (DL_FUNC)&wk_rolling_quantile_new, 2}, {"wk_rolling_quantile_update", (DL_FUNC)&wk_rolling_quantile_update, 2}, {"wk_rolling_quantile_batch", (DL_FUNC)&wk_rolling_quantile_batch, 2}, {"wk_rolling_quantile_warmup_period", (DL_FUNC)&wk_rolling_quantile_warmup_period, 1}, {"wk_rolling_quantile_is_ready", (DL_FUNC)&wk_rolling_quantile_is_ready, 1}, + {"wk_rolling_quantile_name", (DL_FUNC)&wk_rolling_quantile_name, 1}, {"wk_rolling_quantile_reset", (DL_FUNC)&wk_rolling_quantile_reset, 1}, {"wk_rolling_vwap_new", (DL_FUNC)&wk_rolling_vwap_new, 1}, {"wk_rolling_vwap_update", (DL_FUNC)&wk_rolling_vwap_update, 7}, {"wk_rolling_vwap_batch", (DL_FUNC)&wk_rolling_vwap_batch, 7}, {"wk_rolling_vwap_warmup_period", (DL_FUNC)&wk_rolling_vwap_warmup_period, 1}, {"wk_rolling_vwap_is_ready", (DL_FUNC)&wk_rolling_vwap_is_ready, 1}, + {"wk_rolling_vwap_name", (DL_FUNC)&wk_rolling_vwap_name, 1}, {"wk_rolling_vwap_reset", (DL_FUNC)&wk_rolling_vwap_reset, 1}, {"wk_roofing_filter_new", (DL_FUNC)&wk_roofing_filter_new, 2}, {"wk_roofing_filter_update", (DL_FUNC)&wk_roofing_filter_update, 2}, {"wk_roofing_filter_batch", (DL_FUNC)&wk_roofing_filter_batch, 2}, {"wk_roofing_filter_warmup_period", (DL_FUNC)&wk_roofing_filter_warmup_period, 1}, {"wk_roofing_filter_is_ready", (DL_FUNC)&wk_roofing_filter_is_ready, 1}, + {"wk_roofing_filter_name", (DL_FUNC)&wk_roofing_filter_name, 1}, {"wk_roofing_filter_reset", (DL_FUNC)&wk_roofing_filter_reset, 1}, {"wk_rsi_new", (DL_FUNC)&wk_rsi_new, 1}, {"wk_rsi_update", (DL_FUNC)&wk_rsi_update, 2}, {"wk_rsi_batch", (DL_FUNC)&wk_rsi_batch, 2}, {"wk_rsi_warmup_period", (DL_FUNC)&wk_rsi_warmup_period, 1}, {"wk_rsi_is_ready", (DL_FUNC)&wk_rsi_is_ready, 1}, + {"wk_rsi_name", (DL_FUNC)&wk_rsi_name, 1}, {"wk_rsi_reset", (DL_FUNC)&wk_rsi_reset, 1}, {"wk_rsx_new", (DL_FUNC)&wk_rsx_new, 1}, {"wk_rsx_update", (DL_FUNC)&wk_rsx_update, 2}, {"wk_rsx_batch", (DL_FUNC)&wk_rsx_batch, 2}, {"wk_rsx_warmup_period", (DL_FUNC)&wk_rsx_warmup_period, 1}, {"wk_rsx_is_ready", (DL_FUNC)&wk_rsx_is_ready, 1}, + {"wk_rsx_name", (DL_FUNC)&wk_rsx_name, 1}, {"wk_rsx_reset", (DL_FUNC)&wk_rsx_reset, 1}, {"wk_run_bars_new", (DL_FUNC)&wk_run_bars_new, 1}, {"wk_run_bars_update", (DL_FUNC)&wk_run_bars_update, 7}, + {"wk_run_bars_name", (DL_FUNC)&wk_run_bars_name, 1}, {"wk_run_bars_reset", (DL_FUNC)&wk_run_bars_reset, 1}, {"wk_rvi_new", (DL_FUNC)&wk_rvi_new, 1}, {"wk_rvi_update", (DL_FUNC)&wk_rvi_update, 7}, {"wk_rvi_batch", (DL_FUNC)&wk_rvi_batch, 7}, {"wk_rvi_warmup_period", (DL_FUNC)&wk_rvi_warmup_period, 1}, {"wk_rvi_is_ready", (DL_FUNC)&wk_rvi_is_ready, 1}, + {"wk_rvi_name", (DL_FUNC)&wk_rvi_name, 1}, {"wk_rvi_reset", (DL_FUNC)&wk_rvi_reset, 1}, {"wk_rvi_volatility_new", (DL_FUNC)&wk_rvi_volatility_new, 1}, {"wk_rvi_volatility_update", (DL_FUNC)&wk_rvi_volatility_update, 2}, {"wk_rvi_volatility_batch", (DL_FUNC)&wk_rvi_volatility_batch, 2}, {"wk_rvi_volatility_warmup_period", (DL_FUNC)&wk_rvi_volatility_warmup_period, 1}, {"wk_rvi_volatility_is_ready", (DL_FUNC)&wk_rvi_volatility_is_ready, 1}, + {"wk_rvi_volatility_name", (DL_FUNC)&wk_rvi_volatility_name, 1}, {"wk_rvi_volatility_reset", (DL_FUNC)&wk_rvi_volatility_reset, 1}, {"wk_rwi_new", (DL_FUNC)&wk_rwi_new, 1}, {"wk_rwi_update", (DL_FUNC)&wk_rwi_update, 7}, {"wk_rwi_warmup_period", (DL_FUNC)&wk_rwi_warmup_period, 1}, {"wk_rwi_is_ready", (DL_FUNC)&wk_rwi_is_ready, 1}, + {"wk_rwi_name", (DL_FUNC)&wk_rwi_name, 1}, {"wk_rwi_reset", (DL_FUNC)&wk_rwi_reset, 1}, {"wk_sample_entropy_new", (DL_FUNC)&wk_sample_entropy_new, 3}, {"wk_sample_entropy_update", (DL_FUNC)&wk_sample_entropy_update, 2}, {"wk_sample_entropy_batch", (DL_FUNC)&wk_sample_entropy_batch, 2}, {"wk_sample_entropy_warmup_period", (DL_FUNC)&wk_sample_entropy_warmup_period, 1}, {"wk_sample_entropy_is_ready", (DL_FUNC)&wk_sample_entropy_is_ready, 1}, + {"wk_sample_entropy_name", (DL_FUNC)&wk_sample_entropy_name, 1}, {"wk_sample_entropy_reset", (DL_FUNC)&wk_sample_entropy_reset, 1}, {"wk_sar_ext_new", (DL_FUNC)&wk_sar_ext_new, 8}, {"wk_sar_ext_update", (DL_FUNC)&wk_sar_ext_update, 7}, {"wk_sar_ext_batch", (DL_FUNC)&wk_sar_ext_batch, 7}, {"wk_sar_ext_warmup_period", (DL_FUNC)&wk_sar_ext_warmup_period, 1}, {"wk_sar_ext_is_ready", (DL_FUNC)&wk_sar_ext_is_ready, 1}, + {"wk_sar_ext_name", (DL_FUNC)&wk_sar_ext_name, 1}, {"wk_sar_ext_reset", (DL_FUNC)&wk_sar_ext_reset, 1}, {"wk_seasonal_z_score_new", (DL_FUNC)&wk_seasonal_z_score_new, 1}, {"wk_seasonal_z_score_update", (DL_FUNC)&wk_seasonal_z_score_update, 7}, {"wk_seasonal_z_score_batch", (DL_FUNC)&wk_seasonal_z_score_batch, 7}, {"wk_seasonal_z_score_warmup_period", (DL_FUNC)&wk_seasonal_z_score_warmup_period, 1}, {"wk_seasonal_z_score_is_ready", (DL_FUNC)&wk_seasonal_z_score_is_ready, 1}, + {"wk_seasonal_z_score_name", (DL_FUNC)&wk_seasonal_z_score_name, 1}, {"wk_seasonal_z_score_reset", (DL_FUNC)&wk_seasonal_z_score_reset, 1}, {"wk_separating_lines_new", (DL_FUNC)&wk_separating_lines_new, 0}, {"wk_separating_lines_update", (DL_FUNC)&wk_separating_lines_update, 7}, {"wk_separating_lines_batch", (DL_FUNC)&wk_separating_lines_batch, 7}, {"wk_separating_lines_warmup_period", (DL_FUNC)&wk_separating_lines_warmup_period, 1}, {"wk_separating_lines_is_ready", (DL_FUNC)&wk_separating_lines_is_ready, 1}, + {"wk_separating_lines_name", (DL_FUNC)&wk_separating_lines_name, 1}, {"wk_separating_lines_reset", (DL_FUNC)&wk_separating_lines_reset, 1}, {"wk_session_high_low_new", (DL_FUNC)&wk_session_high_low_new, 1}, {"wk_session_high_low_update", (DL_FUNC)&wk_session_high_low_update, 7}, {"wk_session_high_low_warmup_period", (DL_FUNC)&wk_session_high_low_warmup_period, 1}, {"wk_session_high_low_is_ready", (DL_FUNC)&wk_session_high_low_is_ready, 1}, + {"wk_session_high_low_name", (DL_FUNC)&wk_session_high_low_name, 1}, {"wk_session_high_low_reset", (DL_FUNC)&wk_session_high_low_reset, 1}, {"wk_session_range_new", (DL_FUNC)&wk_session_range_new, 1}, {"wk_session_range_update", (DL_FUNC)&wk_session_range_update, 7}, {"wk_session_range_warmup_period", (DL_FUNC)&wk_session_range_warmup_period, 1}, {"wk_session_range_is_ready", (DL_FUNC)&wk_session_range_is_ready, 1}, + {"wk_session_range_name", (DL_FUNC)&wk_session_range_name, 1}, {"wk_session_range_reset", (DL_FUNC)&wk_session_range_reset, 1}, {"wk_session_vwap_new", (DL_FUNC)&wk_session_vwap_new, 1}, {"wk_session_vwap_update", (DL_FUNC)&wk_session_vwap_update, 7}, {"wk_session_vwap_batch", (DL_FUNC)&wk_session_vwap_batch, 7}, {"wk_session_vwap_warmup_period", (DL_FUNC)&wk_session_vwap_warmup_period, 1}, {"wk_session_vwap_is_ready", (DL_FUNC)&wk_session_vwap_is_ready, 1}, + {"wk_session_vwap_name", (DL_FUNC)&wk_session_vwap_name, 1}, {"wk_session_vwap_reset", (DL_FUNC)&wk_session_vwap_reset, 1}, {"wk_shannon_entropy_new", (DL_FUNC)&wk_shannon_entropy_new, 2}, {"wk_shannon_entropy_update", (DL_FUNC)&wk_shannon_entropy_update, 2}, {"wk_shannon_entropy_batch", (DL_FUNC)&wk_shannon_entropy_batch, 2}, {"wk_shannon_entropy_warmup_period", (DL_FUNC)&wk_shannon_entropy_warmup_period, 1}, {"wk_shannon_entropy_is_ready", (DL_FUNC)&wk_shannon_entropy_is_ready, 1}, + {"wk_shannon_entropy_name", (DL_FUNC)&wk_shannon_entropy_name, 1}, {"wk_shannon_entropy_reset", (DL_FUNC)&wk_shannon_entropy_reset, 1}, {"wk_shark_new", (DL_FUNC)&wk_shark_new, 0}, {"wk_shark_update", (DL_FUNC)&wk_shark_update, 7}, {"wk_shark_batch", (DL_FUNC)&wk_shark_batch, 7}, {"wk_shark_warmup_period", (DL_FUNC)&wk_shark_warmup_period, 1}, {"wk_shark_is_ready", (DL_FUNC)&wk_shark_is_ready, 1}, + {"wk_shark_name", (DL_FUNC)&wk_shark_name, 1}, {"wk_shark_reset", (DL_FUNC)&wk_shark_reset, 1}, {"wk_sharpe_ratio_new", (DL_FUNC)&wk_sharpe_ratio_new, 2}, {"wk_sharpe_ratio_update", (DL_FUNC)&wk_sharpe_ratio_update, 2}, {"wk_sharpe_ratio_batch", (DL_FUNC)&wk_sharpe_ratio_batch, 2}, {"wk_sharpe_ratio_warmup_period", (DL_FUNC)&wk_sharpe_ratio_warmup_period, 1}, {"wk_sharpe_ratio_is_ready", (DL_FUNC)&wk_sharpe_ratio_is_ready, 1}, + {"wk_sharpe_ratio_name", (DL_FUNC)&wk_sharpe_ratio_name, 1}, {"wk_sharpe_ratio_reset", (DL_FUNC)&wk_sharpe_ratio_reset, 1}, {"wk_shooting_star_new", (DL_FUNC)&wk_shooting_star_new, 0}, {"wk_shooting_star_update", (DL_FUNC)&wk_shooting_star_update, 7}, {"wk_shooting_star_batch", (DL_FUNC)&wk_shooting_star_batch, 7}, {"wk_shooting_star_warmup_period", (DL_FUNC)&wk_shooting_star_warmup_period, 1}, {"wk_shooting_star_is_ready", (DL_FUNC)&wk_shooting_star_is_ready, 1}, + {"wk_shooting_star_name", (DL_FUNC)&wk_shooting_star_name, 1}, {"wk_shooting_star_reset", (DL_FUNC)&wk_shooting_star_reset, 1}, {"wk_short_line_new", (DL_FUNC)&wk_short_line_new, 0}, {"wk_short_line_update", (DL_FUNC)&wk_short_line_update, 7}, {"wk_short_line_batch", (DL_FUNC)&wk_short_line_batch, 7}, {"wk_short_line_warmup_period", (DL_FUNC)&wk_short_line_warmup_period, 1}, {"wk_short_line_is_ready", (DL_FUNC)&wk_short_line_is_ready, 1}, + {"wk_short_line_name", (DL_FUNC)&wk_short_line_name, 1}, {"wk_short_line_reset", (DL_FUNC)&wk_short_line_reset, 1}, {"wk_signed_volume_new", (DL_FUNC)&wk_signed_volume_new, 0}, {"wk_signed_volume_update", (DL_FUNC)&wk_signed_volume_update, 5}, {"wk_signed_volume_warmup_period", (DL_FUNC)&wk_signed_volume_warmup_period, 1}, {"wk_signed_volume_is_ready", (DL_FUNC)&wk_signed_volume_is_ready, 1}, + {"wk_signed_volume_name", (DL_FUNC)&wk_signed_volume_name, 1}, {"wk_signed_volume_reset", (DL_FUNC)&wk_signed_volume_reset, 1}, {"wk_sine_wave_new", (DL_FUNC)&wk_sine_wave_new, 0}, {"wk_sine_wave_update", (DL_FUNC)&wk_sine_wave_update, 2}, {"wk_sine_wave_batch", (DL_FUNC)&wk_sine_wave_batch, 2}, {"wk_sine_wave_warmup_period", (DL_FUNC)&wk_sine_wave_warmup_period, 1}, {"wk_sine_wave_is_ready", (DL_FUNC)&wk_sine_wave_is_ready, 1}, + {"wk_sine_wave_name", (DL_FUNC)&wk_sine_wave_name, 1}, {"wk_sine_wave_reset", (DL_FUNC)&wk_sine_wave_reset, 1}, {"wk_sine_weighted_ma_new", (DL_FUNC)&wk_sine_weighted_ma_new, 1}, {"wk_sine_weighted_ma_update", (DL_FUNC)&wk_sine_weighted_ma_update, 2}, {"wk_sine_weighted_ma_batch", (DL_FUNC)&wk_sine_weighted_ma_batch, 2}, {"wk_sine_weighted_ma_warmup_period", (DL_FUNC)&wk_sine_weighted_ma_warmup_period, 1}, {"wk_sine_weighted_ma_is_ready", (DL_FUNC)&wk_sine_weighted_ma_is_ready, 1}, + {"wk_sine_weighted_ma_name", (DL_FUNC)&wk_sine_weighted_ma_name, 1}, {"wk_sine_weighted_ma_reset", (DL_FUNC)&wk_sine_weighted_ma_reset, 1}, {"wk_single_prints_new", (DL_FUNC)&wk_single_prints_new, 2}, {"wk_single_prints_update", (DL_FUNC)&wk_single_prints_update, 7}, {"wk_single_prints_batch", (DL_FUNC)&wk_single_prints_batch, 7}, {"wk_single_prints_warmup_period", (DL_FUNC)&wk_single_prints_warmup_period, 1}, {"wk_single_prints_is_ready", (DL_FUNC)&wk_single_prints_is_ready, 1}, + {"wk_single_prints_name", (DL_FUNC)&wk_single_prints_name, 1}, {"wk_single_prints_reset", (DL_FUNC)&wk_single_prints_reset, 1}, {"wk_skewness_new", (DL_FUNC)&wk_skewness_new, 1}, {"wk_skewness_update", (DL_FUNC)&wk_skewness_update, 2}, {"wk_skewness_batch", (DL_FUNC)&wk_skewness_batch, 2}, {"wk_skewness_warmup_period", (DL_FUNC)&wk_skewness_warmup_period, 1}, {"wk_skewness_is_ready", (DL_FUNC)&wk_skewness_is_ready, 1}, + {"wk_skewness_name", (DL_FUNC)&wk_skewness_name, 1}, {"wk_skewness_reset", (DL_FUNC)&wk_skewness_reset, 1}, {"wk_sma_new", (DL_FUNC)&wk_sma_new, 1}, {"wk_sma_update", (DL_FUNC)&wk_sma_update, 2}, {"wk_sma_batch", (DL_FUNC)&wk_sma_batch, 2}, {"wk_sma_warmup_period", (DL_FUNC)&wk_sma_warmup_period, 1}, {"wk_sma_is_ready", (DL_FUNC)&wk_sma_is_ready, 1}, + {"wk_sma_name", (DL_FUNC)&wk_sma_name, 1}, {"wk_sma_reset", (DL_FUNC)&wk_sma_reset, 1}, {"wk_smi_new", (DL_FUNC)&wk_smi_new, 3}, {"wk_smi_update", (DL_FUNC)&wk_smi_update, 7}, {"wk_smi_batch", (DL_FUNC)&wk_smi_batch, 7}, {"wk_smi_warmup_period", (DL_FUNC)&wk_smi_warmup_period, 1}, {"wk_smi_is_ready", (DL_FUNC)&wk_smi_is_ready, 1}, + {"wk_smi_name", (DL_FUNC)&wk_smi_name, 1}, {"wk_smi_reset", (DL_FUNC)&wk_smi_reset, 1}, {"wk_smma_new", (DL_FUNC)&wk_smma_new, 1}, {"wk_smma_update", (DL_FUNC)&wk_smma_update, 2}, {"wk_smma_batch", (DL_FUNC)&wk_smma_batch, 2}, {"wk_smma_warmup_period", (DL_FUNC)&wk_smma_warmup_period, 1}, {"wk_smma_is_ready", (DL_FUNC)&wk_smma_is_ready, 1}, + {"wk_smma_name", (DL_FUNC)&wk_smma_name, 1}, {"wk_smma_reset", (DL_FUNC)&wk_smma_reset, 1}, {"wk_smoothed_heikin_ashi_new", (DL_FUNC)&wk_smoothed_heikin_ashi_new, 1}, {"wk_smoothed_heikin_ashi_update", (DL_FUNC)&wk_smoothed_heikin_ashi_update, 7}, {"wk_smoothed_heikin_ashi_warmup_period", (DL_FUNC)&wk_smoothed_heikin_ashi_warmup_period, 1}, {"wk_smoothed_heikin_ashi_is_ready", (DL_FUNC)&wk_smoothed_heikin_ashi_is_ready, 1}, + {"wk_smoothed_heikin_ashi_name", (DL_FUNC)&wk_smoothed_heikin_ashi_name, 1}, {"wk_smoothed_heikin_ashi_reset", (DL_FUNC)&wk_smoothed_heikin_ashi_reset, 1}, {"wk_sortino_ratio_new", (DL_FUNC)&wk_sortino_ratio_new, 2}, {"wk_sortino_ratio_update", (DL_FUNC)&wk_sortino_ratio_update, 2}, {"wk_sortino_ratio_batch", (DL_FUNC)&wk_sortino_ratio_batch, 2}, {"wk_sortino_ratio_warmup_period", (DL_FUNC)&wk_sortino_ratio_warmup_period, 1}, {"wk_sortino_ratio_is_ready", (DL_FUNC)&wk_sortino_ratio_is_ready, 1}, + {"wk_sortino_ratio_name", (DL_FUNC)&wk_sortino_ratio_name, 1}, {"wk_sortino_ratio_reset", (DL_FUNC)&wk_sortino_ratio_reset, 1}, {"wk_spearman_correlation_new", (DL_FUNC)&wk_spearman_correlation_new, 1}, {"wk_spearman_correlation_update", (DL_FUNC)&wk_spearman_correlation_update, 3}, {"wk_spearman_correlation_batch", (DL_FUNC)&wk_spearman_correlation_batch, 3}, {"wk_spearman_correlation_warmup_period", (DL_FUNC)&wk_spearman_correlation_warmup_period, 1}, {"wk_spearman_correlation_is_ready", (DL_FUNC)&wk_spearman_correlation_is_ready, 1}, + {"wk_spearman_correlation_name", (DL_FUNC)&wk_spearman_correlation_name, 1}, {"wk_spearman_correlation_reset", (DL_FUNC)&wk_spearman_correlation_reset, 1}, {"wk_spinning_top_new", (DL_FUNC)&wk_spinning_top_new, 0}, {"wk_spinning_top_update", (DL_FUNC)&wk_spinning_top_update, 7}, {"wk_spinning_top_batch", (DL_FUNC)&wk_spinning_top_batch, 7}, {"wk_spinning_top_warmup_period", (DL_FUNC)&wk_spinning_top_warmup_period, 1}, {"wk_spinning_top_is_ready", (DL_FUNC)&wk_spinning_top_is_ready, 1}, + {"wk_spinning_top_name", (DL_FUNC)&wk_spinning_top_name, 1}, {"wk_spinning_top_reset", (DL_FUNC)&wk_spinning_top_reset, 1}, {"wk_spread_ar1_coefficient_new", (DL_FUNC)&wk_spread_ar1_coefficient_new, 1}, {"wk_spread_ar1_coefficient_update", (DL_FUNC)&wk_spread_ar1_coefficient_update, 3}, {"wk_spread_ar1_coefficient_batch", (DL_FUNC)&wk_spread_ar1_coefficient_batch, 3}, {"wk_spread_ar1_coefficient_warmup_period", (DL_FUNC)&wk_spread_ar1_coefficient_warmup_period, 1}, {"wk_spread_ar1_coefficient_is_ready", (DL_FUNC)&wk_spread_ar1_coefficient_is_ready, 1}, + {"wk_spread_ar1_coefficient_name", (DL_FUNC)&wk_spread_ar1_coefficient_name, 1}, {"wk_spread_ar1_coefficient_reset", (DL_FUNC)&wk_spread_ar1_coefficient_reset, 1}, {"wk_spread_bollinger_bands_new", (DL_FUNC)&wk_spread_bollinger_bands_new, 2}, {"wk_spread_bollinger_bands_update", (DL_FUNC)&wk_spread_bollinger_bands_update, 3}, {"wk_spread_bollinger_bands_warmup_period", (DL_FUNC)&wk_spread_bollinger_bands_warmup_period, 1}, {"wk_spread_bollinger_bands_is_ready", (DL_FUNC)&wk_spread_bollinger_bands_is_ready, 1}, + {"wk_spread_bollinger_bands_name", (DL_FUNC)&wk_spread_bollinger_bands_name, 1}, {"wk_spread_bollinger_bands_reset", (DL_FUNC)&wk_spread_bollinger_bands_reset, 1}, {"wk_spread_hurst_new", (DL_FUNC)&wk_spread_hurst_new, 1}, {"wk_spread_hurst_update", (DL_FUNC)&wk_spread_hurst_update, 3}, {"wk_spread_hurst_batch", (DL_FUNC)&wk_spread_hurst_batch, 3}, {"wk_spread_hurst_warmup_period", (DL_FUNC)&wk_spread_hurst_warmup_period, 1}, {"wk_spread_hurst_is_ready", (DL_FUNC)&wk_spread_hurst_is_ready, 1}, + {"wk_spread_hurst_name", (DL_FUNC)&wk_spread_hurst_name, 1}, {"wk_spread_hurst_reset", (DL_FUNC)&wk_spread_hurst_reset, 1}, {"wk_stalled_pattern_new", (DL_FUNC)&wk_stalled_pattern_new, 0}, {"wk_stalled_pattern_update", (DL_FUNC)&wk_stalled_pattern_update, 7}, {"wk_stalled_pattern_batch", (DL_FUNC)&wk_stalled_pattern_batch, 7}, {"wk_stalled_pattern_warmup_period", (DL_FUNC)&wk_stalled_pattern_warmup_period, 1}, {"wk_stalled_pattern_is_ready", (DL_FUNC)&wk_stalled_pattern_is_ready, 1}, + {"wk_stalled_pattern_name", (DL_FUNC)&wk_stalled_pattern_name, 1}, {"wk_stalled_pattern_reset", (DL_FUNC)&wk_stalled_pattern_reset, 1}, {"wk_standard_error_new", (DL_FUNC)&wk_standard_error_new, 1}, {"wk_standard_error_update", (DL_FUNC)&wk_standard_error_update, 2}, {"wk_standard_error_batch", (DL_FUNC)&wk_standard_error_batch, 2}, {"wk_standard_error_warmup_period", (DL_FUNC)&wk_standard_error_warmup_period, 1}, {"wk_standard_error_is_ready", (DL_FUNC)&wk_standard_error_is_ready, 1}, + {"wk_standard_error_name", (DL_FUNC)&wk_standard_error_name, 1}, {"wk_standard_error_reset", (DL_FUNC)&wk_standard_error_reset, 1}, {"wk_standard_error_bands_new", (DL_FUNC)&wk_standard_error_bands_new, 2}, {"wk_standard_error_bands_update", (DL_FUNC)&wk_standard_error_bands_update, 2}, {"wk_standard_error_bands_warmup_period", (DL_FUNC)&wk_standard_error_bands_warmup_period, 1}, {"wk_standard_error_bands_is_ready", (DL_FUNC)&wk_standard_error_bands_is_ready, 1}, + {"wk_standard_error_bands_name", (DL_FUNC)&wk_standard_error_bands_name, 1}, {"wk_standard_error_bands_reset", (DL_FUNC)&wk_standard_error_bands_reset, 1}, {"wk_starc_bands_new", (DL_FUNC)&wk_starc_bands_new, 3}, {"wk_starc_bands_update", (DL_FUNC)&wk_starc_bands_update, 7}, {"wk_starc_bands_warmup_period", (DL_FUNC)&wk_starc_bands_warmup_period, 1}, {"wk_starc_bands_is_ready", (DL_FUNC)&wk_starc_bands_is_ready, 1}, + {"wk_starc_bands_name", (DL_FUNC)&wk_starc_bands_name, 1}, {"wk_starc_bands_reset", (DL_FUNC)&wk_starc_bands_reset, 1}, {"wk_stc_new", (DL_FUNC)&wk_stc_new, 4}, {"wk_stc_update", (DL_FUNC)&wk_stc_update, 2}, {"wk_stc_batch", (DL_FUNC)&wk_stc_batch, 2}, {"wk_stc_warmup_period", (DL_FUNC)&wk_stc_warmup_period, 1}, {"wk_stc_is_ready", (DL_FUNC)&wk_stc_is_ready, 1}, + {"wk_stc_name", (DL_FUNC)&wk_stc_name, 1}, {"wk_stc_reset", (DL_FUNC)&wk_stc_reset, 1}, {"wk_std_dev_new", (DL_FUNC)&wk_std_dev_new, 1}, {"wk_std_dev_update", (DL_FUNC)&wk_std_dev_update, 2}, {"wk_std_dev_batch", (DL_FUNC)&wk_std_dev_batch, 2}, {"wk_std_dev_warmup_period", (DL_FUNC)&wk_std_dev_warmup_period, 1}, {"wk_std_dev_is_ready", (DL_FUNC)&wk_std_dev_is_ready, 1}, + {"wk_std_dev_name", (DL_FUNC)&wk_std_dev_name, 1}, {"wk_std_dev_reset", (DL_FUNC)&wk_std_dev_reset, 1}, {"wk_step_trailing_stop_new", (DL_FUNC)&wk_step_trailing_stop_new, 1}, {"wk_step_trailing_stop_update", (DL_FUNC)&wk_step_trailing_stop_update, 2}, {"wk_step_trailing_stop_batch", (DL_FUNC)&wk_step_trailing_stop_batch, 2}, {"wk_step_trailing_stop_warmup_period", (DL_FUNC)&wk_step_trailing_stop_warmup_period, 1}, {"wk_step_trailing_stop_is_ready", (DL_FUNC)&wk_step_trailing_stop_is_ready, 1}, + {"wk_step_trailing_stop_name", (DL_FUNC)&wk_step_trailing_stop_name, 1}, {"wk_step_trailing_stop_reset", (DL_FUNC)&wk_step_trailing_stop_reset, 1}, {"wk_sterling_ratio_new", (DL_FUNC)&wk_sterling_ratio_new, 1}, {"wk_sterling_ratio_update", (DL_FUNC)&wk_sterling_ratio_update, 2}, {"wk_sterling_ratio_batch", (DL_FUNC)&wk_sterling_ratio_batch, 2}, {"wk_sterling_ratio_warmup_period", (DL_FUNC)&wk_sterling_ratio_warmup_period, 1}, {"wk_sterling_ratio_is_ready", (DL_FUNC)&wk_sterling_ratio_is_ready, 1}, + {"wk_sterling_ratio_name", (DL_FUNC)&wk_sterling_ratio_name, 1}, {"wk_sterling_ratio_reset", (DL_FUNC)&wk_sterling_ratio_reset, 1}, {"wk_stick_sandwich_new", (DL_FUNC)&wk_stick_sandwich_new, 0}, {"wk_stick_sandwich_update", (DL_FUNC)&wk_stick_sandwich_update, 7}, {"wk_stick_sandwich_batch", (DL_FUNC)&wk_stick_sandwich_batch, 7}, {"wk_stick_sandwich_warmup_period", (DL_FUNC)&wk_stick_sandwich_warmup_period, 1}, {"wk_stick_sandwich_is_ready", (DL_FUNC)&wk_stick_sandwich_is_ready, 1}, + {"wk_stick_sandwich_name", (DL_FUNC)&wk_stick_sandwich_name, 1}, {"wk_stick_sandwich_reset", (DL_FUNC)&wk_stick_sandwich_reset, 1}, {"wk_stoch_rsi_new", (DL_FUNC)&wk_stoch_rsi_new, 2}, {"wk_stoch_rsi_update", (DL_FUNC)&wk_stoch_rsi_update, 2}, {"wk_stoch_rsi_batch", (DL_FUNC)&wk_stoch_rsi_batch, 2}, {"wk_stoch_rsi_warmup_period", (DL_FUNC)&wk_stoch_rsi_warmup_period, 1}, {"wk_stoch_rsi_is_ready", (DL_FUNC)&wk_stoch_rsi_is_ready, 1}, + {"wk_stoch_rsi_name", (DL_FUNC)&wk_stoch_rsi_name, 1}, {"wk_stoch_rsi_reset", (DL_FUNC)&wk_stoch_rsi_reset, 1}, {"wk_stochastic_new", (DL_FUNC)&wk_stochastic_new, 2}, {"wk_stochastic_update", (DL_FUNC)&wk_stochastic_update, 7}, {"wk_stochastic_warmup_period", (DL_FUNC)&wk_stochastic_warmup_period, 1}, {"wk_stochastic_is_ready", (DL_FUNC)&wk_stochastic_is_ready, 1}, + {"wk_stochastic_name", (DL_FUNC)&wk_stochastic_name, 1}, {"wk_stochastic_reset", (DL_FUNC)&wk_stochastic_reset, 1}, {"wk_stochastic_cci_new", (DL_FUNC)&wk_stochastic_cci_new, 1}, {"wk_stochastic_cci_update", (DL_FUNC)&wk_stochastic_cci_update, 7}, {"wk_stochastic_cci_batch", (DL_FUNC)&wk_stochastic_cci_batch, 7}, {"wk_stochastic_cci_warmup_period", (DL_FUNC)&wk_stochastic_cci_warmup_period, 1}, {"wk_stochastic_cci_is_ready", (DL_FUNC)&wk_stochastic_cci_is_ready, 1}, + {"wk_stochastic_cci_name", (DL_FUNC)&wk_stochastic_cci_name, 1}, {"wk_stochastic_cci_reset", (DL_FUNC)&wk_stochastic_cci_reset, 1}, {"wk_super_smoother_new", (DL_FUNC)&wk_super_smoother_new, 1}, {"wk_super_smoother_update", (DL_FUNC)&wk_super_smoother_update, 2}, {"wk_super_smoother_batch", (DL_FUNC)&wk_super_smoother_batch, 2}, {"wk_super_smoother_warmup_period", (DL_FUNC)&wk_super_smoother_warmup_period, 1}, {"wk_super_smoother_is_ready", (DL_FUNC)&wk_super_smoother_is_ready, 1}, + {"wk_super_smoother_name", (DL_FUNC)&wk_super_smoother_name, 1}, {"wk_super_smoother_reset", (DL_FUNC)&wk_super_smoother_reset, 1}, {"wk_super_trend_new", (DL_FUNC)&wk_super_trend_new, 2}, {"wk_super_trend_update", (DL_FUNC)&wk_super_trend_update, 7}, {"wk_super_trend_warmup_period", (DL_FUNC)&wk_super_trend_warmup_period, 1}, {"wk_super_trend_is_ready", (DL_FUNC)&wk_super_trend_is_ready, 1}, + {"wk_super_trend_name", (DL_FUNC)&wk_super_trend_name, 1}, {"wk_super_trend_reset", (DL_FUNC)&wk_super_trend_reset, 1}, {"wk_t3_new", (DL_FUNC)&wk_t3_new, 2}, {"wk_t3_update", (DL_FUNC)&wk_t3_update, 2}, {"wk_t3_batch", (DL_FUNC)&wk_t3_batch, 2}, {"wk_t3_warmup_period", (DL_FUNC)&wk_t3_warmup_period, 1}, {"wk_t3_is_ready", (DL_FUNC)&wk_t3_is_ready, 1}, + {"wk_t3_name", (DL_FUNC)&wk_t3_name, 1}, {"wk_t3_reset", (DL_FUNC)&wk_t3_reset, 1}, {"wk_tail_ratio_new", (DL_FUNC)&wk_tail_ratio_new, 1}, {"wk_tail_ratio_update", (DL_FUNC)&wk_tail_ratio_update, 2}, {"wk_tail_ratio_batch", (DL_FUNC)&wk_tail_ratio_batch, 2}, {"wk_tail_ratio_warmup_period", (DL_FUNC)&wk_tail_ratio_warmup_period, 1}, {"wk_tail_ratio_is_ready", (DL_FUNC)&wk_tail_ratio_is_ready, 1}, + {"wk_tail_ratio_name", (DL_FUNC)&wk_tail_ratio_name, 1}, {"wk_tail_ratio_reset", (DL_FUNC)&wk_tail_ratio_reset, 1}, {"wk_taker_buy_sell_ratio_new", (DL_FUNC)&wk_taker_buy_sell_ratio_new, 0}, {"wk_taker_buy_sell_ratio_update", (DL_FUNC)&wk_taker_buy_sell_ratio_update, 13}, {"wk_taker_buy_sell_ratio_warmup_period", (DL_FUNC)&wk_taker_buy_sell_ratio_warmup_period, 1}, {"wk_taker_buy_sell_ratio_is_ready", (DL_FUNC)&wk_taker_buy_sell_ratio_is_ready, 1}, + {"wk_taker_buy_sell_ratio_name", (DL_FUNC)&wk_taker_buy_sell_ratio_name, 1}, {"wk_taker_buy_sell_ratio_reset", (DL_FUNC)&wk_taker_buy_sell_ratio_reset, 1}, {"wk_takuri_new", (DL_FUNC)&wk_takuri_new, 0}, {"wk_takuri_update", (DL_FUNC)&wk_takuri_update, 7}, {"wk_takuri_batch", (DL_FUNC)&wk_takuri_batch, 7}, {"wk_takuri_warmup_period", (DL_FUNC)&wk_takuri_warmup_period, 1}, {"wk_takuri_is_ready", (DL_FUNC)&wk_takuri_is_ready, 1}, + {"wk_takuri_name", (DL_FUNC)&wk_takuri_name, 1}, {"wk_takuri_reset", (DL_FUNC)&wk_takuri_reset, 1}, {"wk_tasuki_gap_new", (DL_FUNC)&wk_tasuki_gap_new, 0}, {"wk_tasuki_gap_update", (DL_FUNC)&wk_tasuki_gap_update, 7}, {"wk_tasuki_gap_batch", (DL_FUNC)&wk_tasuki_gap_batch, 7}, {"wk_tasuki_gap_warmup_period", (DL_FUNC)&wk_tasuki_gap_warmup_period, 1}, {"wk_tasuki_gap_is_ready", (DL_FUNC)&wk_tasuki_gap_is_ready, 1}, + {"wk_tasuki_gap_name", (DL_FUNC)&wk_tasuki_gap_name, 1}, {"wk_tasuki_gap_reset", (DL_FUNC)&wk_tasuki_gap_reset, 1}, {"wk_td_camouflage_new", (DL_FUNC)&wk_td_camouflage_new, 0}, {"wk_td_camouflage_update", (DL_FUNC)&wk_td_camouflage_update, 7}, {"wk_td_camouflage_batch", (DL_FUNC)&wk_td_camouflage_batch, 7}, {"wk_td_camouflage_warmup_period", (DL_FUNC)&wk_td_camouflage_warmup_period, 1}, {"wk_td_camouflage_is_ready", (DL_FUNC)&wk_td_camouflage_is_ready, 1}, + {"wk_td_camouflage_name", (DL_FUNC)&wk_td_camouflage_name, 1}, {"wk_td_camouflage_reset", (DL_FUNC)&wk_td_camouflage_reset, 1}, {"wk_td_clop_new", (DL_FUNC)&wk_td_clop_new, 0}, {"wk_td_clop_update", (DL_FUNC)&wk_td_clop_update, 7}, {"wk_td_clop_batch", (DL_FUNC)&wk_td_clop_batch, 7}, {"wk_td_clop_warmup_period", (DL_FUNC)&wk_td_clop_warmup_period, 1}, {"wk_td_clop_is_ready", (DL_FUNC)&wk_td_clop_is_ready, 1}, + {"wk_td_clop_name", (DL_FUNC)&wk_td_clop_name, 1}, {"wk_td_clop_reset", (DL_FUNC)&wk_td_clop_reset, 1}, {"wk_td_clopwin_new", (DL_FUNC)&wk_td_clopwin_new, 0}, {"wk_td_clopwin_update", (DL_FUNC)&wk_td_clopwin_update, 7}, {"wk_td_clopwin_batch", (DL_FUNC)&wk_td_clopwin_batch, 7}, {"wk_td_clopwin_warmup_period", (DL_FUNC)&wk_td_clopwin_warmup_period, 1}, {"wk_td_clopwin_is_ready", (DL_FUNC)&wk_td_clopwin_is_ready, 1}, + {"wk_td_clopwin_name", (DL_FUNC)&wk_td_clopwin_name, 1}, {"wk_td_clopwin_reset", (DL_FUNC)&wk_td_clopwin_reset, 1}, {"wk_td_combo_new", (DL_FUNC)&wk_td_combo_new, 4}, {"wk_td_combo_update", (DL_FUNC)&wk_td_combo_update, 7}, {"wk_td_combo_batch", (DL_FUNC)&wk_td_combo_batch, 7}, {"wk_td_combo_warmup_period", (DL_FUNC)&wk_td_combo_warmup_period, 1}, {"wk_td_combo_is_ready", (DL_FUNC)&wk_td_combo_is_ready, 1}, + {"wk_td_combo_name", (DL_FUNC)&wk_td_combo_name, 1}, {"wk_td_combo_reset", (DL_FUNC)&wk_td_combo_reset, 1}, {"wk_td_countdown_new", (DL_FUNC)&wk_td_countdown_new, 4}, {"wk_td_countdown_update", (DL_FUNC)&wk_td_countdown_update, 7}, {"wk_td_countdown_batch", (DL_FUNC)&wk_td_countdown_batch, 7}, {"wk_td_countdown_warmup_period", (DL_FUNC)&wk_td_countdown_warmup_period, 1}, {"wk_td_countdown_is_ready", (DL_FUNC)&wk_td_countdown_is_ready, 1}, + {"wk_td_countdown_name", (DL_FUNC)&wk_td_countdown_name, 1}, {"wk_td_countdown_reset", (DL_FUNC)&wk_td_countdown_reset, 1}, {"wk_td_d_wave_new", (DL_FUNC)&wk_td_d_wave_new, 1}, {"wk_td_d_wave_update", (DL_FUNC)&wk_td_d_wave_update, 7}, {"wk_td_d_wave_batch", (DL_FUNC)&wk_td_d_wave_batch, 7}, {"wk_td_d_wave_warmup_period", (DL_FUNC)&wk_td_d_wave_warmup_period, 1}, {"wk_td_d_wave_is_ready", (DL_FUNC)&wk_td_d_wave_is_ready, 1}, + {"wk_td_d_wave_name", (DL_FUNC)&wk_td_d_wave_name, 1}, {"wk_td_d_wave_reset", (DL_FUNC)&wk_td_d_wave_reset, 1}, {"wk_td_de_marker_new", (DL_FUNC)&wk_td_de_marker_new, 1}, {"wk_td_de_marker_update", (DL_FUNC)&wk_td_de_marker_update, 7}, {"wk_td_de_marker_batch", (DL_FUNC)&wk_td_de_marker_batch, 7}, {"wk_td_de_marker_warmup_period", (DL_FUNC)&wk_td_de_marker_warmup_period, 1}, {"wk_td_de_marker_is_ready", (DL_FUNC)&wk_td_de_marker_is_ready, 1}, + {"wk_td_de_marker_name", (DL_FUNC)&wk_td_de_marker_name, 1}, {"wk_td_de_marker_reset", (DL_FUNC)&wk_td_de_marker_reset, 1}, {"wk_td_differential_new", (DL_FUNC)&wk_td_differential_new, 0}, {"wk_td_differential_update", (DL_FUNC)&wk_td_differential_update, 7}, {"wk_td_differential_batch", (DL_FUNC)&wk_td_differential_batch, 7}, {"wk_td_differential_warmup_period", (DL_FUNC)&wk_td_differential_warmup_period, 1}, {"wk_td_differential_is_ready", (DL_FUNC)&wk_td_differential_is_ready, 1}, + {"wk_td_differential_name", (DL_FUNC)&wk_td_differential_name, 1}, {"wk_td_differential_reset", (DL_FUNC)&wk_td_differential_reset, 1}, {"wk_td_lines_new", (DL_FUNC)&wk_td_lines_new, 2}, {"wk_td_lines_update", (DL_FUNC)&wk_td_lines_update, 7}, {"wk_td_lines_warmup_period", (DL_FUNC)&wk_td_lines_warmup_period, 1}, {"wk_td_lines_is_ready", (DL_FUNC)&wk_td_lines_is_ready, 1}, + {"wk_td_lines_name", (DL_FUNC)&wk_td_lines_name, 1}, {"wk_td_lines_reset", (DL_FUNC)&wk_td_lines_reset, 1}, {"wk_td_moving_average_new", (DL_FUNC)&wk_td_moving_average_new, 2}, {"wk_td_moving_average_update", (DL_FUNC)&wk_td_moving_average_update, 7}, {"wk_td_moving_average_warmup_period", (DL_FUNC)&wk_td_moving_average_warmup_period, 1}, {"wk_td_moving_average_is_ready", (DL_FUNC)&wk_td_moving_average_is_ready, 1}, + {"wk_td_moving_average_name", (DL_FUNC)&wk_td_moving_average_name, 1}, {"wk_td_moving_average_reset", (DL_FUNC)&wk_td_moving_average_reset, 1}, {"wk_td_open_new", (DL_FUNC)&wk_td_open_new, 0}, {"wk_td_open_update", (DL_FUNC)&wk_td_open_update, 7}, {"wk_td_open_batch", (DL_FUNC)&wk_td_open_batch, 7}, {"wk_td_open_warmup_period", (DL_FUNC)&wk_td_open_warmup_period, 1}, {"wk_td_open_is_ready", (DL_FUNC)&wk_td_open_is_ready, 1}, + {"wk_td_open_name", (DL_FUNC)&wk_td_open_name, 1}, {"wk_td_open_reset", (DL_FUNC)&wk_td_open_reset, 1}, {"wk_td_pressure_new", (DL_FUNC)&wk_td_pressure_new, 1}, {"wk_td_pressure_update", (DL_FUNC)&wk_td_pressure_update, 7}, {"wk_td_pressure_batch", (DL_FUNC)&wk_td_pressure_batch, 7}, {"wk_td_pressure_warmup_period", (DL_FUNC)&wk_td_pressure_warmup_period, 1}, {"wk_td_pressure_is_ready", (DL_FUNC)&wk_td_pressure_is_ready, 1}, + {"wk_td_pressure_name", (DL_FUNC)&wk_td_pressure_name, 1}, {"wk_td_pressure_reset", (DL_FUNC)&wk_td_pressure_reset, 1}, {"wk_td_propulsion_new", (DL_FUNC)&wk_td_propulsion_new, 0}, {"wk_td_propulsion_update", (DL_FUNC)&wk_td_propulsion_update, 7}, {"wk_td_propulsion_batch", (DL_FUNC)&wk_td_propulsion_batch, 7}, {"wk_td_propulsion_warmup_period", (DL_FUNC)&wk_td_propulsion_warmup_period, 1}, {"wk_td_propulsion_is_ready", (DL_FUNC)&wk_td_propulsion_is_ready, 1}, + {"wk_td_propulsion_name", (DL_FUNC)&wk_td_propulsion_name, 1}, {"wk_td_propulsion_reset", (DL_FUNC)&wk_td_propulsion_reset, 1}, {"wk_td_range_projection_new", (DL_FUNC)&wk_td_range_projection_new, 0}, {"wk_td_range_projection_update", (DL_FUNC)&wk_td_range_projection_update, 7}, {"wk_td_range_projection_warmup_period", (DL_FUNC)&wk_td_range_projection_warmup_period, 1}, {"wk_td_range_projection_is_ready", (DL_FUNC)&wk_td_range_projection_is_ready, 1}, + {"wk_td_range_projection_name", (DL_FUNC)&wk_td_range_projection_name, 1}, {"wk_td_range_projection_reset", (DL_FUNC)&wk_td_range_projection_reset, 1}, {"wk_td_rei_new", (DL_FUNC)&wk_td_rei_new, 1}, {"wk_td_rei_update", (DL_FUNC)&wk_td_rei_update, 7}, {"wk_td_rei_batch", (DL_FUNC)&wk_td_rei_batch, 7}, {"wk_td_rei_warmup_period", (DL_FUNC)&wk_td_rei_warmup_period, 1}, {"wk_td_rei_is_ready", (DL_FUNC)&wk_td_rei_is_ready, 1}, + {"wk_td_rei_name", (DL_FUNC)&wk_td_rei_name, 1}, {"wk_td_rei_reset", (DL_FUNC)&wk_td_rei_reset, 1}, {"wk_td_risk_level_new", (DL_FUNC)&wk_td_risk_level_new, 2}, {"wk_td_risk_level_update", (DL_FUNC)&wk_td_risk_level_update, 7}, {"wk_td_risk_level_warmup_period", (DL_FUNC)&wk_td_risk_level_warmup_period, 1}, {"wk_td_risk_level_is_ready", (DL_FUNC)&wk_td_risk_level_is_ready, 1}, + {"wk_td_risk_level_name", (DL_FUNC)&wk_td_risk_level_name, 1}, {"wk_td_risk_level_reset", (DL_FUNC)&wk_td_risk_level_reset, 1}, {"wk_td_sequential_new", (DL_FUNC)&wk_td_sequential_new, 4}, {"wk_td_sequential_update", (DL_FUNC)&wk_td_sequential_update, 7}, {"wk_td_sequential_warmup_period", (DL_FUNC)&wk_td_sequential_warmup_period, 1}, {"wk_td_sequential_is_ready", (DL_FUNC)&wk_td_sequential_is_ready, 1}, + {"wk_td_sequential_name", (DL_FUNC)&wk_td_sequential_name, 1}, {"wk_td_sequential_reset", (DL_FUNC)&wk_td_sequential_reset, 1}, {"wk_td_setup_new", (DL_FUNC)&wk_td_setup_new, 2}, {"wk_td_setup_update", (DL_FUNC)&wk_td_setup_update, 7}, {"wk_td_setup_batch", (DL_FUNC)&wk_td_setup_batch, 7}, {"wk_td_setup_warmup_period", (DL_FUNC)&wk_td_setup_warmup_period, 1}, {"wk_td_setup_is_ready", (DL_FUNC)&wk_td_setup_is_ready, 1}, + {"wk_td_setup_name", (DL_FUNC)&wk_td_setup_name, 1}, {"wk_td_setup_reset", (DL_FUNC)&wk_td_setup_reset, 1}, {"wk_td_trap_new", (DL_FUNC)&wk_td_trap_new, 0}, {"wk_td_trap_update", (DL_FUNC)&wk_td_trap_update, 7}, {"wk_td_trap_batch", (DL_FUNC)&wk_td_trap_batch, 7}, {"wk_td_trap_warmup_period", (DL_FUNC)&wk_td_trap_warmup_period, 1}, {"wk_td_trap_is_ready", (DL_FUNC)&wk_td_trap_is_ready, 1}, + {"wk_td_trap_name", (DL_FUNC)&wk_td_trap_name, 1}, {"wk_td_trap_reset", (DL_FUNC)&wk_td_trap_reset, 1}, {"wk_tema_new", (DL_FUNC)&wk_tema_new, 1}, {"wk_tema_update", (DL_FUNC)&wk_tema_update, 2}, {"wk_tema_batch", (DL_FUNC)&wk_tema_batch, 2}, {"wk_tema_warmup_period", (DL_FUNC)&wk_tema_warmup_period, 1}, {"wk_tema_is_ready", (DL_FUNC)&wk_tema_is_ready, 1}, + {"wk_tema_name", (DL_FUNC)&wk_tema_name, 1}, {"wk_tema_reset", (DL_FUNC)&wk_tema_reset, 1}, {"wk_term_structure_basis_new", (DL_FUNC)&wk_term_structure_basis_new, 0}, {"wk_term_structure_basis_update", (DL_FUNC)&wk_term_structure_basis_update, 13}, {"wk_term_structure_basis_warmup_period", (DL_FUNC)&wk_term_structure_basis_warmup_period, 1}, {"wk_term_structure_basis_is_ready", (DL_FUNC)&wk_term_structure_basis_is_ready, 1}, + {"wk_term_structure_basis_name", (DL_FUNC)&wk_term_structure_basis_name, 1}, {"wk_term_structure_basis_reset", (DL_FUNC)&wk_term_structure_basis_reset, 1}, {"wk_three_drives_new", (DL_FUNC)&wk_three_drives_new, 0}, {"wk_three_drives_update", (DL_FUNC)&wk_three_drives_update, 7}, {"wk_three_drives_batch", (DL_FUNC)&wk_three_drives_batch, 7}, {"wk_three_drives_warmup_period", (DL_FUNC)&wk_three_drives_warmup_period, 1}, {"wk_three_drives_is_ready", (DL_FUNC)&wk_three_drives_is_ready, 1}, + {"wk_three_drives_name", (DL_FUNC)&wk_three_drives_name, 1}, {"wk_three_drives_reset", (DL_FUNC)&wk_three_drives_reset, 1}, {"wk_three_inside_new", (DL_FUNC)&wk_three_inside_new, 0}, {"wk_three_inside_update", (DL_FUNC)&wk_three_inside_update, 7}, {"wk_three_inside_batch", (DL_FUNC)&wk_three_inside_batch, 7}, {"wk_three_inside_warmup_period", (DL_FUNC)&wk_three_inside_warmup_period, 1}, {"wk_three_inside_is_ready", (DL_FUNC)&wk_three_inside_is_ready, 1}, + {"wk_three_inside_name", (DL_FUNC)&wk_three_inside_name, 1}, {"wk_three_inside_reset", (DL_FUNC)&wk_three_inside_reset, 1}, {"wk_three_line_break_new", (DL_FUNC)&wk_three_line_break_new, 1}, {"wk_three_line_break_update", (DL_FUNC)&wk_three_line_break_update, 7}, {"wk_three_line_break_batch", (DL_FUNC)&wk_three_line_break_batch, 7}, {"wk_three_line_break_warmup_period", (DL_FUNC)&wk_three_line_break_warmup_period, 1}, {"wk_three_line_break_is_ready", (DL_FUNC)&wk_three_line_break_is_ready, 1}, + {"wk_three_line_break_name", (DL_FUNC)&wk_three_line_break_name, 1}, {"wk_three_line_break_reset", (DL_FUNC)&wk_three_line_break_reset, 1}, {"wk_three_line_break_bars_new", (DL_FUNC)&wk_three_line_break_bars_new, 1}, {"wk_three_line_break_bars_update", (DL_FUNC)&wk_three_line_break_bars_update, 7}, + {"wk_three_line_break_bars_name", (DL_FUNC)&wk_three_line_break_bars_name, 1}, {"wk_three_line_break_bars_reset", (DL_FUNC)&wk_three_line_break_bars_reset, 1}, {"wk_three_line_strike_new", (DL_FUNC)&wk_three_line_strike_new, 0}, {"wk_three_line_strike_update", (DL_FUNC)&wk_three_line_strike_update, 7}, {"wk_three_line_strike_batch", (DL_FUNC)&wk_three_line_strike_batch, 7}, {"wk_three_line_strike_warmup_period", (DL_FUNC)&wk_three_line_strike_warmup_period, 1}, {"wk_three_line_strike_is_ready", (DL_FUNC)&wk_three_line_strike_is_ready, 1}, + {"wk_three_line_strike_name", (DL_FUNC)&wk_three_line_strike_name, 1}, {"wk_three_line_strike_reset", (DL_FUNC)&wk_three_line_strike_reset, 1}, {"wk_three_outside_new", (DL_FUNC)&wk_three_outside_new, 0}, {"wk_three_outside_update", (DL_FUNC)&wk_three_outside_update, 7}, {"wk_three_outside_batch", (DL_FUNC)&wk_three_outside_batch, 7}, {"wk_three_outside_warmup_period", (DL_FUNC)&wk_three_outside_warmup_period, 1}, {"wk_three_outside_is_ready", (DL_FUNC)&wk_three_outside_is_ready, 1}, + {"wk_three_outside_name", (DL_FUNC)&wk_three_outside_name, 1}, {"wk_three_outside_reset", (DL_FUNC)&wk_three_outside_reset, 1}, {"wk_three_soldiers_or_crows_new", (DL_FUNC)&wk_three_soldiers_or_crows_new, 0}, {"wk_three_soldiers_or_crows_update", (DL_FUNC)&wk_three_soldiers_or_crows_update, 7}, {"wk_three_soldiers_or_crows_batch", (DL_FUNC)&wk_three_soldiers_or_crows_batch, 7}, {"wk_three_soldiers_or_crows_warmup_period", (DL_FUNC)&wk_three_soldiers_or_crows_warmup_period, 1}, {"wk_three_soldiers_or_crows_is_ready", (DL_FUNC)&wk_three_soldiers_or_crows_is_ready, 1}, + {"wk_three_soldiers_or_crows_name", (DL_FUNC)&wk_three_soldiers_or_crows_name, 1}, {"wk_three_soldiers_or_crows_reset", (DL_FUNC)&wk_three_soldiers_or_crows_reset, 1}, {"wk_three_stars_in_south_new", (DL_FUNC)&wk_three_stars_in_south_new, 0}, {"wk_three_stars_in_south_update", (DL_FUNC)&wk_three_stars_in_south_update, 7}, {"wk_three_stars_in_south_batch", (DL_FUNC)&wk_three_stars_in_south_batch, 7}, {"wk_three_stars_in_south_warmup_period", (DL_FUNC)&wk_three_stars_in_south_warmup_period, 1}, {"wk_three_stars_in_south_is_ready", (DL_FUNC)&wk_three_stars_in_south_is_ready, 1}, + {"wk_three_stars_in_south_name", (DL_FUNC)&wk_three_stars_in_south_name, 1}, {"wk_three_stars_in_south_reset", (DL_FUNC)&wk_three_stars_in_south_reset, 1}, {"wk_thrusting_new", (DL_FUNC)&wk_thrusting_new, 0}, {"wk_thrusting_update", (DL_FUNC)&wk_thrusting_update, 7}, {"wk_thrusting_batch", (DL_FUNC)&wk_thrusting_batch, 7}, {"wk_thrusting_warmup_period", (DL_FUNC)&wk_thrusting_warmup_period, 1}, {"wk_thrusting_is_ready", (DL_FUNC)&wk_thrusting_is_ready, 1}, + {"wk_thrusting_name", (DL_FUNC)&wk_thrusting_name, 1}, {"wk_thrusting_reset", (DL_FUNC)&wk_thrusting_reset, 1}, {"wk_tick_bars_new", (DL_FUNC)&wk_tick_bars_new, 1}, {"wk_tick_bars_update", (DL_FUNC)&wk_tick_bars_update, 7}, + {"wk_tick_bars_name", (DL_FUNC)&wk_tick_bars_name, 1}, {"wk_tick_bars_reset", (DL_FUNC)&wk_tick_bars_reset, 1}, {"wk_tick_index_new", (DL_FUNC)&wk_tick_index_new, 0}, {"wk_tick_index_update", (DL_FUNC)&wk_tick_index_update, 8}, {"wk_tick_index_warmup_period", (DL_FUNC)&wk_tick_index_warmup_period, 1}, {"wk_tick_index_is_ready", (DL_FUNC)&wk_tick_index_is_ready, 1}, + {"wk_tick_index_name", (DL_FUNC)&wk_tick_index_name, 1}, {"wk_tick_index_reset", (DL_FUNC)&wk_tick_index_reset, 1}, {"wk_tii_new", (DL_FUNC)&wk_tii_new, 2}, {"wk_tii_update", (DL_FUNC)&wk_tii_update, 2}, {"wk_tii_batch", (DL_FUNC)&wk_tii_batch, 2}, {"wk_tii_warmup_period", (DL_FUNC)&wk_tii_warmup_period, 1}, {"wk_tii_is_ready", (DL_FUNC)&wk_tii_is_ready, 1}, + {"wk_tii_name", (DL_FUNC)&wk_tii_name, 1}, {"wk_tii_reset", (DL_FUNC)&wk_tii_reset, 1}, {"wk_time_based_stop_new", (DL_FUNC)&wk_time_based_stop_new, 1}, {"wk_time_based_stop_update", (DL_FUNC)&wk_time_based_stop_update, 7}, {"wk_time_based_stop_batch", (DL_FUNC)&wk_time_based_stop_batch, 7}, {"wk_time_based_stop_warmup_period", (DL_FUNC)&wk_time_based_stop_warmup_period, 1}, {"wk_time_based_stop_is_ready", (DL_FUNC)&wk_time_based_stop_is_ready, 1}, + {"wk_time_based_stop_name", (DL_FUNC)&wk_time_based_stop_name, 1}, {"wk_time_based_stop_reset", (DL_FUNC)&wk_time_based_stop_reset, 1}, {"wk_time_of_day_return_profile_new", (DL_FUNC)&wk_time_of_day_return_profile_new, 2}, {"wk_time_of_day_return_profile_update", (DL_FUNC)&wk_time_of_day_return_profile_update, 8}, {"wk_time_of_day_return_profile_warmup_period", (DL_FUNC)&wk_time_of_day_return_profile_warmup_period, 1}, {"wk_time_of_day_return_profile_is_ready", (DL_FUNC)&wk_time_of_day_return_profile_is_ready, 1}, + {"wk_time_of_day_return_profile_name", (DL_FUNC)&wk_time_of_day_return_profile_name, 1}, {"wk_time_of_day_return_profile_reset", (DL_FUNC)&wk_time_of_day_return_profile_reset, 1}, {"wk_tower_top_bottom_new", (DL_FUNC)&wk_tower_top_bottom_new, 0}, {"wk_tower_top_bottom_update", (DL_FUNC)&wk_tower_top_bottom_update, 7}, {"wk_tower_top_bottom_batch", (DL_FUNC)&wk_tower_top_bottom_batch, 7}, {"wk_tower_top_bottom_warmup_period", (DL_FUNC)&wk_tower_top_bottom_warmup_period, 1}, {"wk_tower_top_bottom_is_ready", (DL_FUNC)&wk_tower_top_bottom_is_ready, 1}, + {"wk_tower_top_bottom_name", (DL_FUNC)&wk_tower_top_bottom_name, 1}, {"wk_tower_top_bottom_reset", (DL_FUNC)&wk_tower_top_bottom_reset, 1}, {"wk_tpo_profile_new", (DL_FUNC)&wk_tpo_profile_new, 2}, {"wk_tpo_profile_update", (DL_FUNC)&wk_tpo_profile_update, 8}, {"wk_tpo_profile_warmup_period", (DL_FUNC)&wk_tpo_profile_warmup_period, 1}, {"wk_tpo_profile_is_ready", (DL_FUNC)&wk_tpo_profile_is_ready, 1}, + {"wk_tpo_profile_name", (DL_FUNC)&wk_tpo_profile_name, 1}, {"wk_tpo_profile_reset", (DL_FUNC)&wk_tpo_profile_reset, 1}, {"wk_trade_imbalance_new", (DL_FUNC)&wk_trade_imbalance_new, 1}, {"wk_trade_imbalance_update", (DL_FUNC)&wk_trade_imbalance_update, 5}, {"wk_trade_imbalance_warmup_period", (DL_FUNC)&wk_trade_imbalance_warmup_period, 1}, {"wk_trade_imbalance_is_ready", (DL_FUNC)&wk_trade_imbalance_is_ready, 1}, + {"wk_trade_imbalance_name", (DL_FUNC)&wk_trade_imbalance_name, 1}, {"wk_trade_imbalance_reset", (DL_FUNC)&wk_trade_imbalance_reset, 1}, {"wk_trade_sign_autocorrelation_new", (DL_FUNC)&wk_trade_sign_autocorrelation_new, 1}, {"wk_trade_sign_autocorrelation_update", (DL_FUNC)&wk_trade_sign_autocorrelation_update, 5}, {"wk_trade_sign_autocorrelation_warmup_period", (DL_FUNC)&wk_trade_sign_autocorrelation_warmup_period, 1}, {"wk_trade_sign_autocorrelation_is_ready", (DL_FUNC)&wk_trade_sign_autocorrelation_is_ready, 1}, + {"wk_trade_sign_autocorrelation_name", (DL_FUNC)&wk_trade_sign_autocorrelation_name, 1}, {"wk_trade_sign_autocorrelation_reset", (DL_FUNC)&wk_trade_sign_autocorrelation_reset, 1}, {"wk_trade_volume_index_new", (DL_FUNC)&wk_trade_volume_index_new, 1}, {"wk_trade_volume_index_update", (DL_FUNC)&wk_trade_volume_index_update, 7}, {"wk_trade_volume_index_batch", (DL_FUNC)&wk_trade_volume_index_batch, 7}, {"wk_trade_volume_index_warmup_period", (DL_FUNC)&wk_trade_volume_index_warmup_period, 1}, {"wk_trade_volume_index_is_ready", (DL_FUNC)&wk_trade_volume_index_is_ready, 1}, + {"wk_trade_volume_index_name", (DL_FUNC)&wk_trade_volume_index_name, 1}, {"wk_trade_volume_index_reset", (DL_FUNC)&wk_trade_volume_index_reset, 1}, {"wk_trend_label_new", (DL_FUNC)&wk_trend_label_new, 1}, {"wk_trend_label_update", (DL_FUNC)&wk_trend_label_update, 2}, {"wk_trend_label_batch", (DL_FUNC)&wk_trend_label_batch, 2}, {"wk_trend_label_warmup_period", (DL_FUNC)&wk_trend_label_warmup_period, 1}, {"wk_trend_label_is_ready", (DL_FUNC)&wk_trend_label_is_ready, 1}, + {"wk_trend_label_name", (DL_FUNC)&wk_trend_label_name, 1}, {"wk_trend_label_reset", (DL_FUNC)&wk_trend_label_reset, 1}, {"wk_trend_strength_index_new", (DL_FUNC)&wk_trend_strength_index_new, 1}, {"wk_trend_strength_index_update", (DL_FUNC)&wk_trend_strength_index_update, 2}, {"wk_trend_strength_index_batch", (DL_FUNC)&wk_trend_strength_index_batch, 2}, {"wk_trend_strength_index_warmup_period", (DL_FUNC)&wk_trend_strength_index_warmup_period, 1}, {"wk_trend_strength_index_is_ready", (DL_FUNC)&wk_trend_strength_index_is_ready, 1}, + {"wk_trend_strength_index_name", (DL_FUNC)&wk_trend_strength_index_name, 1}, {"wk_trend_strength_index_reset", (DL_FUNC)&wk_trend_strength_index_reset, 1}, {"wk_trendflex_new", (DL_FUNC)&wk_trendflex_new, 1}, {"wk_trendflex_update", (DL_FUNC)&wk_trendflex_update, 2}, {"wk_trendflex_batch", (DL_FUNC)&wk_trendflex_batch, 2}, {"wk_trendflex_warmup_period", (DL_FUNC)&wk_trendflex_warmup_period, 1}, {"wk_trendflex_is_ready", (DL_FUNC)&wk_trendflex_is_ready, 1}, + {"wk_trendflex_name", (DL_FUNC)&wk_trendflex_name, 1}, {"wk_trendflex_reset", (DL_FUNC)&wk_trendflex_reset, 1}, {"wk_treynor_ratio_new", (DL_FUNC)&wk_treynor_ratio_new, 2}, {"wk_treynor_ratio_update", (DL_FUNC)&wk_treynor_ratio_update, 3}, {"wk_treynor_ratio_batch", (DL_FUNC)&wk_treynor_ratio_batch, 3}, {"wk_treynor_ratio_warmup_period", (DL_FUNC)&wk_treynor_ratio_warmup_period, 1}, {"wk_treynor_ratio_is_ready", (DL_FUNC)&wk_treynor_ratio_is_ready, 1}, + {"wk_treynor_ratio_name", (DL_FUNC)&wk_treynor_ratio_name, 1}, {"wk_treynor_ratio_reset", (DL_FUNC)&wk_treynor_ratio_reset, 1}, {"wk_triangle_new", (DL_FUNC)&wk_triangle_new, 0}, {"wk_triangle_update", (DL_FUNC)&wk_triangle_update, 7}, {"wk_triangle_batch", (DL_FUNC)&wk_triangle_batch, 7}, {"wk_triangle_warmup_period", (DL_FUNC)&wk_triangle_warmup_period, 1}, {"wk_triangle_is_ready", (DL_FUNC)&wk_triangle_is_ready, 1}, + {"wk_triangle_name", (DL_FUNC)&wk_triangle_name, 1}, {"wk_triangle_reset", (DL_FUNC)&wk_triangle_reset, 1}, {"wk_trima_new", (DL_FUNC)&wk_trima_new, 1}, {"wk_trima_update", (DL_FUNC)&wk_trima_update, 2}, {"wk_trima_batch", (DL_FUNC)&wk_trima_batch, 2}, {"wk_trima_warmup_period", (DL_FUNC)&wk_trima_warmup_period, 1}, {"wk_trima_is_ready", (DL_FUNC)&wk_trima_is_ready, 1}, + {"wk_trima_name", (DL_FUNC)&wk_trima_name, 1}, {"wk_trima_reset", (DL_FUNC)&wk_trima_reset, 1}, {"wk_trin_new", (DL_FUNC)&wk_trin_new, 0}, {"wk_trin_update", (DL_FUNC)&wk_trin_update, 8}, {"wk_trin_warmup_period", (DL_FUNC)&wk_trin_warmup_period, 1}, {"wk_trin_is_ready", (DL_FUNC)&wk_trin_is_ready, 1}, + {"wk_trin_name", (DL_FUNC)&wk_trin_name, 1}, {"wk_trin_reset", (DL_FUNC)&wk_trin_reset, 1}, {"wk_triple_top_bottom_new", (DL_FUNC)&wk_triple_top_bottom_new, 0}, {"wk_triple_top_bottom_update", (DL_FUNC)&wk_triple_top_bottom_update, 7}, {"wk_triple_top_bottom_batch", (DL_FUNC)&wk_triple_top_bottom_batch, 7}, {"wk_triple_top_bottom_warmup_period", (DL_FUNC)&wk_triple_top_bottom_warmup_period, 1}, {"wk_triple_top_bottom_is_ready", (DL_FUNC)&wk_triple_top_bottom_is_ready, 1}, + {"wk_triple_top_bottom_name", (DL_FUNC)&wk_triple_top_bottom_name, 1}, {"wk_triple_top_bottom_reset", (DL_FUNC)&wk_triple_top_bottom_reset, 1}, {"wk_tristar_new", (DL_FUNC)&wk_tristar_new, 0}, {"wk_tristar_update", (DL_FUNC)&wk_tristar_update, 7}, {"wk_tristar_batch", (DL_FUNC)&wk_tristar_batch, 7}, {"wk_tristar_warmup_period", (DL_FUNC)&wk_tristar_warmup_period, 1}, {"wk_tristar_is_ready", (DL_FUNC)&wk_tristar_is_ready, 1}, + {"wk_tristar_name", (DL_FUNC)&wk_tristar_name, 1}, {"wk_tristar_reset", (DL_FUNC)&wk_tristar_reset, 1}, {"wk_trix_new", (DL_FUNC)&wk_trix_new, 1}, {"wk_trix_update", (DL_FUNC)&wk_trix_update, 2}, {"wk_trix_batch", (DL_FUNC)&wk_trix_batch, 2}, {"wk_trix_warmup_period", (DL_FUNC)&wk_trix_warmup_period, 1}, {"wk_trix_is_ready", (DL_FUNC)&wk_trix_is_ready, 1}, + {"wk_trix_name", (DL_FUNC)&wk_trix_name, 1}, {"wk_trix_reset", (DL_FUNC)&wk_trix_reset, 1}, {"wk_true_range_new", (DL_FUNC)&wk_true_range_new, 0}, {"wk_true_range_update", (DL_FUNC)&wk_true_range_update, 7}, {"wk_true_range_batch", (DL_FUNC)&wk_true_range_batch, 7}, {"wk_true_range_warmup_period", (DL_FUNC)&wk_true_range_warmup_period, 1}, {"wk_true_range_is_ready", (DL_FUNC)&wk_true_range_is_ready, 1}, + {"wk_true_range_name", (DL_FUNC)&wk_true_range_name, 1}, {"wk_true_range_reset", (DL_FUNC)&wk_true_range_reset, 1}, {"wk_tsf_new", (DL_FUNC)&wk_tsf_new, 1}, {"wk_tsf_update", (DL_FUNC)&wk_tsf_update, 2}, {"wk_tsf_batch", (DL_FUNC)&wk_tsf_batch, 2}, {"wk_tsf_warmup_period", (DL_FUNC)&wk_tsf_warmup_period, 1}, {"wk_tsf_is_ready", (DL_FUNC)&wk_tsf_is_ready, 1}, + {"wk_tsf_name", (DL_FUNC)&wk_tsf_name, 1}, {"wk_tsf_reset", (DL_FUNC)&wk_tsf_reset, 1}, {"wk_tsf_oscillator_new", (DL_FUNC)&wk_tsf_oscillator_new, 1}, {"wk_tsf_oscillator_update", (DL_FUNC)&wk_tsf_oscillator_update, 2}, {"wk_tsf_oscillator_batch", (DL_FUNC)&wk_tsf_oscillator_batch, 2}, {"wk_tsf_oscillator_warmup_period", (DL_FUNC)&wk_tsf_oscillator_warmup_period, 1}, {"wk_tsf_oscillator_is_ready", (DL_FUNC)&wk_tsf_oscillator_is_ready, 1}, + {"wk_tsf_oscillator_name", (DL_FUNC)&wk_tsf_oscillator_name, 1}, {"wk_tsf_oscillator_reset", (DL_FUNC)&wk_tsf_oscillator_reset, 1}, {"wk_tsi_new", (DL_FUNC)&wk_tsi_new, 2}, {"wk_tsi_update", (DL_FUNC)&wk_tsi_update, 2}, {"wk_tsi_batch", (DL_FUNC)&wk_tsi_batch, 2}, {"wk_tsi_warmup_period", (DL_FUNC)&wk_tsi_warmup_period, 1}, {"wk_tsi_is_ready", (DL_FUNC)&wk_tsi_is_ready, 1}, + {"wk_tsi_name", (DL_FUNC)&wk_tsi_name, 1}, {"wk_tsi_reset", (DL_FUNC)&wk_tsi_reset, 1}, {"wk_tsv_new", (DL_FUNC)&wk_tsv_new, 1}, {"wk_tsv_update", (DL_FUNC)&wk_tsv_update, 7}, {"wk_tsv_batch", (DL_FUNC)&wk_tsv_batch, 7}, {"wk_tsv_warmup_period", (DL_FUNC)&wk_tsv_warmup_period, 1}, {"wk_tsv_is_ready", (DL_FUNC)&wk_tsv_is_ready, 1}, + {"wk_tsv_name", (DL_FUNC)&wk_tsv_name, 1}, {"wk_tsv_reset", (DL_FUNC)&wk_tsv_reset, 1}, {"wk_ttm_squeeze_new", (DL_FUNC)&wk_ttm_squeeze_new, 3}, {"wk_ttm_squeeze_update", (DL_FUNC)&wk_ttm_squeeze_update, 7}, {"wk_ttm_squeeze_warmup_period", (DL_FUNC)&wk_ttm_squeeze_warmup_period, 1}, {"wk_ttm_squeeze_is_ready", (DL_FUNC)&wk_ttm_squeeze_is_ready, 1}, + {"wk_ttm_squeeze_name", (DL_FUNC)&wk_ttm_squeeze_name, 1}, {"wk_ttm_squeeze_reset", (DL_FUNC)&wk_ttm_squeeze_reset, 1}, {"wk_ttm_trend_new", (DL_FUNC)&wk_ttm_trend_new, 1}, {"wk_ttm_trend_update", (DL_FUNC)&wk_ttm_trend_update, 7}, {"wk_ttm_trend_batch", (DL_FUNC)&wk_ttm_trend_batch, 7}, {"wk_ttm_trend_warmup_period", (DL_FUNC)&wk_ttm_trend_warmup_period, 1}, {"wk_ttm_trend_is_ready", (DL_FUNC)&wk_ttm_trend_is_ready, 1}, + {"wk_ttm_trend_name", (DL_FUNC)&wk_ttm_trend_name, 1}, {"wk_ttm_trend_reset", (DL_FUNC)&wk_ttm_trend_reset, 1}, {"wk_turn_of_month_new", (DL_FUNC)&wk_turn_of_month_new, 3}, {"wk_turn_of_month_update", (DL_FUNC)&wk_turn_of_month_update, 7}, {"wk_turn_of_month_batch", (DL_FUNC)&wk_turn_of_month_batch, 7}, {"wk_turn_of_month_warmup_period", (DL_FUNC)&wk_turn_of_month_warmup_period, 1}, {"wk_turn_of_month_is_ready", (DL_FUNC)&wk_turn_of_month_is_ready, 1}, + {"wk_turn_of_month_name", (DL_FUNC)&wk_turn_of_month_name, 1}, {"wk_turn_of_month_reset", (DL_FUNC)&wk_turn_of_month_reset, 1}, {"wk_tweezer_new", (DL_FUNC)&wk_tweezer_new, 0}, {"wk_tweezer_update", (DL_FUNC)&wk_tweezer_update, 7}, {"wk_tweezer_batch", (DL_FUNC)&wk_tweezer_batch, 7}, {"wk_tweezer_warmup_period", (DL_FUNC)&wk_tweezer_warmup_period, 1}, {"wk_tweezer_is_ready", (DL_FUNC)&wk_tweezer_is_ready, 1}, + {"wk_tweezer_name", (DL_FUNC)&wk_tweezer_name, 1}, {"wk_tweezer_reset", (DL_FUNC)&wk_tweezer_reset, 1}, {"wk_twiggs_money_flow_new", (DL_FUNC)&wk_twiggs_money_flow_new, 1}, {"wk_twiggs_money_flow_update", (DL_FUNC)&wk_twiggs_money_flow_update, 7}, {"wk_twiggs_money_flow_batch", (DL_FUNC)&wk_twiggs_money_flow_batch, 7}, {"wk_twiggs_money_flow_warmup_period", (DL_FUNC)&wk_twiggs_money_flow_warmup_period, 1}, {"wk_twiggs_money_flow_is_ready", (DL_FUNC)&wk_twiggs_money_flow_is_ready, 1}, + {"wk_twiggs_money_flow_name", (DL_FUNC)&wk_twiggs_money_flow_name, 1}, {"wk_twiggs_money_flow_reset", (DL_FUNC)&wk_twiggs_money_flow_reset, 1}, {"wk_two_crows_new", (DL_FUNC)&wk_two_crows_new, 0}, {"wk_two_crows_update", (DL_FUNC)&wk_two_crows_update, 7}, {"wk_two_crows_batch", (DL_FUNC)&wk_two_crows_batch, 7}, {"wk_two_crows_warmup_period", (DL_FUNC)&wk_two_crows_warmup_period, 1}, {"wk_two_crows_is_ready", (DL_FUNC)&wk_two_crows_is_ready, 1}, + {"wk_two_crows_name", (DL_FUNC)&wk_two_crows_name, 1}, {"wk_two_crows_reset", (DL_FUNC)&wk_two_crows_reset, 1}, {"wk_typical_price_new", (DL_FUNC)&wk_typical_price_new, 0}, {"wk_typical_price_update", (DL_FUNC)&wk_typical_price_update, 7}, {"wk_typical_price_batch", (DL_FUNC)&wk_typical_price_batch, 7}, {"wk_typical_price_warmup_period", (DL_FUNC)&wk_typical_price_warmup_period, 1}, {"wk_typical_price_is_ready", (DL_FUNC)&wk_typical_price_is_ready, 1}, + {"wk_typical_price_name", (DL_FUNC)&wk_typical_price_name, 1}, {"wk_typical_price_reset", (DL_FUNC)&wk_typical_price_reset, 1}, {"wk_ulcer_index_new", (DL_FUNC)&wk_ulcer_index_new, 1}, {"wk_ulcer_index_update", (DL_FUNC)&wk_ulcer_index_update, 2}, {"wk_ulcer_index_batch", (DL_FUNC)&wk_ulcer_index_batch, 2}, {"wk_ulcer_index_warmup_period", (DL_FUNC)&wk_ulcer_index_warmup_period, 1}, {"wk_ulcer_index_is_ready", (DL_FUNC)&wk_ulcer_index_is_ready, 1}, + {"wk_ulcer_index_name", (DL_FUNC)&wk_ulcer_index_name, 1}, {"wk_ulcer_index_reset", (DL_FUNC)&wk_ulcer_index_reset, 1}, {"wk_ultimate_oscillator_new", (DL_FUNC)&wk_ultimate_oscillator_new, 3}, {"wk_ultimate_oscillator_update", (DL_FUNC)&wk_ultimate_oscillator_update, 7}, {"wk_ultimate_oscillator_batch", (DL_FUNC)&wk_ultimate_oscillator_batch, 7}, {"wk_ultimate_oscillator_warmup_period", (DL_FUNC)&wk_ultimate_oscillator_warmup_period, 1}, {"wk_ultimate_oscillator_is_ready", (DL_FUNC)&wk_ultimate_oscillator_is_ready, 1}, + {"wk_ultimate_oscillator_name", (DL_FUNC)&wk_ultimate_oscillator_name, 1}, {"wk_ultimate_oscillator_reset", (DL_FUNC)&wk_ultimate_oscillator_reset, 1}, {"wk_unique_three_river_new", (DL_FUNC)&wk_unique_three_river_new, 0}, {"wk_unique_three_river_update", (DL_FUNC)&wk_unique_three_river_update, 7}, {"wk_unique_three_river_batch", (DL_FUNC)&wk_unique_three_river_batch, 7}, {"wk_unique_three_river_warmup_period", (DL_FUNC)&wk_unique_three_river_warmup_period, 1}, {"wk_unique_three_river_is_ready", (DL_FUNC)&wk_unique_three_river_is_ready, 1}, + {"wk_unique_three_river_name", (DL_FUNC)&wk_unique_three_river_name, 1}, {"wk_unique_three_river_reset", (DL_FUNC)&wk_unique_three_river_reset, 1}, {"wk_universal_oscillator_new", (DL_FUNC)&wk_universal_oscillator_new, 1}, {"wk_universal_oscillator_update", (DL_FUNC)&wk_universal_oscillator_update, 2}, {"wk_universal_oscillator_batch", (DL_FUNC)&wk_universal_oscillator_batch, 2}, {"wk_universal_oscillator_warmup_period", (DL_FUNC)&wk_universal_oscillator_warmup_period, 1}, {"wk_universal_oscillator_is_ready", (DL_FUNC)&wk_universal_oscillator_is_ready, 1}, + {"wk_universal_oscillator_name", (DL_FUNC)&wk_universal_oscillator_name, 1}, {"wk_universal_oscillator_reset", (DL_FUNC)&wk_universal_oscillator_reset, 1}, {"wk_up_down_volume_ratio_new", (DL_FUNC)&wk_up_down_volume_ratio_new, 0}, {"wk_up_down_volume_ratio_update", (DL_FUNC)&wk_up_down_volume_ratio_update, 8}, {"wk_up_down_volume_ratio_warmup_period", (DL_FUNC)&wk_up_down_volume_ratio_warmup_period, 1}, {"wk_up_down_volume_ratio_is_ready", (DL_FUNC)&wk_up_down_volume_ratio_is_ready, 1}, + {"wk_up_down_volume_ratio_name", (DL_FUNC)&wk_up_down_volume_ratio_name, 1}, {"wk_up_down_volume_ratio_reset", (DL_FUNC)&wk_up_down_volume_ratio_reset, 1}, {"wk_upside_gap_three_methods_new", (DL_FUNC)&wk_upside_gap_three_methods_new, 0}, {"wk_upside_gap_three_methods_update", (DL_FUNC)&wk_upside_gap_three_methods_update, 7}, {"wk_upside_gap_three_methods_batch", (DL_FUNC)&wk_upside_gap_three_methods_batch, 7}, {"wk_upside_gap_three_methods_warmup_period", (DL_FUNC)&wk_upside_gap_three_methods_warmup_period, 1}, {"wk_upside_gap_three_methods_is_ready", (DL_FUNC)&wk_upside_gap_three_methods_is_ready, 1}, + {"wk_upside_gap_three_methods_name", (DL_FUNC)&wk_upside_gap_three_methods_name, 1}, {"wk_upside_gap_three_methods_reset", (DL_FUNC)&wk_upside_gap_three_methods_reset, 1}, {"wk_upside_gap_two_crows_new", (DL_FUNC)&wk_upside_gap_two_crows_new, 0}, {"wk_upside_gap_two_crows_update", (DL_FUNC)&wk_upside_gap_two_crows_update, 7}, {"wk_upside_gap_two_crows_batch", (DL_FUNC)&wk_upside_gap_two_crows_batch, 7}, {"wk_upside_gap_two_crows_warmup_period", (DL_FUNC)&wk_upside_gap_two_crows_warmup_period, 1}, {"wk_upside_gap_two_crows_is_ready", (DL_FUNC)&wk_upside_gap_two_crows_is_ready, 1}, + {"wk_upside_gap_two_crows_name", (DL_FUNC)&wk_upside_gap_two_crows_name, 1}, {"wk_upside_gap_two_crows_reset", (DL_FUNC)&wk_upside_gap_two_crows_reset, 1}, {"wk_upside_potential_ratio_new", (DL_FUNC)&wk_upside_potential_ratio_new, 2}, {"wk_upside_potential_ratio_update", (DL_FUNC)&wk_upside_potential_ratio_update, 2}, {"wk_upside_potential_ratio_batch", (DL_FUNC)&wk_upside_potential_ratio_batch, 2}, {"wk_upside_potential_ratio_warmup_period", (DL_FUNC)&wk_upside_potential_ratio_warmup_period, 1}, {"wk_upside_potential_ratio_is_ready", (DL_FUNC)&wk_upside_potential_ratio_is_ready, 1}, + {"wk_upside_potential_ratio_name", (DL_FUNC)&wk_upside_potential_ratio_name, 1}, {"wk_upside_potential_ratio_reset", (DL_FUNC)&wk_upside_potential_ratio_reset, 1}, {"wk_value_area_new", (DL_FUNC)&wk_value_area_new, 3}, {"wk_value_area_update", (DL_FUNC)&wk_value_area_update, 7}, {"wk_value_area_warmup_period", (DL_FUNC)&wk_value_area_warmup_period, 1}, {"wk_value_area_is_ready", (DL_FUNC)&wk_value_area_is_ready, 1}, + {"wk_value_area_name", (DL_FUNC)&wk_value_area_name, 1}, {"wk_value_area_reset", (DL_FUNC)&wk_value_area_reset, 1}, {"wk_value_at_risk_new", (DL_FUNC)&wk_value_at_risk_new, 2}, {"wk_value_at_risk_update", (DL_FUNC)&wk_value_at_risk_update, 2}, {"wk_value_at_risk_batch", (DL_FUNC)&wk_value_at_risk_batch, 2}, {"wk_value_at_risk_warmup_period", (DL_FUNC)&wk_value_at_risk_warmup_period, 1}, {"wk_value_at_risk_is_ready", (DL_FUNC)&wk_value_at_risk_is_ready, 1}, + {"wk_value_at_risk_name", (DL_FUNC)&wk_value_at_risk_name, 1}, {"wk_value_at_risk_reset", (DL_FUNC)&wk_value_at_risk_reset, 1}, {"wk_variance_new", (DL_FUNC)&wk_variance_new, 1}, {"wk_variance_update", (DL_FUNC)&wk_variance_update, 2}, {"wk_variance_batch", (DL_FUNC)&wk_variance_batch, 2}, {"wk_variance_warmup_period", (DL_FUNC)&wk_variance_warmup_period, 1}, {"wk_variance_is_ready", (DL_FUNC)&wk_variance_is_ready, 1}, + {"wk_variance_name", (DL_FUNC)&wk_variance_name, 1}, {"wk_variance_reset", (DL_FUNC)&wk_variance_reset, 1}, {"wk_variance_ratio_new", (DL_FUNC)&wk_variance_ratio_new, 2}, {"wk_variance_ratio_update", (DL_FUNC)&wk_variance_ratio_update, 3}, {"wk_variance_ratio_batch", (DL_FUNC)&wk_variance_ratio_batch, 3}, {"wk_variance_ratio_warmup_period", (DL_FUNC)&wk_variance_ratio_warmup_period, 1}, {"wk_variance_ratio_is_ready", (DL_FUNC)&wk_variance_ratio_is_ready, 1}, + {"wk_variance_ratio_name", (DL_FUNC)&wk_variance_ratio_name, 1}, {"wk_variance_ratio_reset", (DL_FUNC)&wk_variance_ratio_reset, 1}, {"wk_vertical_horizontal_filter_new", (DL_FUNC)&wk_vertical_horizontal_filter_new, 1}, {"wk_vertical_horizontal_filter_update", (DL_FUNC)&wk_vertical_horizontal_filter_update, 2}, {"wk_vertical_horizontal_filter_batch", (DL_FUNC)&wk_vertical_horizontal_filter_batch, 2}, {"wk_vertical_horizontal_filter_warmup_period", (DL_FUNC)&wk_vertical_horizontal_filter_warmup_period, 1}, {"wk_vertical_horizontal_filter_is_ready", (DL_FUNC)&wk_vertical_horizontal_filter_is_ready, 1}, + {"wk_vertical_horizontal_filter_name", (DL_FUNC)&wk_vertical_horizontal_filter_name, 1}, {"wk_vertical_horizontal_filter_reset", (DL_FUNC)&wk_vertical_horizontal_filter_reset, 1}, {"wk_vidya_new", (DL_FUNC)&wk_vidya_new, 2}, {"wk_vidya_update", (DL_FUNC)&wk_vidya_update, 2}, {"wk_vidya_batch", (DL_FUNC)&wk_vidya_batch, 2}, {"wk_vidya_warmup_period", (DL_FUNC)&wk_vidya_warmup_period, 1}, {"wk_vidya_is_ready", (DL_FUNC)&wk_vidya_is_ready, 1}, + {"wk_vidya_name", (DL_FUNC)&wk_vidya_name, 1}, {"wk_vidya_reset", (DL_FUNC)&wk_vidya_reset, 1}, {"wk_volatility_cone_new", (DL_FUNC)&wk_volatility_cone_new, 2}, {"wk_volatility_cone_update", (DL_FUNC)&wk_volatility_cone_update, 7}, {"wk_volatility_cone_warmup_period", (DL_FUNC)&wk_volatility_cone_warmup_period, 1}, {"wk_volatility_cone_is_ready", (DL_FUNC)&wk_volatility_cone_is_ready, 1}, + {"wk_volatility_cone_name", (DL_FUNC)&wk_volatility_cone_name, 1}, {"wk_volatility_cone_reset", (DL_FUNC)&wk_volatility_cone_reset, 1}, {"wk_volatility_of_volatility_new", (DL_FUNC)&wk_volatility_of_volatility_new, 2}, {"wk_volatility_of_volatility_update", (DL_FUNC)&wk_volatility_of_volatility_update, 2}, {"wk_volatility_of_volatility_batch", (DL_FUNC)&wk_volatility_of_volatility_batch, 2}, {"wk_volatility_of_volatility_warmup_period", (DL_FUNC)&wk_volatility_of_volatility_warmup_period, 1}, {"wk_volatility_of_volatility_is_ready", (DL_FUNC)&wk_volatility_of_volatility_is_ready, 1}, + {"wk_volatility_of_volatility_name", (DL_FUNC)&wk_volatility_of_volatility_name, 1}, {"wk_volatility_of_volatility_reset", (DL_FUNC)&wk_volatility_of_volatility_reset, 1}, {"wk_volatility_ratio_new", (DL_FUNC)&wk_volatility_ratio_new, 1}, {"wk_volatility_ratio_update", (DL_FUNC)&wk_volatility_ratio_update, 7}, {"wk_volatility_ratio_batch", (DL_FUNC)&wk_volatility_ratio_batch, 7}, {"wk_volatility_ratio_warmup_period", (DL_FUNC)&wk_volatility_ratio_warmup_period, 1}, {"wk_volatility_ratio_is_ready", (DL_FUNC)&wk_volatility_ratio_is_ready, 1}, + {"wk_volatility_ratio_name", (DL_FUNC)&wk_volatility_ratio_name, 1}, {"wk_volatility_ratio_reset", (DL_FUNC)&wk_volatility_ratio_reset, 1}, {"wk_volty_stop_new", (DL_FUNC)&wk_volty_stop_new, 2}, {"wk_volty_stop_update", (DL_FUNC)&wk_volty_stop_update, 7}, {"wk_volty_stop_batch", (DL_FUNC)&wk_volty_stop_batch, 7}, {"wk_volty_stop_warmup_period", (DL_FUNC)&wk_volty_stop_warmup_period, 1}, {"wk_volty_stop_is_ready", (DL_FUNC)&wk_volty_stop_is_ready, 1}, + {"wk_volty_stop_name", (DL_FUNC)&wk_volty_stop_name, 1}, {"wk_volty_stop_reset", (DL_FUNC)&wk_volty_stop_reset, 1}, {"wk_volume_bars_new", (DL_FUNC)&wk_volume_bars_new, 1}, {"wk_volume_bars_update", (DL_FUNC)&wk_volume_bars_update, 7}, + {"wk_volume_bars_name", (DL_FUNC)&wk_volume_bars_name, 1}, {"wk_volume_bars_reset", (DL_FUNC)&wk_volume_bars_reset, 1}, {"wk_volume_by_time_profile_new", (DL_FUNC)&wk_volume_by_time_profile_new, 2}, {"wk_volume_by_time_profile_update", (DL_FUNC)&wk_volume_by_time_profile_update, 8}, {"wk_volume_by_time_profile_warmup_period", (DL_FUNC)&wk_volume_by_time_profile_warmup_period, 1}, {"wk_volume_by_time_profile_is_ready", (DL_FUNC)&wk_volume_by_time_profile_is_ready, 1}, + {"wk_volume_by_time_profile_name", (DL_FUNC)&wk_volume_by_time_profile_name, 1}, {"wk_volume_by_time_profile_reset", (DL_FUNC)&wk_volume_by_time_profile_reset, 1}, {"wk_volume_oscillator_new", (DL_FUNC)&wk_volume_oscillator_new, 2}, {"wk_volume_oscillator_update", (DL_FUNC)&wk_volume_oscillator_update, 7}, {"wk_volume_oscillator_batch", (DL_FUNC)&wk_volume_oscillator_batch, 7}, {"wk_volume_oscillator_warmup_period", (DL_FUNC)&wk_volume_oscillator_warmup_period, 1}, {"wk_volume_oscillator_is_ready", (DL_FUNC)&wk_volume_oscillator_is_ready, 1}, + {"wk_volume_oscillator_name", (DL_FUNC)&wk_volume_oscillator_name, 1}, {"wk_volume_oscillator_reset", (DL_FUNC)&wk_volume_oscillator_reset, 1}, {"wk_volume_price_trend_new", (DL_FUNC)&wk_volume_price_trend_new, 0}, {"wk_volume_price_trend_update", (DL_FUNC)&wk_volume_price_trend_update, 7}, {"wk_volume_price_trend_batch", (DL_FUNC)&wk_volume_price_trend_batch, 7}, {"wk_volume_price_trend_warmup_period", (DL_FUNC)&wk_volume_price_trend_warmup_period, 1}, {"wk_volume_price_trend_is_ready", (DL_FUNC)&wk_volume_price_trend_is_ready, 1}, + {"wk_volume_price_trend_name", (DL_FUNC)&wk_volume_price_trend_name, 1}, {"wk_volume_price_trend_reset", (DL_FUNC)&wk_volume_price_trend_reset, 1}, {"wk_volume_profile_new", (DL_FUNC)&wk_volume_profile_new, 2}, {"wk_volume_profile_update", (DL_FUNC)&wk_volume_profile_update, 8}, {"wk_volume_profile_warmup_period", (DL_FUNC)&wk_volume_profile_warmup_period, 1}, {"wk_volume_profile_is_ready", (DL_FUNC)&wk_volume_profile_is_ready, 1}, + {"wk_volume_profile_name", (DL_FUNC)&wk_volume_profile_name, 1}, {"wk_volume_profile_reset", (DL_FUNC)&wk_volume_profile_reset, 1}, {"wk_volume_rsi_new", (DL_FUNC)&wk_volume_rsi_new, 1}, {"wk_volume_rsi_update", (DL_FUNC)&wk_volume_rsi_update, 7}, {"wk_volume_rsi_batch", (DL_FUNC)&wk_volume_rsi_batch, 7}, {"wk_volume_rsi_warmup_period", (DL_FUNC)&wk_volume_rsi_warmup_period, 1}, {"wk_volume_rsi_is_ready", (DL_FUNC)&wk_volume_rsi_is_ready, 1}, + {"wk_volume_rsi_name", (DL_FUNC)&wk_volume_rsi_name, 1}, {"wk_volume_rsi_reset", (DL_FUNC)&wk_volume_rsi_reset, 1}, {"wk_volume_weighted_macd_new", (DL_FUNC)&wk_volume_weighted_macd_new, 3}, {"wk_volume_weighted_macd_update", (DL_FUNC)&wk_volume_weighted_macd_update, 7}, {"wk_volume_weighted_macd_warmup_period", (DL_FUNC)&wk_volume_weighted_macd_warmup_period, 1}, {"wk_volume_weighted_macd_is_ready", (DL_FUNC)&wk_volume_weighted_macd_is_ready, 1}, + {"wk_volume_weighted_macd_name", (DL_FUNC)&wk_volume_weighted_macd_name, 1}, {"wk_volume_weighted_macd_reset", (DL_FUNC)&wk_volume_weighted_macd_reset, 1}, {"wk_volume_weighted_sr_new", (DL_FUNC)&wk_volume_weighted_sr_new, 1}, {"wk_volume_weighted_sr_update", (DL_FUNC)&wk_volume_weighted_sr_update, 7}, {"wk_volume_weighted_sr_warmup_period", (DL_FUNC)&wk_volume_weighted_sr_warmup_period, 1}, {"wk_volume_weighted_sr_is_ready", (DL_FUNC)&wk_volume_weighted_sr_is_ready, 1}, + {"wk_volume_weighted_sr_name", (DL_FUNC)&wk_volume_weighted_sr_name, 1}, {"wk_volume_weighted_sr_reset", (DL_FUNC)&wk_volume_weighted_sr_reset, 1}, {"wk_vortex_new", (DL_FUNC)&wk_vortex_new, 1}, {"wk_vortex_update", (DL_FUNC)&wk_vortex_update, 7}, {"wk_vortex_warmup_period", (DL_FUNC)&wk_vortex_warmup_period, 1}, {"wk_vortex_is_ready", (DL_FUNC)&wk_vortex_is_ready, 1}, + {"wk_vortex_name", (DL_FUNC)&wk_vortex_name, 1}, {"wk_vortex_reset", (DL_FUNC)&wk_vortex_reset, 1}, {"wk_vpin_new", (DL_FUNC)&wk_vpin_new, 2}, {"wk_vpin_update", (DL_FUNC)&wk_vpin_update, 5}, {"wk_vpin_warmup_period", (DL_FUNC)&wk_vpin_warmup_period, 1}, {"wk_vpin_is_ready", (DL_FUNC)&wk_vpin_is_ready, 1}, + {"wk_vpin_name", (DL_FUNC)&wk_vpin_name, 1}, {"wk_vpin_reset", (DL_FUNC)&wk_vpin_reset, 1}, {"wk_vwap_new", (DL_FUNC)&wk_vwap_new, 0}, {"wk_vwap_update", (DL_FUNC)&wk_vwap_update, 7}, {"wk_vwap_batch", (DL_FUNC)&wk_vwap_batch, 7}, {"wk_vwap_warmup_period", (DL_FUNC)&wk_vwap_warmup_period, 1}, {"wk_vwap_is_ready", (DL_FUNC)&wk_vwap_is_ready, 1}, + {"wk_vwap_name", (DL_FUNC)&wk_vwap_name, 1}, {"wk_vwap_reset", (DL_FUNC)&wk_vwap_reset, 1}, {"wk_vwap_std_dev_bands_new", (DL_FUNC)&wk_vwap_std_dev_bands_new, 1}, {"wk_vwap_std_dev_bands_update", (DL_FUNC)&wk_vwap_std_dev_bands_update, 7}, {"wk_vwap_std_dev_bands_warmup_period", (DL_FUNC)&wk_vwap_std_dev_bands_warmup_period, 1}, {"wk_vwap_std_dev_bands_is_ready", (DL_FUNC)&wk_vwap_std_dev_bands_is_ready, 1}, + {"wk_vwap_std_dev_bands_name", (DL_FUNC)&wk_vwap_std_dev_bands_name, 1}, {"wk_vwap_std_dev_bands_reset", (DL_FUNC)&wk_vwap_std_dev_bands_reset, 1}, {"wk_vwma_new", (DL_FUNC)&wk_vwma_new, 1}, {"wk_vwma_update", (DL_FUNC)&wk_vwma_update, 7}, {"wk_vwma_batch", (DL_FUNC)&wk_vwma_batch, 7}, {"wk_vwma_warmup_period", (DL_FUNC)&wk_vwma_warmup_period, 1}, {"wk_vwma_is_ready", (DL_FUNC)&wk_vwma_is_ready, 1}, + {"wk_vwma_name", (DL_FUNC)&wk_vwma_name, 1}, {"wk_vwma_reset", (DL_FUNC)&wk_vwma_reset, 1}, {"wk_vzo_new", (DL_FUNC)&wk_vzo_new, 1}, {"wk_vzo_update", (DL_FUNC)&wk_vzo_update, 7}, {"wk_vzo_batch", (DL_FUNC)&wk_vzo_batch, 7}, {"wk_vzo_warmup_period", (DL_FUNC)&wk_vzo_warmup_period, 1}, {"wk_vzo_is_ready", (DL_FUNC)&wk_vzo_is_ready, 1}, + {"wk_vzo_name", (DL_FUNC)&wk_vzo_name, 1}, {"wk_vzo_reset", (DL_FUNC)&wk_vzo_reset, 1}, {"wk_wad_new", (DL_FUNC)&wk_wad_new, 0}, {"wk_wad_update", (DL_FUNC)&wk_wad_update, 7}, {"wk_wad_batch", (DL_FUNC)&wk_wad_batch, 7}, {"wk_wad_warmup_period", (DL_FUNC)&wk_wad_warmup_period, 1}, {"wk_wad_is_ready", (DL_FUNC)&wk_wad_is_ready, 1}, + {"wk_wad_name", (DL_FUNC)&wk_wad_name, 1}, {"wk_wad_reset", (DL_FUNC)&wk_wad_reset, 1}, {"wk_wave_pm_new", (DL_FUNC)&wk_wave_pm_new, 2}, {"wk_wave_pm_update", (DL_FUNC)&wk_wave_pm_update, 2}, {"wk_wave_pm_batch", (DL_FUNC)&wk_wave_pm_batch, 2}, {"wk_wave_pm_warmup_period", (DL_FUNC)&wk_wave_pm_warmup_period, 1}, {"wk_wave_pm_is_ready", (DL_FUNC)&wk_wave_pm_is_ready, 1}, + {"wk_wave_pm_name", (DL_FUNC)&wk_wave_pm_name, 1}, {"wk_wave_pm_reset", (DL_FUNC)&wk_wave_pm_reset, 1}, {"wk_wave_trend_new", (DL_FUNC)&wk_wave_trend_new, 3}, {"wk_wave_trend_update", (DL_FUNC)&wk_wave_trend_update, 7}, {"wk_wave_trend_warmup_period", (DL_FUNC)&wk_wave_trend_warmup_period, 1}, {"wk_wave_trend_is_ready", (DL_FUNC)&wk_wave_trend_is_ready, 1}, + {"wk_wave_trend_name", (DL_FUNC)&wk_wave_trend_name, 1}, {"wk_wave_trend_reset", (DL_FUNC)&wk_wave_trend_reset, 1}, {"wk_wedge_new", (DL_FUNC)&wk_wedge_new, 0}, {"wk_wedge_update", (DL_FUNC)&wk_wedge_update, 7}, {"wk_wedge_batch", (DL_FUNC)&wk_wedge_batch, 7}, {"wk_wedge_warmup_period", (DL_FUNC)&wk_wedge_warmup_period, 1}, {"wk_wedge_is_ready", (DL_FUNC)&wk_wedge_is_ready, 1}, + {"wk_wedge_name", (DL_FUNC)&wk_wedge_name, 1}, {"wk_wedge_reset", (DL_FUNC)&wk_wedge_reset, 1}, {"wk_weighted_close_new", (DL_FUNC)&wk_weighted_close_new, 0}, {"wk_weighted_close_update", (DL_FUNC)&wk_weighted_close_update, 7}, {"wk_weighted_close_batch", (DL_FUNC)&wk_weighted_close_batch, 7}, {"wk_weighted_close_warmup_period", (DL_FUNC)&wk_weighted_close_warmup_period, 1}, {"wk_weighted_close_is_ready", (DL_FUNC)&wk_weighted_close_is_ready, 1}, + {"wk_weighted_close_name", (DL_FUNC)&wk_weighted_close_name, 1}, {"wk_weighted_close_reset", (DL_FUNC)&wk_weighted_close_reset, 1}, {"wk_wick_ratio_new", (DL_FUNC)&wk_wick_ratio_new, 0}, {"wk_wick_ratio_update", (DL_FUNC)&wk_wick_ratio_update, 7}, {"wk_wick_ratio_batch", (DL_FUNC)&wk_wick_ratio_batch, 7}, {"wk_wick_ratio_warmup_period", (DL_FUNC)&wk_wick_ratio_warmup_period, 1}, {"wk_wick_ratio_is_ready", (DL_FUNC)&wk_wick_ratio_is_ready, 1}, + {"wk_wick_ratio_name", (DL_FUNC)&wk_wick_ratio_name, 1}, {"wk_wick_ratio_reset", (DL_FUNC)&wk_wick_ratio_reset, 1}, {"wk_williams_fractals_new", (DL_FUNC)&wk_williams_fractals_new, 0}, {"wk_williams_fractals_update", (DL_FUNC)&wk_williams_fractals_update, 7}, {"wk_williams_fractals_warmup_period", (DL_FUNC)&wk_williams_fractals_warmup_period, 1}, {"wk_williams_fractals_is_ready", (DL_FUNC)&wk_williams_fractals_is_ready, 1}, + {"wk_williams_fractals_name", (DL_FUNC)&wk_williams_fractals_name, 1}, {"wk_williams_fractals_reset", (DL_FUNC)&wk_williams_fractals_reset, 1}, {"wk_williams_r_new", (DL_FUNC)&wk_williams_r_new, 1}, {"wk_williams_r_update", (DL_FUNC)&wk_williams_r_update, 7}, {"wk_williams_r_batch", (DL_FUNC)&wk_williams_r_batch, 7}, {"wk_williams_r_warmup_period", (DL_FUNC)&wk_williams_r_warmup_period, 1}, {"wk_williams_r_is_ready", (DL_FUNC)&wk_williams_r_is_ready, 1}, + {"wk_williams_r_name", (DL_FUNC)&wk_williams_r_name, 1}, {"wk_williams_r_reset", (DL_FUNC)&wk_williams_r_reset, 1}, {"wk_win_rate_new", (DL_FUNC)&wk_win_rate_new, 1}, {"wk_win_rate_update", (DL_FUNC)&wk_win_rate_update, 2}, {"wk_win_rate_batch", (DL_FUNC)&wk_win_rate_batch, 2}, {"wk_win_rate_warmup_period", (DL_FUNC)&wk_win_rate_warmup_period, 1}, {"wk_win_rate_is_ready", (DL_FUNC)&wk_win_rate_is_ready, 1}, + {"wk_win_rate_name", (DL_FUNC)&wk_win_rate_name, 1}, {"wk_win_rate_reset", (DL_FUNC)&wk_win_rate_reset, 1}, {"wk_wma_new", (DL_FUNC)&wk_wma_new, 1}, {"wk_wma_update", (DL_FUNC)&wk_wma_update, 2}, {"wk_wma_batch", (DL_FUNC)&wk_wma_batch, 2}, {"wk_wma_warmup_period", (DL_FUNC)&wk_wma_warmup_period, 1}, {"wk_wma_is_ready", (DL_FUNC)&wk_wma_is_ready, 1}, + {"wk_wma_name", (DL_FUNC)&wk_wma_name, 1}, {"wk_wma_reset", (DL_FUNC)&wk_wma_reset, 1}, {"wk_woodie_pivots_new", (DL_FUNC)&wk_woodie_pivots_new, 0}, {"wk_woodie_pivots_update", (DL_FUNC)&wk_woodie_pivots_update, 7}, {"wk_woodie_pivots_warmup_period", (DL_FUNC)&wk_woodie_pivots_warmup_period, 1}, {"wk_woodie_pivots_is_ready", (DL_FUNC)&wk_woodie_pivots_is_ready, 1}, + {"wk_woodie_pivots_name", (DL_FUNC)&wk_woodie_pivots_name, 1}, {"wk_woodie_pivots_reset", (DL_FUNC)&wk_woodie_pivots_reset, 1}, {"wk_yang_zhang_volatility_new", (DL_FUNC)&wk_yang_zhang_volatility_new, 2}, {"wk_yang_zhang_volatility_update", (DL_FUNC)&wk_yang_zhang_volatility_update, 7}, {"wk_yang_zhang_volatility_batch", (DL_FUNC)&wk_yang_zhang_volatility_batch, 7}, {"wk_yang_zhang_volatility_warmup_period", (DL_FUNC)&wk_yang_zhang_volatility_warmup_period, 1}, {"wk_yang_zhang_volatility_is_ready", (DL_FUNC)&wk_yang_zhang_volatility_is_ready, 1}, + {"wk_yang_zhang_volatility_name", (DL_FUNC)&wk_yang_zhang_volatility_name, 1}, {"wk_yang_zhang_volatility_reset", (DL_FUNC)&wk_yang_zhang_volatility_reset, 1}, {"wk_yoyo_exit_new", (DL_FUNC)&wk_yoyo_exit_new, 2}, {"wk_yoyo_exit_update", (DL_FUNC)&wk_yoyo_exit_update, 7}, {"wk_yoyo_exit_batch", (DL_FUNC)&wk_yoyo_exit_batch, 7}, {"wk_yoyo_exit_warmup_period", (DL_FUNC)&wk_yoyo_exit_warmup_period, 1}, {"wk_yoyo_exit_is_ready", (DL_FUNC)&wk_yoyo_exit_is_ready, 1}, + {"wk_yoyo_exit_name", (DL_FUNC)&wk_yoyo_exit_name, 1}, {"wk_yoyo_exit_reset", (DL_FUNC)&wk_yoyo_exit_reset, 1}, {"wk_z_score_new", (DL_FUNC)&wk_z_score_new, 1}, {"wk_z_score_update", (DL_FUNC)&wk_z_score_update, 2}, {"wk_z_score_batch", (DL_FUNC)&wk_z_score_batch, 2}, {"wk_z_score_warmup_period", (DL_FUNC)&wk_z_score_warmup_period, 1}, {"wk_z_score_is_ready", (DL_FUNC)&wk_z_score_is_ready, 1}, + {"wk_z_score_name", (DL_FUNC)&wk_z_score_name, 1}, {"wk_z_score_reset", (DL_FUNC)&wk_z_score_reset, 1}, {"wk_zero_lag_macd_new", (DL_FUNC)&wk_zero_lag_macd_new, 3}, {"wk_zero_lag_macd_update", (DL_FUNC)&wk_zero_lag_macd_update, 2}, {"wk_zero_lag_macd_warmup_period", (DL_FUNC)&wk_zero_lag_macd_warmup_period, 1}, {"wk_zero_lag_macd_is_ready", (DL_FUNC)&wk_zero_lag_macd_is_ready, 1}, + {"wk_zero_lag_macd_name", (DL_FUNC)&wk_zero_lag_macd_name, 1}, {"wk_zero_lag_macd_reset", (DL_FUNC)&wk_zero_lag_macd_reset, 1}, {"wk_zig_zag_new", (DL_FUNC)&wk_zig_zag_new, 1}, {"wk_zig_zag_update", (DL_FUNC)&wk_zig_zag_update, 7}, {"wk_zig_zag_warmup_period", (DL_FUNC)&wk_zig_zag_warmup_period, 1}, {"wk_zig_zag_is_ready", (DL_FUNC)&wk_zig_zag_is_ready, 1}, + {"wk_zig_zag_name", (DL_FUNC)&wk_zig_zag_name, 1}, {"wk_zig_zag_reset", (DL_FUNC)&wk_zig_zag_reset, 1}, {"wk_zlema_new", (DL_FUNC)&wk_zlema_new, 1}, {"wk_zlema_update", (DL_FUNC)&wk_zlema_update, 2}, {"wk_zlema_batch", (DL_FUNC)&wk_zlema_batch, 2}, {"wk_zlema_warmup_period", (DL_FUNC)&wk_zlema_warmup_period, 1}, {"wk_zlema_is_ready", (DL_FUNC)&wk_zlema_is_ready, 1}, + {"wk_zlema_name", (DL_FUNC)&wk_zlema_name, 1}, {"wk_zlema_reset", (DL_FUNC)&wk_zlema_reset, 1}, {NULL, NULL, 0} }; diff --git a/bindings/r/tests/testthat/golden_specs.R b/bindings/r/tests/testthat/golden_specs.R index 4bf05c8c..7c258b1a 100644 --- a/bindings/r/tests/testthat/golden_specs.R +++ b/bindings/r/tests/testthat/golden_specs.R @@ -1,518 +1,518 @@ # Code generated by gen_golden_test.py. DO NOT EDIT. -# Per-indicator golden spec: canonical name, archetype, ctor params, output width. +# Per-indicator golden spec: canonical name, archetype, ctor params, output width, core name. GOLDEN_SPECS <- list( - list(canon="AbandonedBaby", arch="scalar_candle", params=c(), width=0L), - list(canon="Abcd", arch="scalar_candle", params=c(), width=0L), - list(canon="AbsoluteBreadthIndex", arch="cross", params=c(), width=0L), - list(canon="AccelerationBands", arch="multi_candle", params=c(14.0,2.0), width=3L), - list(canon="AcceleratorOscillator", arch="scalar_candle", params=c(3.0,7.0,14.0), width=0L), - list(canon="AdOscillator", arch="scalar_candle", params=c(), width=0L), - list(canon="AdVolumeLine", arch="cross", params=c(), width=0L), - list(canon="AdaptiveCci", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="AdaptiveCycle", arch="scalar_f64", params=c(), width=0L), - list(canon="AdaptiveLaguerreFilter", arch="scalar_f64", params=c(20.0), width=0L), - list(canon="AdaptiveRsi", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Adl", arch="scalar_candle", params=c(), width=0L), - list(canon="AdvanceBlock", arch="scalar_candle", params=c(), width=0L), - list(canon="AdvanceDecline", arch="cross", params=c(), width=0L), - list(canon="AdvanceDeclineRatio", arch="cross", params=c(), width=0L), - list(canon="Adx", arch="multi_candle", params=c(14.0), width=3L), - list(canon="Adxr", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="Alligator", arch="multi_candle", params=c(3.0,7.0,14.0), width=3L), - list(canon="Alma", arch="scalar_f64", params=c(9.0,0.85,6.0), width=0L), - list(canon="Alpha", arch="pairwise", params=c(14.0,2.0), width=0L), - list(canon="AmihudIlliquidity", arch="trade", params=c(20.0), width=0L), - list(canon="AnchoredRsi", arch="scalar_f64", params=c(), width=0L), - list(canon="AnchoredVwap", arch="scalar_candle", params=c(), width=0L), - list(canon="AndrewsPitchfork", arch="multi_candle", params=c(14.0), width=3L), - list(canon="Apo", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="Aroon", arch="multi_candle", params=c(14.0), width=2L), - list(canon="AroonOscillator", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="Atr", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="AtrBands", arch="multi_candle", params=c(14.0,2.0), width=3L), - list(canon="AtrRatchet", arch="multi_candle", params=c(14.0,2.0,0.5), width=2L), - list(canon="AtrTrailingStop", arch="scalar_candle", params=c(14.0,2.0), width=0L), - list(canon="AutoFib", arch="multi_candle", params=c(), width=7L), - list(canon="Autocorrelation", arch="scalar_f64", params=c(10.0,1.0), width=0L), - list(canon="AutocorrelationPeriodogram", arch="scalar_f64", params=c(10.0,48.0), width=0L), - list(canon="AverageDailyRange", arch="scalar_candle", params=c(14.0,0.0), width=0L), - list(canon="AverageDrawdown", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="AvgPrice", arch="scalar_candle", params=c(), width=0L), - list(canon="AwesomeOscillator", arch="scalar_candle", params=c(3.0,7.0), width=0L), - list(canon="AwesomeOscillatorHistogram", arch="scalar_candle", params=c(3.0,7.0,14.0), width=0L), - list(canon="BalanceOfPower", arch="scalar_candle", params=c(), width=0L), - list(canon="BandpassFilter", arch="scalar_f64", params=c(20.0,0.3), width=0L), - list(canon="Bat", arch="scalar_candle", params=c(), width=0L), - list(canon="BeltHold", arch="scalar_candle", params=c(), width=0L), - list(canon="Beta", arch="pairwise", params=c(14.0), width=0L), - list(canon="BetaNeutralSpread", arch="pairwise", params=c(14.0), width=0L), - list(canon="BetterVolume", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="BipowerVariation", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="BodySizePct", arch="scalar_candle", params=c(), width=0L), - list(canon="BollingerBands", arch="multi_f64", params=c(20.0,2.0), width=4L), - list(canon="BollingerBandwidth", arch="scalar_f64", params=c(14.0,2.0), width=0L), - list(canon="BomarBands", arch="multi_f64", params=c(4.0,0.85), width=3L), - list(canon="BreadthThrust", arch="cross", params=c(10.0), width=0L), - list(canon="Breakaway", arch="scalar_candle", params=c(), width=0L), - list(canon="BullishPercentIndex", arch="cross", params=c(), width=0L), - list(canon="BurkeRatio", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Butterfly", arch="scalar_candle", params=c(), width=0L), - list(canon="CalendarSpread", arch="deriv", params=c(), width=0L), - list(canon="CalmarRatio", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Camarilla", arch="multi_candle", params=c(), width=9L), - list(canon="CandleVolume", arch="multi_candle", params=c(14.0), width=2L), - list(canon="Cci", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="CenterOfGravity", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="CentralPivotRange", arch="multi_candle", params=c(), width=3L), - list(canon="Cfo", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="ChaikinMoneyFlow", arch="scalar_candle", params=c(20.0), width=0L), - list(canon="ChaikinOscillator", arch="scalar_candle", params=c(3.0,7.0), width=0L), - list(canon="ChaikinVolatility", arch="scalar_candle", params=c(3.0,7.0), width=0L), - list(canon="ChandeKrollStop", arch="multi_candle", params=c(3.0,2.0,7.0), width=2L), - list(canon="ChandelierExit", arch="multi_candle", params=c(14.0,2.0), width=2L), - list(canon="ChoppinessIndex", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="ClassicPivots", arch="multi_candle", params=c(), width=7L), - list(canon="CloseVsOpen", arch="scalar_candle", params=c(), width=0L), - list(canon="ClosingMarubozu", arch="scalar_candle", params=c(), width=0L), - list(canon="Cmo", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="CoefficientOfVariation", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Cointegration", arch="multi_pairwise", params=c(40.0,1.0), width=3L), - list(canon="CommonSenseRatio", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="CompositeProfile", arch="multi_candle", params=c(20.0,24.0,0.7), width=3L), - list(canon="ConcealingBabySwallow", arch="scalar_candle", params=c(), width=0L), - list(canon="ConditionalValueAtRisk", arch="scalar_f64", params=c(20.0,0.95), width=0L), - list(canon="ConnorsRsi", arch="scalar_f64", params=c(3.0,7.0,14.0), width=0L), - list(canon="Coppock", arch="scalar_f64", params=c(3.0,7.0,14.0), width=0L), - list(canon="CorrelationTrendIndicator", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Counterattack", arch="scalar_candle", params=c(), width=0L), - list(canon="Crab", arch="scalar_candle", params=c(), width=0L), - list(canon="CumulativeVolumeDelta", arch="trade", params=c(), width=0L), - list(canon="CumulativeVolumeIndex", arch="cross", params=c(), width=0L), - list(canon="CupAndHandle", arch="scalar_candle", params=c(), width=0L), - list(canon="CyberneticCycle", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Cypher", arch="scalar_candle", params=c(), width=0L), - list(canon="DayOfWeekProfile", arch="profile_bins", params=c(0.0), width=7L), - list(canon="Decycler", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="DecyclerOscillator", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="Dema", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="DemandIndex", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="DemarkPivots", arch="multi_candle", params=c(), width=3L), - list(canon="DepthSlope", arch="ob", params=c(), width=0L), - list(canon="DerivativeOscillator", arch="scalar_f64", params=c(3.0,7.0,14.0,28.0), width=0L), - list(canon="DetrendedStdDev", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="DisparityIndex", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="DistanceSsd", arch="pairwise", params=c(14.0), width=0L), - list(canon="Doji", arch="scalar_candle", params=c(), width=0L), - list(canon="DojiStar", arch="scalar_candle", params=c(), width=0L), - list(canon="DollarBars", arch="bars_candle5", params=c(50000.0), width=0L), - list(canon="Donchian", arch="multi_candle", params=c(14.0), width=3L), - list(canon="DonchianStop", arch="multi_candle", params=c(14.0), width=2L), - list(canon="DoubleBollinger", arch="multi_f64", params=c(20.0,1.0,2.0), width=5L), - list(canon="DoubleTopBottom", arch="scalar_candle", params=c(), width=0L), - list(canon="DownsideGapThreeMethods", arch="scalar_candle", params=c(), width=0L), - list(canon="Dpo", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="DragonflyDoji", arch="scalar_candle", params=c(), width=0L), - list(canon="DrawdownDuration", arch="scalar_f64", params=c(), width=0L), - list(canon="DumplingTop", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="Dx", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="DynamicMomentumIndex", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="EaseOfMovement", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="EffectiveSpread", arch="trademid", params=c(), width=0L), - list(canon="EhlersStochastic", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Ehma", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="ElderImpulse", arch="scalar_f64", params=c(3.0,7.0,14.0,28.0), width=0L), - list(canon="ElderRay", arch="multi_candle", params=c(14.0), width=2L), - list(canon="ElderSafeZone", arch="multi_candle", params=c(10.0,2.0), width=2L), - list(canon="Ema", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="EmpiricalModeDecomposition", arch="scalar_f64", params=c(20.0,0.1), width=0L), - list(canon="Engulfing", arch="scalar_candle", params=c(), width=0L), - list(canon="Equivolume", arch="multi_candle", params=c(14.0), width=2L), - list(canon="EstimatedLeverageRatio", arch="deriv", params=c(), width=0L), - list(canon="EvenBetterSinewave", arch="scalar_f64", params=c(40.0,10.0), width=0L), - list(canon="EveningDojiStar", arch="scalar_candle", params=c(), width=0L), - list(canon="Evwma", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="EwmaVolatility", arch="scalar_f64", params=c(0.94), width=0L), - list(canon="Expectancy", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="FallingThreeMethods", arch="scalar_candle", params=c(), width=0L), - list(canon="Fama", arch="scalar_f64", params=c(0.5,0.05), width=0L), - list(canon="FibArcs", arch="multi_candle", params=c(), width=3L), - list(canon="FibChannel", arch="multi_candle", params=c(), width=4L), - list(canon="FibConfluence", arch="multi_candle", params=c(), width=2L), - list(canon="FibExtension", arch="multi_candle", params=c(), width=5L), - list(canon="FibFan", arch="multi_candle", params=c(), width=3L), - list(canon="FibProjection", arch="multi_candle", params=c(), width=4L), - list(canon="FibRetracement", arch="multi_candle", params=c(), width=7L), - list(canon="FibTimeZones", arch="multi_candle", params=c(), width=2L), - list(canon="FibonacciPivots", arch="multi_candle", params=c(), width=7L), - list(canon="FisherRsi", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="FisherTransform", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="FlagPennant", arch="scalar_candle", params=c(), width=0L), - list(canon="Footprint", arch="footprint", params=c(1.0), width=0L), - list(canon="ForceIndex", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="FractalChaosBands", arch="multi_candle", params=c(14.0), width=2L), - list(canon="Frama", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="FryPanBottom", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="FundingBasis", arch="deriv", params=c(), width=0L), - list(canon="FundingImpliedApr", arch="deriv", params=c(1095.0), width=0L), - list(canon="FundingRate", arch="deriv", params=c(), width=0L), - list(canon="FundingRateMean", arch="deriv", params=c(20.0), width=0L), - list(canon="FundingRateZScore", arch="deriv", params=c(20.0), width=0L), - list(canon="GainLossRatio", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="GainToPainRatio", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="GapSideBySideWhite", arch="scalar_candle", params=c(), width=0L), - list(canon="Garch11", arch="scalar_f64", params=c(2e-06,0.1,0.88), width=0L), - list(canon="GarmanKlassVolatility", arch="scalar_candle", params=c(20.0,252.0), width=0L), - list(canon="Gartley", arch="scalar_candle", params=c(), width=0L), - list(canon="GatorOscillator", arch="multi_candle", params=c(3.0,7.0,14.0), width=2L), - list(canon="GeneralizedDema", arch="scalar_f64", params=c(5.0,0.7), width=0L), - list(canon="GeometricMa", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="GoldenPocket", arch="multi_candle", params=c(), width=3L), - list(canon="GrangerCausality", arch="pairwise", params=c(60.0,1.0), width=0L), - list(canon="GravestoneDoji", arch="scalar_candle", params=c(), width=0L), - list(canon="Hammer", arch="scalar_candle", params=c(), width=0L), - list(canon="HangingMan", arch="scalar_candle", params=c(), width=0L), - list(canon="Harami", arch="scalar_candle", params=c(), width=0L), - list(canon="HaramiCross", arch="scalar_candle", params=c(), width=0L), - list(canon="HasbrouckInformationShare", arch="pairwise", params=c(14.0), width=0L), - list(canon="HeadAndShoulders", arch="scalar_candle", params=c(), width=0L), - list(canon="HeikinAshi", arch="multi_candle", params=c(), width=4L), - list(canon="HeikinAshiOscillator", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="HiLoActivator", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="HighLowIndex", arch="cross", params=c(10.0), width=0L), - list(canon="HighLowRange", arch="scalar_candle", params=c(), width=0L), - list(canon="HighLowVolumeNodes", arch="multi_candle", params=c(3.0,7.0), width=2L), - list(canon="HighWave", arch="scalar_candle", params=c(), width=0L), - list(canon="HighpassFilter", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Hikkake", arch="scalar_candle", params=c(), width=0L), - list(canon="HikkakeModified", arch="scalar_candle", params=c(), width=0L), - list(canon="HilbertDominantCycle", arch="scalar_f64", params=c(), width=0L), - list(canon="HistoricalVolatility", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="Hma", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="HoltWinters", arch="scalar_f64", params=c(0.5,0.1), width=0L), - list(canon="HomingPigeon", arch="scalar_candle", params=c(), width=0L), - list(canon="HtDcPhase", arch="scalar_f64", params=c(), width=0L), - list(canon="HtPhasor", arch="multi_f64", params=c(), width=2L), - list(canon="HtTrendMode", arch="scalar_f64", params=c(), width=0L), - list(canon="HurstChannel", arch="multi_candle", params=c(14.0,2.0), width=3L), - list(canon="HurstExponent", arch="scalar_f64", params=c(100.0,4.0), width=0L), - list(canon="Ichimoku", arch="multi_candle", params=c(9.0,26.0,52.0,26.0), width=5L), - list(canon="IdenticalThreeCrows", arch="scalar_candle", params=c(), width=0L), - list(canon="ImbalanceBars", arch="bars_candle4", params=c(5.0), width=0L), - list(canon="InNeck", arch="scalar_candle", params=c(), width=0L), - list(canon="Inertia", arch="scalar_candle", params=c(3.0,7.0), width=0L), - list(canon="InformationRatio", arch="pairwise", params=c(14.0), width=0L), - list(canon="InitialBalance", arch="multi_candle", params=c(14.0), width=2L), - list(canon="InstantaneousTrendline", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="IntradayIntensity", arch="scalar_candle", params=c(), width=0L), - list(canon="IntradayMomentumIndex", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="IntradayVolatilityProfile", arch="profile_bins", params=c(24.0,0.0), width=24L), - list(canon="InverseFisherTransform", arch="scalar_f64", params=c(2.0), width=0L), - list(canon="InvertedHammer", arch="scalar_candle", params=c(), width=0L), - list(canon="JarqueBera", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Jma", arch="scalar_f64", params=c(7.0,0.0,2.0), width=0L), - list(canon="JumpIndicator", arch="scalar_f64", params=c(14.0,2.0), width=0L), - list(canon="KRatio", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="KagiBars", arch="bars_close", params=c(2.0), width=0L), - list(canon="KalmanHedgeRatio", arch="multi_pairwise", params=c(0.01,0.001), width=3L), - list(canon="Kama", arch="scalar_f64", params=c(3.0,7.0,14.0), width=0L), - list(canon="KaseDevStop", arch="multi_candle", params=c(14.0,2.0), width=2L), - list(canon="KasePermissionStochastic", arch="multi_candle", params=c(3.0,7.0), width=2L), - list(canon="KellyCriterion", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Keltner", arch="multi_candle", params=c(3.0,7.0,2.0), width=3L), - list(canon="KendallTau", arch="pairwise", params=c(14.0), width=0L), - list(canon="Kicking", arch="scalar_candle", params=c(), width=0L), - list(canon="KickingByLength", arch="scalar_candle", params=c(), width=0L), - list(canon="Kst", arch="multi_f64", params=c(3.0,7.0,14.0,28.0,35.0,42.0,56.0,63.0,70.0), width=2L), - list(canon="Kurtosis", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Kvo", arch="scalar_candle", params=c(3.0,7.0), width=0L), - list(canon="KylesLambda", arch="trademid", params=c(20.0), width=0L), - list(canon="LadderBottom", arch="scalar_candle", params=c(), width=0L), - list(canon="LaguerreRsi", arch="scalar_f64", params=c(0.5), width=0L), - list(canon="LeadLagCrossCorrelation", arch="multi_pairwise", params=c(20.0,10.0), width=2L), - list(canon="LinRegAngle", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="LinRegChannel", arch="multi_f64", params=c(14.0,2.0), width=3L), - list(canon="LinRegIntercept", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="LinRegSlope", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="LinearRegression", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="LiquidationFeatures", arch="deriv_multi", params=c(), width=5L), - list(canon="LogReturn", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="LongLeggedDoji", arch="scalar_candle", params=c(), width=0L), - list(canon="LongLine", arch="scalar_candle", params=c(), width=0L), - list(canon="LongShortRatio", arch="deriv", params=c(), width=0L), - list(canon="M2Measure", arch="scalar_f64", params=c(14.0,2.0,0.5), width=0L), - list(canon="MaEnvelope", arch="multi_f64", params=c(14.0,2.0), width=3L), - list(canon="MacdExt", arch="multi_f64", params=c(12.0,0.0,26.0,0.0,9.0,0.0), width=3L), - list(canon="MacdFix", arch="multi_f64", params=c(9.0), width=3L), - list(canon="MacdHistogram", arch="scalar_f64", params=c(3.0,7.0,14.0), width=0L), - list(canon="MacdIndicator", arch="multi_f64", params=c(12.0,26.0,9.0), width=3L), - list(canon="Mama", arch="multi_f64", params=c(0.5,0.05), width=2L), - list(canon="MarketFacilitationIndex", arch="scalar_candle", params=c(), width=0L), - list(canon="MartinRatio", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Marubozu", arch="scalar_candle", params=c(), width=0L), - list(canon="MassIndex", arch="scalar_candle", params=c(3.0,7.0), width=0L), - list(canon="MatHold", arch="scalar_candle", params=c(), width=0L), - list(canon="MatchingLow", arch="scalar_candle", params=c(), width=0L), - list(canon="MaxDrawdown", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="McClellanOscillator", arch="cross", params=c(), width=0L), - list(canon="McClellanSummationIndex", arch="cross", params=c(), width=0L), - list(canon="McGinleyDynamic", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="MedianAbsoluteDeviation", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="MedianChannel", arch="multi_f64", params=c(14.0,2.0), width=3L), - list(canon="MedianMa", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="MedianPrice", arch="scalar_candle", params=c(), width=0L), - list(canon="Mfi", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="Microprice", arch="ob", params=c(), width=0L), - list(canon="MidPoint", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="MidPrice", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="MinusDi", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="MinusDm", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="ModifiedMaStop", arch="multi_candle", params=c(14.0), width=2L), - list(canon="Mom", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="MorningDojiStar", arch="scalar_candle", params=c(), width=0L), - list(canon="MorningEveningStar", arch="scalar_candle", params=c(), width=0L), - list(canon="MurreyMathLines", arch="multi_candle", params=c(14.0), width=9L), - list(canon="NakedPoc", arch="scalar_candle", params=c(3.0,7.0), width=0L), - list(canon="Natr", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="NewHighsNewLows", arch="cross", params=c(), width=0L), - list(canon="NewPriceLines", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="Nrtr", arch="multi_candle", params=c(2.0), width=2L), - list(canon="Nvi", arch="scalar_candle", params=c(), width=0L), - list(canon="OIPriceDivergence", arch="deriv", params=c(20.0), width=0L), - list(canon="OIWeighted", arch="deriv", params=c(), width=0L), - list(canon="Obv", arch="scalar_candle", params=c(), width=0L), - list(canon="OiToVolumeRatio", arch="deriv", params=c(), width=0L), - list(canon="OmegaRatio", arch="scalar_f64", params=c(14.0,2.0), width=0L), - list(canon="OnNeck", arch="scalar_candle", params=c(), width=0L), - list(canon="OpenInterestDelta", arch="deriv", params=c(), width=0L), - list(canon="OpenInterestMomentum", arch="deriv", params=c(10.0), width=0L), - list(canon="OpeningMarubozu", arch="scalar_candle", params=c(), width=0L), - list(canon="OpeningRange", arch="multi_candle", params=c(14.0), width=3L), - list(canon="OrderBookImbalanceFull", arch="ob", params=c(), width=0L), - list(canon="OrderBookImbalanceTop1", arch="ob", params=c(), width=0L), - list(canon="OrderBookImbalanceTopN", arch="ob", params=c(5.0), width=0L), - list(canon="OrderFlowImbalance", arch="ob", params=c(20.0), width=0L), - list(canon="OuHalfLife", arch="pairwise", params=c(14.0), width=0L), - list(canon="OvernightGap", arch="scalar_candle", params=c(0.0), width=0L), - list(canon="OvernightIntradayReturn", arch="multi_candle", params=c(14.0), width=2L), - list(canon="PainIndex", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="PairSpreadZScore", arch="pairwise", params=c(20.0,20.0), width=0L), - list(canon="PairwiseBeta", arch="pairwise", params=c(14.0), width=0L), - list(canon="ParkinsonVolatility", arch="scalar_candle", params=c(20.0,252.0), width=0L), - list(canon="PearsonCorrelation", arch="pairwise", params=c(14.0), width=0L), - list(canon="PercentAboveMa", arch="cross", params=c(), width=0L), - list(canon="PercentB", arch="scalar_f64", params=c(14.0,2.0), width=0L), - list(canon="PercentageTrailingStop", arch="scalar_f64", params=c(2.0), width=0L), - list(canon="PerpetualPremiumIndex", arch="deriv", params=c(), width=0L), - list(canon="Pgo", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="PiercingDarkCloud", arch="scalar_candle", params=c(), width=0L), - list(canon="Pin", arch="trade", params=c(20.0), width=0L), - list(canon="PivotReversal", arch="scalar_candle", params=c(3.0,7.0), width=0L), - list(canon="PlusDi", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="PlusDm", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="Pmo", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="PointAndFigureBars", arch="bars_close", params=c(2.0,3.0), width=0L), - list(canon="PolarizedFractalEfficiency", arch="scalar_f64", params=c(10.0,5.0), width=0L), - list(canon="Ppo", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="PpoHistogram", arch="scalar_f64", params=c(3.0,7.0,14.0), width=0L), - list(canon="ProfileShape", arch="scalar_candle", params=c(3.0,7.0), width=0L), - list(canon="ProfitFactor", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="ProjectionBands", arch="multi_candle", params=c(14.0), width=3L), - list(canon="ProjectionOscillator", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="Psar", arch="scalar_candle", params=c(0.02,0.02,0.2), width=0L), - list(canon="Pvi", arch="scalar_candle", params=c(), width=0L), - list(canon="Qqe", arch="multi_f64", params=c(3.0,7.0,2.0), width=2L), - list(canon="Qstick", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="QuartileBands", arch="multi_f64", params=c(14.0), width=3L), - list(canon="QuotedSpread", arch="ob", params=c(), width=0L), - list(canon="RSquared", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="RangeBars", arch="bars_close", params=c(2.0), width=0L), - list(canon="RealizedSpread", arch="trademid", params=c(20.0), width=0L), - list(canon="RealizedVolatility", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="RecoveryFactor", arch="scalar_f64", params=c(), width=0L), - list(canon="RectangleRange", arch="scalar_candle", params=c(), width=0L), - list(canon="Reflex", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="RegimeLabel", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="RelativeStrengthAB", arch="multi_pairwise", params=c(14.0,14.0), width=3L), - list(canon="RenkoBars", arch="bars_close", params=c(2.0), width=0L), - list(canon="RenkoTrailingStop", arch="scalar_f64", params=c(2.0), width=0L), - list(canon="RickshawMan", arch="scalar_candle", params=c(), width=0L), - list(canon="RisingThreeMethods", arch="scalar_candle", params=c(), width=0L), - list(canon="Rmi", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="Roc", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Rocp", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Rocr", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Rocr100", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="RogersSatchellVolatility", arch="scalar_candle", params=c(20.0,252.0), width=0L), - list(canon="RollMeasure", arch="trade", params=c(20.0), width=0L), - list(canon="RollingCorrelation", arch="pairwise", params=c(14.0), width=0L), - list(canon="RollingCovariance", arch="pairwise", params=c(14.0), width=0L), - list(canon="RollingIqr", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="RollingMinMaxScaler", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="RollingPercentileRank", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="RollingQuantile", arch="scalar_f64", params=c(20.0,0.5), width=0L), - list(canon="RollingVwap", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="RoofingFilter", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="Rsi", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Rsx", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="RunBars", arch="bars_candle4", params=c(3.0), width=0L), - list(canon="Rvi", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="RviVolatility", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Rwi", arch="multi_candle", params=c(14.0), width=2L), - list(canon="SampleEntropy", arch="scalar_f64", params=c(20.0,2.0,0.2), width=0L), - list(canon="SarExt", arch="scalar_candle", params=c(2.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5), width=0L), - list(canon="SeasonalZScore", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="SeparatingLines", arch="scalar_candle", params=c(), width=0L), - list(canon="SessionHighLow", arch="multi_candle", params=c(14.0), width=2L), - list(canon="SessionRange", arch="multi_candle", params=c(14.0), width=3L), - list(canon="SessionVwap", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="ShannonEntropy", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="Shark", arch="scalar_candle", params=c(), width=0L), - list(canon="SharpeRatio", arch="scalar_f64", params=c(14.0,2.0), width=0L), - list(canon="ShootingStar", arch="scalar_candle", params=c(), width=0L), - list(canon="ShortLine", arch="scalar_candle", params=c(), width=0L), - list(canon="SignedVolume", arch="trade", params=c(), width=0L), - list(canon="SineWave", arch="scalar_f64", params=c(), width=0L), - list(canon="SineWeightedMa", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="SinglePrints", arch="scalar_candle", params=c(3.0,7.0), width=0L), - list(canon="Skewness", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Sma", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Smi", arch="scalar_candle", params=c(3.0,7.0,14.0), width=0L), - list(canon="Smma", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="SmoothedHeikinAshi", arch="multi_candle", params=c(14.0), width=4L), - list(canon="SortinoRatio", arch="scalar_f64", params=c(14.0,2.0), width=0L), - list(canon="SpearmanCorrelation", arch="pairwise", params=c(14.0), width=0L), - list(canon="SpinningTop", arch="scalar_candle", params=c(), width=0L), - list(canon="SpreadAr1Coefficient", arch="pairwise", params=c(14.0), width=0L), - list(canon="SpreadBollingerBands", arch="multi_pairwise", params=c(14.0,2.0), width=4L), - list(canon="SpreadHurst", arch="pairwise", params=c(14.0), width=0L), - list(canon="StalledPattern", arch="scalar_candle", params=c(), width=0L), - list(canon="StandardError", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="StandardErrorBands", arch="multi_f64", params=c(14.0,2.0), width=3L), - list(canon="StarcBands", arch="multi_candle", params=c(3.0,7.0,2.0), width=3L), - list(canon="Stc", arch="scalar_f64", params=c(10.0,23.0,10.0,0.5), width=0L), - list(canon="StdDev", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="StepTrailingStop", arch="scalar_f64", params=c(2.0), width=0L), - list(canon="SterlingRatio", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="StickSandwich", arch="scalar_candle", params=c(), width=0L), - list(canon="StochRsi", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="Stochastic", arch="multi_candle", params=c(3.0,7.0), width=2L), - list(canon="StochasticCci", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="SuperSmoother", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="SuperTrend", arch="multi_candle", params=c(14.0,2.0), width=2L), - list(canon="T3", arch="scalar_f64", params=c(5.0,0.7), width=0L), - list(canon="TailRatio", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="TakerBuySellRatio", arch="deriv", params=c(), width=0L), - list(canon="Takuri", arch="scalar_candle", params=c(), width=0L), - list(canon="TasukiGap", arch="scalar_candle", params=c(), width=0L), - list(canon="TdCamouflage", arch="scalar_candle", params=c(), width=0L), - list(canon="TdClop", arch="scalar_candle", params=c(), width=0L), - list(canon="TdClopwin", arch="scalar_candle", params=c(), width=0L), - list(canon="TdCombo", arch="scalar_candle", params=c(3.0,7.0,14.0,28.0), width=0L), - list(canon="TdCountdown", arch="scalar_candle", params=c(3.0,7.0,14.0,28.0), width=0L), - list(canon="TdDWave", arch="scalar_candle", params=c(2.0), width=0L), - list(canon="TdDeMarker", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="TdDifferential", arch="scalar_candle", params=c(), width=0L), - list(canon="TdLines", arch="multi_candle", params=c(3.0,7.0), width=2L), - list(canon="TdMovingAverage", arch="multi_candle", params=c(3.0,7.0), width=2L), - list(canon="TdOpen", arch="scalar_candle", params=c(), width=0L), - list(canon="TdPressure", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="TdPropulsion", arch="scalar_candle", params=c(), width=0L), - list(canon="TdRangeProjection", arch="multi_candle", params=c(), width=2L), - list(canon="TdRei", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="TdRiskLevel", arch="multi_candle", params=c(3.0,7.0), width=2L), - list(canon="TdSequential", arch="multi_candle", params=c(3.0,7.0,14.0,28.0), width=3L), - list(canon="TdSetup", arch="scalar_candle", params=c(3.0,7.0), width=0L), - list(canon="TdTrap", arch="scalar_candle", params=c(), width=0L), - list(canon="Tema", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="TermStructureBasis", arch="deriv", params=c(), width=0L), - list(canon="ThreeDrives", arch="scalar_candle", params=c(), width=0L), - list(canon="ThreeInside", arch="scalar_candle", params=c(), width=0L), - list(canon="ThreeLineBreak", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="ThreeLineBreakBars", arch="bars_close", params=c(3.0), width=0L), - list(canon="ThreeLineStrike", arch="scalar_candle", params=c(), width=0L), - list(canon="ThreeOutside", arch="scalar_candle", params=c(), width=0L), - list(canon="ThreeSoldiersOrCrows", arch="scalar_candle", params=c(), width=0L), - list(canon="ThreeStarsInSouth", arch="scalar_candle", params=c(), width=0L), - list(canon="Thrusting", arch="scalar_candle", params=c(), width=0L), - list(canon="TickBars", arch="bars_candle5", params=c(2.0), width=0L), - list(canon="TickIndex", arch="cross", params=c(), width=0L), - list(canon="Tii", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="TimeBasedStop", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="TimeOfDayReturnProfile", arch="profile_bins", params=c(24.0,0.0), width=24L), - list(canon="TowerTopBottom", arch="scalar_candle", params=c(), width=0L), - list(canon="TpoProfile", arch="profile_pricebins", params=c(30.0,50.0), width=52L), - list(canon="TradeImbalance", arch="trade", params=c(20.0), width=0L), - list(canon="TradeSignAutocorrelation", arch="trade", params=c(20.0), width=0L), - list(canon="TradeVolumeIndex", arch="scalar_candle", params=c(2.0), width=0L), - list(canon="TrendLabel", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="TrendStrengthIndex", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Trendflex", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="TreynorRatio", arch="pairwise", params=c(14.0,2.0), width=0L), - list(canon="Triangle", arch="scalar_candle", params=c(), width=0L), - list(canon="Trima", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Trin", arch="cross", params=c(), width=0L), - list(canon="TripleTopBottom", arch="scalar_candle", params=c(), width=0L), - list(canon="Tristar", arch="scalar_candle", params=c(), width=0L), - list(canon="Trix", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="TrueRange", arch="scalar_candle", params=c(), width=0L), - list(canon="Tsf", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="TsfOscillator", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Tsi", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="Tsv", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="TtmSqueeze", arch="multi_candle", params=c(14.0,2.0,0.5), width=2L), - list(canon="TtmTrend", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="TurnOfMonth", arch="scalar_candle", params=c(3.0,3.0,0.0), width=0L), - list(canon="Tweezer", arch="scalar_candle", params=c(), width=0L), - list(canon="TwiggsMoneyFlow", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="TwoCrows", arch="scalar_candle", params=c(), width=0L), - list(canon="TypicalPrice", arch="scalar_candle", params=c(), width=0L), - list(canon="UlcerIndex", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="UltimateOscillator", arch="scalar_candle", params=c(3.0,7.0,14.0), width=0L), - list(canon="UniqueThreeRiver", arch="scalar_candle", params=c(), width=0L), - list(canon="UniversalOscillator", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="UpDownVolumeRatio", arch="cross", params=c(), width=0L), - list(canon="UpsideGapThreeMethods", arch="scalar_candle", params=c(), width=0L), - list(canon="UpsideGapTwoCrows", arch="scalar_candle", params=c(), width=0L), - list(canon="UpsidePotentialRatio", arch="scalar_f64", params=c(14.0,2.0), width=0L), - list(canon="ValueArea", arch="multi_candle", params=c(20.0,50.0,0.7), width=3L), - list(canon="ValueAtRisk", arch="scalar_f64", params=c(20.0,0.95), width=0L), - list(canon="Variance", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="VarianceRatio", arch="pairwise", params=c(60.0,2.0), width=0L), - list(canon="VerticalHorizontalFilter", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Vidya", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="VolatilityCone", arch="multi_candle", params=c(3.0,7.0), width=5L), - list(canon="VolatilityOfVolatility", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="VolatilityRatio", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="VoltyStop", arch="scalar_candle", params=c(14.0,2.0), width=0L), - list(canon="VolumeBars", arch="bars_candle5", params=c(500.0), width=0L), - list(canon="VolumeByTimeProfile", arch="profile_bins", params=c(24.0,0.0), width=24L), - list(canon="VolumeOscillator", arch="scalar_candle", params=c(3.0,7.0), width=0L), - list(canon="VolumePriceTrend", arch="scalar_candle", params=c(), width=0L), - list(canon="VolumeProfile", arch="profile_pricebins", params=c(20.0,50.0), width=52L), - list(canon="VolumeRsi", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="VolumeWeightedMacd", arch="multi_candle", params=c(3.0,7.0,14.0), width=3L), - list(canon="VolumeWeightedSr", arch="multi_candle", params=c(14.0), width=2L), - list(canon="Vortex", arch="multi_candle", params=c(14.0), width=2L), - list(canon="Vpin", arch="trade", params=c(5000.0,10.0), width=0L), - list(canon="Vwap", arch="scalar_candle", params=c(), width=0L), - list(canon="VwapStdDevBands", arch="multi_candle", params=c(2.0), width=4L), - list(canon="Vwma", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="Vzo", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="Wad", arch="scalar_candle", params=c(), width=0L), - list(canon="WavePm", arch="scalar_f64", params=c(3.0,7.0), width=0L), - list(canon="WaveTrend", arch="multi_candle", params=c(3.0,7.0,14.0), width=2L), - list(canon="Wedge", arch="scalar_candle", params=c(), width=0L), - list(canon="WeightedClose", arch="scalar_candle", params=c(), width=0L), - list(canon="WickRatio", arch="scalar_candle", params=c(), width=0L), - list(canon="WilliamsFractals", arch="multi_candle", params=c(), width=2L), - list(canon="WilliamsR", arch="scalar_candle", params=c(14.0), width=0L), - list(canon="WinRate", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="Wma", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="WoodiePivots", arch="multi_candle", params=c(), width=5L), - list(canon="YangZhangVolatility", arch="scalar_candle", params=c(20.0,252.0), width=0L), - list(canon="YoyoExit", arch="scalar_candle", params=c(14.0,2.0), width=0L), - list(canon="ZScore", arch="scalar_f64", params=c(14.0), width=0L), - list(canon="ZeroLagMacd", arch="multi_f64", params=c(3.0,7.0,14.0), width=3L), - list(canon="ZigZag", arch="multi_candle", params=c(0.02), width=2L), - list(canon="Zlema", arch="scalar_f64", params=c(14.0), width=0L) + list(canon="AbandonedBaby", arch="scalar_candle", params=c(), width=0L, name="AbandonedBaby"), + list(canon="Abcd", arch="scalar_candle", params=c(), width=0L, name="Abcd"), + list(canon="AbsoluteBreadthIndex", arch="cross", params=c(), width=0L, name="AbsoluteBreadthIndex"), + list(canon="AccelerationBands", arch="multi_candle", params=c(14.0,2.0), width=3L, name="AccelerationBands"), + list(canon="AcceleratorOscillator", arch="scalar_candle", params=c(3.0,7.0,14.0), width=0L, name="AcceleratorOscillator"), + list(canon="AdOscillator", arch="scalar_candle", params=c(), width=0L, name="ADOSC"), + list(canon="AdVolumeLine", arch="cross", params=c(), width=0L, name="AdVolumeLine"), + list(canon="AdaptiveCci", arch="scalar_candle", params=c(14.0), width=0L, name="AdaptiveCci"), + list(canon="AdaptiveCycle", arch="scalar_f64", params=c(), width=0L, name="AdaptiveCycle"), + list(canon="AdaptiveLaguerreFilter", arch="scalar_f64", params=c(20.0), width=0L, name="AdaptiveLaguerre"), + list(canon="AdaptiveRsi", arch="scalar_f64", params=c(14.0), width=0L, name="AdaptiveRsi"), + list(canon="Adl", arch="scalar_candle", params=c(), width=0L, name="ADL"), + list(canon="AdvanceBlock", arch="scalar_candle", params=c(), width=0L, name="AdvanceBlock"), + list(canon="AdvanceDecline", arch="cross", params=c(), width=0L, name="AdvanceDecline"), + list(canon="AdvanceDeclineRatio", arch="cross", params=c(), width=0L, name="AdvanceDeclineRatio"), + list(canon="Adx", arch="multi_candle", params=c(14.0), width=3L, name="ADX"), + list(canon="Adxr", arch="scalar_candle", params=c(14.0), width=0L, name="ADXR"), + list(canon="Alligator", arch="multi_candle", params=c(3.0,7.0,14.0), width=3L, name="Alligator"), + list(canon="Alma", arch="scalar_f64", params=c(9.0,0.85,6.0), width=0L, name="ALMA"), + list(canon="Alpha", arch="pairwise", params=c(14.0,2.0), width=0L, name="Alpha"), + list(canon="AmihudIlliquidity", arch="trade", params=c(20.0), width=0L, name="AmihudIlliquidity"), + list(canon="AnchoredRsi", arch="scalar_f64", params=c(), width=0L, name="AnchoredRSI"), + list(canon="AnchoredVwap", arch="scalar_candle", params=c(), width=0L, name="AnchoredVWAP"), + list(canon="AndrewsPitchfork", arch="multi_candle", params=c(14.0), width=3L, name="AndrewsPitchfork"), + list(canon="Apo", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="APO"), + list(canon="Aroon", arch="multi_candle", params=c(14.0), width=2L, name="Aroon"), + list(canon="AroonOscillator", arch="scalar_candle", params=c(14.0), width=0L, name="AroonOscillator"), + list(canon="Atr", arch="scalar_candle", params=c(14.0), width=0L, name="ATR"), + list(canon="AtrBands", arch="multi_candle", params=c(14.0,2.0), width=3L, name="AtrBands"), + list(canon="AtrRatchet", arch="multi_candle", params=c(14.0,2.0,0.5), width=2L, name="AtrRatchet"), + list(canon="AtrTrailingStop", arch="scalar_candle", params=c(14.0,2.0), width=0L, name="AtrTrailingStop"), + list(canon="AutoFib", arch="multi_candle", params=c(), width=7L, name="AutoFib"), + list(canon="Autocorrelation", arch="scalar_f64", params=c(10.0,1.0), width=0L, name="Autocorrelation"), + list(canon="AutocorrelationPeriodogram", arch="scalar_f64", params=c(10.0,48.0), width=0L, name="AutocorrelationPeriodogram"), + list(canon="AverageDailyRange", arch="scalar_candle", params=c(14.0,0.0), width=0L, name="AverageDailyRange"), + list(canon="AverageDrawdown", arch="scalar_f64", params=c(14.0), width=0L, name="AverageDrawdown"), + list(canon="AvgPrice", arch="scalar_candle", params=c(), width=0L, name="AVGPRICE"), + list(canon="AwesomeOscillator", arch="scalar_candle", params=c(3.0,7.0), width=0L, name="AwesomeOscillator"), + list(canon="AwesomeOscillatorHistogram", arch="scalar_candle", params=c(3.0,7.0,14.0), width=0L, name="AwesomeOscillatorHistogram"), + list(canon="BalanceOfPower", arch="scalar_candle", params=c(), width=0L, name="BalanceOfPower"), + list(canon="BandpassFilter", arch="scalar_f64", params=c(20.0,0.3), width=0L, name="BandpassFilter"), + list(canon="Bat", arch="scalar_candle", params=c(), width=0L, name="Bat"), + list(canon="BeltHold", arch="scalar_candle", params=c(), width=0L, name="BeltHold"), + list(canon="Beta", arch="pairwise", params=c(14.0), width=0L, name="Beta"), + list(canon="BetaNeutralSpread", arch="pairwise", params=c(14.0), width=0L, name="BetaNeutralSpread"), + list(canon="BetterVolume", arch="scalar_candle", params=c(14.0), width=0L, name="BetterVolume"), + list(canon="BipowerVariation", arch="scalar_f64", params=c(14.0), width=0L, name="BipowerVariation"), + list(canon="BodySizePct", arch="scalar_candle", params=c(), width=0L, name="BodySizePct"), + list(canon="BollingerBands", arch="multi_f64", params=c(20.0,2.0), width=4L, name="BollingerBands"), + list(canon="BollingerBandwidth", arch="scalar_f64", params=c(14.0,2.0), width=0L, name="BollingerBandwidth"), + list(canon="BomarBands", arch="multi_f64", params=c(4.0,0.85), width=3L, name="BomarBands"), + list(canon="BreadthThrust", arch="cross", params=c(10.0), width=0L, name="BreadthThrust"), + list(canon="Breakaway", arch="scalar_candle", params=c(), width=0L, name="Breakaway"), + list(canon="BullishPercentIndex", arch="cross", params=c(), width=0L, name="BullishPercentIndex"), + list(canon="BurkeRatio", arch="scalar_f64", params=c(14.0), width=0L, name="BurkeRatio"), + list(canon="Butterfly", arch="scalar_candle", params=c(), width=0L, name="Butterfly"), + list(canon="CalendarSpread", arch="deriv", params=c(), width=0L, name="CalendarSpread"), + list(canon="CalmarRatio", arch="scalar_f64", params=c(14.0), width=0L, name="CalmarRatio"), + list(canon="Camarilla", arch="multi_candle", params=c(), width=9L, name="Camarilla"), + list(canon="CandleVolume", arch="multi_candle", params=c(14.0), width=2L, name="CandleVolume"), + list(canon="Cci", arch="scalar_candle", params=c(14.0), width=0L, name="CCI"), + list(canon="CenterOfGravity", arch="scalar_f64", params=c(14.0), width=0L, name="CenterOfGravity"), + list(canon="CentralPivotRange", arch="multi_candle", params=c(), width=3L, name="CentralPivotRange"), + list(canon="Cfo", arch="scalar_f64", params=c(14.0), width=0L, name="CFO"), + list(canon="ChaikinMoneyFlow", arch="scalar_candle", params=c(20.0), width=0L, name="CMF"), + list(canon="ChaikinOscillator", arch="scalar_candle", params=c(3.0,7.0), width=0L, name="ChaikinOscillator"), + list(canon="ChaikinVolatility", arch="scalar_candle", params=c(3.0,7.0), width=0L, name="ChaikinVolatility"), + list(canon="ChandeKrollStop", arch="multi_candle", params=c(3.0,2.0,7.0), width=2L, name="ChandeKrollStop"), + list(canon="ChandelierExit", arch="multi_candle", params=c(14.0,2.0), width=2L, name="ChandelierExit"), + list(canon="ChoppinessIndex", arch="scalar_candle", params=c(14.0), width=0L, name="ChoppinessIndex"), + list(canon="ClassicPivots", arch="multi_candle", params=c(), width=7L, name="ClassicPivots"), + list(canon="CloseVsOpen", arch="scalar_candle", params=c(), width=0L, name="CloseVsOpen"), + list(canon="ClosingMarubozu", arch="scalar_candle", params=c(), width=0L, name="ClosingMarubozu"), + list(canon="Cmo", arch="scalar_f64", params=c(14.0), width=0L, name="CMO"), + list(canon="CoefficientOfVariation", arch="scalar_f64", params=c(14.0), width=0L, name="CoefficientOfVariation"), + list(canon="Cointegration", arch="multi_pairwise", params=c(40.0,1.0), width=3L, name="Cointegration"), + list(canon="CommonSenseRatio", arch="scalar_f64", params=c(14.0), width=0L, name="CommonSenseRatio"), + list(canon="CompositeProfile", arch="multi_candle", params=c(20.0,24.0,0.7), width=3L, name="CompositeProfile"), + list(canon="ConcealingBabySwallow", arch="scalar_candle", params=c(), width=0L, name="ConcealingBabySwallow"), + list(canon="ConditionalValueAtRisk", arch="scalar_f64", params=c(20.0,0.95), width=0L, name="ConditionalValueAtRisk"), + list(canon="ConnorsRsi", arch="scalar_f64", params=c(3.0,7.0,14.0), width=0L, name="ConnorsRSI"), + list(canon="Coppock", arch="scalar_f64", params=c(3.0,7.0,14.0), width=0L, name="Coppock"), + list(canon="CorrelationTrendIndicator", arch="scalar_f64", params=c(14.0), width=0L, name="CorrelationTrendIndicator"), + list(canon="Counterattack", arch="scalar_candle", params=c(), width=0L, name="Counterattack"), + list(canon="Crab", arch="scalar_candle", params=c(), width=0L, name="Crab"), + list(canon="CumulativeVolumeDelta", arch="trade", params=c(), width=0L, name="CumulativeVolumeDelta"), + list(canon="CumulativeVolumeIndex", arch="cross", params=c(), width=0L, name="CumulativeVolumeIndex"), + list(canon="CupAndHandle", arch="scalar_candle", params=c(), width=0L, name="CupAndHandle"), + list(canon="CyberneticCycle", arch="scalar_f64", params=c(14.0), width=0L, name="CyberneticCycle"), + list(canon="Cypher", arch="scalar_candle", params=c(), width=0L, name="Cypher"), + list(canon="DayOfWeekProfile", arch="profile_bins", params=c(0.0), width=7L, name="DayOfWeekProfile"), + list(canon="Decycler", arch="scalar_f64", params=c(14.0), width=0L, name="Decycler"), + list(canon="DecyclerOscillator", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="DecyclerOscillator"), + list(canon="Dema", arch="scalar_f64", params=c(14.0), width=0L, name="DEMA"), + list(canon="DemandIndex", arch="scalar_candle", params=c(14.0), width=0L, name="DemandIndex"), + list(canon="DemarkPivots", arch="multi_candle", params=c(), width=3L, name="DemarkPivots"), + list(canon="DepthSlope", arch="ob", params=c(), width=0L, name="DepthSlope"), + list(canon="DerivativeOscillator", arch="scalar_f64", params=c(3.0,7.0,14.0,28.0), width=0L, name="DerivativeOscillator"), + list(canon="DetrendedStdDev", arch="scalar_f64", params=c(14.0), width=0L, name="DetrendedStdDev"), + list(canon="DisparityIndex", arch="scalar_f64", params=c(14.0), width=0L, name="DisparityIndex"), + list(canon="DistanceSsd", arch="pairwise", params=c(14.0), width=0L, name="DistanceSsd"), + list(canon="Doji", arch="scalar_candle", params=c(), width=0L, name="Doji"), + list(canon="DojiStar", arch="scalar_candle", params=c(), width=0L, name="DojiStar"), + list(canon="DollarBars", arch="bars_candle5", params=c(50000.0), width=0L, name="DollarBars"), + list(canon="Donchian", arch="multi_candle", params=c(14.0), width=3L, name="DonchianChannels"), + list(canon="DonchianStop", arch="multi_candle", params=c(14.0), width=2L, name="DonchianStop"), + list(canon="DoubleBollinger", arch="multi_f64", params=c(20.0,1.0,2.0), width=5L, name="DoubleBollinger"), + list(canon="DoubleTopBottom", arch="scalar_candle", params=c(), width=0L, name="DoubleTopBottom"), + list(canon="DownsideGapThreeMethods", arch="scalar_candle", params=c(), width=0L, name="DownsideGapThreeMethods"), + list(canon="Dpo", arch="scalar_f64", params=c(14.0), width=0L, name="DPO"), + list(canon="DragonflyDoji", arch="scalar_candle", params=c(), width=0L, name="DragonflyDoji"), + list(canon="DrawdownDuration", arch="scalar_f64", params=c(), width=0L, name="DrawdownDuration"), + list(canon="DumplingTop", arch="scalar_candle", params=c(14.0), width=0L, name="DumplingTop"), + list(canon="Dx", arch="scalar_candle", params=c(14.0), width=0L, name="DX"), + list(canon="DynamicMomentumIndex", arch="scalar_f64", params=c(14.0), width=0L, name="DynamicMomentumIndex"), + list(canon="EaseOfMovement", arch="scalar_candle", params=c(14.0), width=0L, name="EaseOfMovement"), + list(canon="EffectiveSpread", arch="trademid", params=c(), width=0L, name="EffectiveSpread"), + list(canon="EhlersStochastic", arch="scalar_f64", params=c(14.0), width=0L, name="EhlersStochastic"), + list(canon="Ehma", arch="scalar_f64", params=c(14.0), width=0L, name="EHMA"), + list(canon="ElderImpulse", arch="scalar_f64", params=c(3.0,7.0,14.0,28.0), width=0L, name="ElderImpulse"), + list(canon="ElderRay", arch="multi_candle", params=c(14.0), width=2L, name="ElderRay"), + list(canon="ElderSafeZone", arch="multi_candle", params=c(10.0,2.0), width=2L, name="ElderSafeZone"), + list(canon="Ema", arch="scalar_f64", params=c(14.0), width=0L, name="EMA"), + list(canon="EmpiricalModeDecomposition", arch="scalar_f64", params=c(20.0,0.1), width=0L, name="EmpiricalModeDecomposition"), + list(canon="Engulfing", arch="scalar_candle", params=c(), width=0L, name="Engulfing"), + list(canon="Equivolume", arch="multi_candle", params=c(14.0), width=2L, name="Equivolume"), + list(canon="EstimatedLeverageRatio", arch="deriv", params=c(), width=0L, name="EstimatedLeverageRatio"), + list(canon="EvenBetterSinewave", arch="scalar_f64", params=c(40.0,10.0), width=0L, name="EvenBetterSinewave"), + list(canon="EveningDojiStar", arch="scalar_candle", params=c(), width=0L, name="EveningDojiStar"), + list(canon="Evwma", arch="scalar_candle", params=c(14.0), width=0L, name="EVWMA"), + list(canon="EwmaVolatility", arch="scalar_f64", params=c(0.94), width=0L, name="EwmaVolatility"), + list(canon="Expectancy", arch="scalar_f64", params=c(14.0), width=0L, name="Expectancy"), + list(canon="FallingThreeMethods", arch="scalar_candle", params=c(), width=0L, name="FallingThreeMethods"), + list(canon="Fama", arch="scalar_f64", params=c(0.5,0.05), width=0L, name="FAMA"), + list(canon="FibArcs", arch="multi_candle", params=c(), width=3L, name="FibArcs"), + list(canon="FibChannel", arch="multi_candle", params=c(), width=4L, name="FibChannel"), + list(canon="FibConfluence", arch="multi_candle", params=c(), width=2L, name="FibConfluence"), + list(canon="FibExtension", arch="multi_candle", params=c(), width=5L, name="FibExtension"), + list(canon="FibFan", arch="multi_candle", params=c(), width=3L, name="FibFan"), + list(canon="FibProjection", arch="multi_candle", params=c(), width=4L, name="FibProjection"), + list(canon="FibRetracement", arch="multi_candle", params=c(), width=7L, name="FibRetracement"), + list(canon="FibTimeZones", arch="multi_candle", params=c(), width=2L, name="FibTimeZones"), + list(canon="FibonacciPivots", arch="multi_candle", params=c(), width=7L, name="FibonacciPivots"), + list(canon="FisherRsi", arch="scalar_f64", params=c(14.0), width=0L, name="FisherRSI"), + list(canon="FisherTransform", arch="scalar_f64", params=c(14.0), width=0L, name="FisherTransform"), + list(canon="FlagPennant", arch="scalar_candle", params=c(), width=0L, name="FlagPennant"), + list(canon="Footprint", arch="footprint", params=c(1.0), width=0L, name="Footprint"), + list(canon="ForceIndex", arch="scalar_candle", params=c(14.0), width=0L, name="ForceIndex"), + list(canon="FractalChaosBands", arch="multi_candle", params=c(14.0), width=2L, name="FractalChaosBands"), + list(canon="Frama", arch="scalar_f64", params=c(14.0), width=0L, name="FRAMA"), + list(canon="FryPanBottom", arch="scalar_candle", params=c(14.0), width=0L, name="FryPanBottom"), + list(canon="FundingBasis", arch="deriv", params=c(), width=0L, name="FundingBasis"), + list(canon="FundingImpliedApr", arch="deriv", params=c(1095.0), width=0L, name="FundingImpliedApr"), + list(canon="FundingRate", arch="deriv", params=c(), width=0L, name="FundingRate"), + list(canon="FundingRateMean", arch="deriv", params=c(20.0), width=0L, name="FundingRateMean"), + list(canon="FundingRateZScore", arch="deriv", params=c(20.0), width=0L, name="FundingRateZScore"), + list(canon="GainLossRatio", arch="scalar_f64", params=c(14.0), width=0L, name="GainLossRatio"), + list(canon="GainToPainRatio", arch="scalar_f64", params=c(14.0), width=0L, name="GainToPainRatio"), + list(canon="GapSideBySideWhite", arch="scalar_candle", params=c(), width=0L, name="GapSideBySideWhite"), + list(canon="Garch11", arch="scalar_f64", params=c(2e-06,0.1,0.88), width=0L, name="Garch11"), + list(canon="GarmanKlassVolatility", arch="scalar_candle", params=c(20.0,252.0), width=0L, name="GarmanKlassVolatility"), + list(canon="Gartley", arch="scalar_candle", params=c(), width=0L, name="Gartley"), + list(canon="GatorOscillator", arch="multi_candle", params=c(3.0,7.0,14.0), width=2L, name="GatorOscillator"), + list(canon="GeneralizedDema", arch="scalar_f64", params=c(5.0,0.7), width=0L, name="GD"), + list(canon="GeometricMa", arch="scalar_f64", params=c(14.0), width=0L, name="GMA"), + list(canon="GoldenPocket", arch="multi_candle", params=c(), width=3L, name="GoldenPocket"), + list(canon="GrangerCausality", arch="pairwise", params=c(60.0,1.0), width=0L, name="GrangerCausality"), + list(canon="GravestoneDoji", arch="scalar_candle", params=c(), width=0L, name="GravestoneDoji"), + list(canon="Hammer", arch="scalar_candle", params=c(), width=0L, name="Hammer"), + list(canon="HangingMan", arch="scalar_candle", params=c(), width=0L, name="HangingMan"), + list(canon="Harami", arch="scalar_candle", params=c(), width=0L, name="Harami"), + list(canon="HaramiCross", arch="scalar_candle", params=c(), width=0L, name="HaramiCross"), + list(canon="HasbrouckInformationShare", arch="pairwise", params=c(14.0), width=0L, name="HasbrouckInformationShare"), + list(canon="HeadAndShoulders", arch="scalar_candle", params=c(), width=0L, name="HeadAndShoulders"), + list(canon="HeikinAshi", arch="multi_candle", params=c(), width=4L, name="HeikinAshi"), + list(canon="HeikinAshiOscillator", arch="scalar_candle", params=c(14.0), width=0L, name="HeikinAshiOscillator"), + list(canon="HiLoActivator", arch="scalar_candle", params=c(14.0), width=0L, name="HiLoActivator"), + list(canon="HighLowIndex", arch="cross", params=c(10.0), width=0L, name="HighLowIndex"), + list(canon="HighLowRange", arch="scalar_candle", params=c(), width=0L, name="HighLowRange"), + list(canon="HighLowVolumeNodes", arch="multi_candle", params=c(3.0,7.0), width=2L, name="HighLowVolumeNodes"), + list(canon="HighWave", arch="scalar_candle", params=c(), width=0L, name="HighWave"), + list(canon="HighpassFilter", arch="scalar_f64", params=c(14.0), width=0L, name="HighpassFilter"), + list(canon="Hikkake", arch="scalar_candle", params=c(), width=0L, name="Hikkake"), + list(canon="HikkakeModified", arch="scalar_candle", params=c(), width=0L, name="HikkakeModified"), + list(canon="HilbertDominantCycle", arch="scalar_f64", params=c(), width=0L, name="HilbertDominantCycle"), + list(canon="HistoricalVolatility", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="HistoricalVolatility"), + list(canon="Hma", arch="scalar_f64", params=c(14.0), width=0L, name="HMA"), + list(canon="HoltWinters", arch="scalar_f64", params=c(0.5,0.1), width=0L, name="HoltWinters"), + list(canon="HomingPigeon", arch="scalar_candle", params=c(), width=0L, name="HomingPigeon"), + list(canon="HtDcPhase", arch="scalar_f64", params=c(), width=0L, name="HT_DCPHASE"), + list(canon="HtPhasor", arch="multi_f64", params=c(), width=2L, name="HT_PHASOR"), + list(canon="HtTrendMode", arch="scalar_f64", params=c(), width=0L, name="HT_TRENDMODE"), + list(canon="HurstChannel", arch="multi_candle", params=c(14.0,2.0), width=3L, name="HurstChannel"), + list(canon="HurstExponent", arch="scalar_f64", params=c(100.0,4.0), width=0L, name="HurstExponent"), + list(canon="Ichimoku", arch="multi_candle", params=c(9.0,26.0,52.0,26.0), width=5L, name="Ichimoku"), + list(canon="IdenticalThreeCrows", arch="scalar_candle", params=c(), width=0L, name="IdenticalThreeCrows"), + list(canon="ImbalanceBars", arch="bars_candle4", params=c(5.0), width=0L, name="ImbalanceBars"), + list(canon="InNeck", arch="scalar_candle", params=c(), width=0L, name="InNeck"), + list(canon="Inertia", arch="scalar_candle", params=c(3.0,7.0), width=0L, name="Inertia"), + list(canon="InformationRatio", arch="pairwise", params=c(14.0), width=0L, name="InformationRatio"), + list(canon="InitialBalance", arch="multi_candle", params=c(14.0), width=2L, name="InitialBalance"), + list(canon="InstantaneousTrendline", arch="scalar_f64", params=c(14.0), width=0L, name="InstantaneousTrendline"), + list(canon="IntradayIntensity", arch="scalar_candle", params=c(), width=0L, name="IntradayIntensity"), + list(canon="IntradayMomentumIndex", arch="scalar_candle", params=c(14.0), width=0L, name="IMI"), + list(canon="IntradayVolatilityProfile", arch="profile_bins", params=c(24.0,0.0), width=24L, name="IntradayVolatilityProfile"), + list(canon="InverseFisherTransform", arch="scalar_f64", params=c(2.0), width=0L, name="InverseFisherTransform"), + list(canon="InvertedHammer", arch="scalar_candle", params=c(), width=0L, name="InvertedHammer"), + list(canon="JarqueBera", arch="scalar_f64", params=c(14.0), width=0L, name="JarqueBera"), + list(canon="Jma", arch="scalar_f64", params=c(7.0,0.0,2.0), width=0L, name="JMA"), + list(canon="JumpIndicator", arch="scalar_f64", params=c(14.0,2.0), width=0L, name="JumpIndicator"), + list(canon="KRatio", arch="scalar_f64", params=c(14.0), width=0L, name="KRatio"), + list(canon="KagiBars", arch="bars_close", params=c(2.0), width=0L, name="KagiBars"), + list(canon="KalmanHedgeRatio", arch="multi_pairwise", params=c(0.01,0.001), width=3L, name="KalmanHedgeRatio"), + list(canon="Kama", arch="scalar_f64", params=c(3.0,7.0,14.0), width=0L, name="KAMA"), + list(canon="KaseDevStop", arch="multi_candle", params=c(14.0,2.0), width=2L, name="KaseDevStop"), + list(canon="KasePermissionStochastic", arch="multi_candle", params=c(3.0,7.0), width=2L, name="KasePermissionStochastic"), + list(canon="KellyCriterion", arch="scalar_f64", params=c(14.0), width=0L, name="KellyCriterion"), + list(canon="Keltner", arch="multi_candle", params=c(3.0,7.0,2.0), width=3L, name="KeltnerChannels"), + list(canon="KendallTau", arch="pairwise", params=c(14.0), width=0L, name="KendallTau"), + list(canon="Kicking", arch="scalar_candle", params=c(), width=0L, name="Kicking"), + list(canon="KickingByLength", arch="scalar_candle", params=c(), width=0L, name="KickingByLength"), + list(canon="Kst", arch="multi_f64", params=c(3.0,7.0,14.0,28.0,35.0,42.0,56.0,63.0,70.0), width=2L, name="KST"), + list(canon="Kurtosis", arch="scalar_f64", params=c(14.0), width=0L, name="Kurtosis"), + list(canon="Kvo", arch="scalar_candle", params=c(3.0,7.0), width=0L, name="KVO"), + list(canon="KylesLambda", arch="trademid", params=c(20.0), width=0L, name="KylesLambda"), + list(canon="LadderBottom", arch="scalar_candle", params=c(), width=0L, name="LadderBottom"), + list(canon="LaguerreRsi", arch="scalar_f64", params=c(0.5), width=0L, name="LaguerreRSI"), + list(canon="LeadLagCrossCorrelation", arch="multi_pairwise", params=c(20.0,10.0), width=2L, name="LeadLagCrossCorrelation"), + list(canon="LinRegAngle", arch="scalar_f64", params=c(14.0), width=0L, name="LinRegAngle"), + list(canon="LinRegChannel", arch="multi_f64", params=c(14.0,2.0), width=3L, name="LinRegChannel"), + list(canon="LinRegIntercept", arch="scalar_f64", params=c(14.0), width=0L, name="LINEARREG_INTERCEPT"), + list(canon="LinRegSlope", arch="scalar_f64", params=c(14.0), width=0L, name="LinRegSlope"), + list(canon="LinearRegression", arch="scalar_f64", params=c(14.0), width=0L, name="LinearRegression"), + list(canon="LiquidationFeatures", arch="deriv_multi", params=c(), width=5L, name="LiquidationFeatures"), + list(canon="LogReturn", arch="scalar_f64", params=c(14.0), width=0L, name="LogReturn"), + list(canon="LongLeggedDoji", arch="scalar_candle", params=c(), width=0L, name="LongLeggedDoji"), + list(canon="LongLine", arch="scalar_candle", params=c(), width=0L, name="LongLine"), + list(canon="LongShortRatio", arch="deriv", params=c(), width=0L, name="LongShortRatio"), + list(canon="M2Measure", arch="scalar_f64", params=c(14.0,2.0,0.5), width=0L, name="M2Measure"), + list(canon="MaEnvelope", arch="multi_f64", params=c(14.0,2.0), width=3L, name="MaEnvelope"), + list(canon="MacdExt", arch="multi_f64", params=c(12.0,0.0,26.0,0.0,9.0,0.0), width=3L, name="MACDEXT"), + list(canon="MacdFix", arch="multi_f64", params=c(9.0), width=3L, name="MACDFIX"), + list(canon="MacdHistogram", arch="scalar_f64", params=c(3.0,7.0,14.0), width=0L, name="MacdHistogram"), + list(canon="MacdIndicator", arch="multi_f64", params=c(12.0,26.0,9.0), width=3L, name="MACD"), + list(canon="Mama", arch="multi_f64", params=c(0.5,0.05), width=2L, name="MAMA"), + list(canon="MarketFacilitationIndex", arch="scalar_candle", params=c(), width=0L, name="MarketFacilitationIndex"), + list(canon="MartinRatio", arch="scalar_f64", params=c(14.0), width=0L, name="MartinRatio"), + list(canon="Marubozu", arch="scalar_candle", params=c(), width=0L, name="Marubozu"), + list(canon="MassIndex", arch="scalar_candle", params=c(3.0,7.0), width=0L, name="MassIndex"), + list(canon="MatHold", arch="scalar_candle", params=c(), width=0L, name="MatHold"), + list(canon="MatchingLow", arch="scalar_candle", params=c(), width=0L, name="MatchingLow"), + list(canon="MaxDrawdown", arch="scalar_f64", params=c(14.0), width=0L, name="MaxDrawdown"), + list(canon="McClellanOscillator", arch="cross", params=c(), width=0L, name="McClellanOscillator"), + list(canon="McClellanSummationIndex", arch="cross", params=c(), width=0L, name="McClellanSummationIndex"), + list(canon="McGinleyDynamic", arch="scalar_f64", params=c(14.0), width=0L, name="McGinleyDynamic"), + list(canon="MedianAbsoluteDeviation", arch="scalar_f64", params=c(14.0), width=0L, name="MedianAbsoluteDeviation"), + list(canon="MedianChannel", arch="multi_f64", params=c(14.0,2.0), width=3L, name="MedianChannel"), + list(canon="MedianMa", arch="scalar_f64", params=c(14.0), width=0L, name="MedianMA"), + list(canon="MedianPrice", arch="scalar_candle", params=c(), width=0L, name="MedianPrice"), + list(canon="Mfi", arch="scalar_candle", params=c(14.0), width=0L, name="MFI"), + list(canon="Microprice", arch="ob", params=c(), width=0L, name="Microprice"), + list(canon="MidPoint", arch="scalar_f64", params=c(14.0), width=0L, name="MIDPOINT"), + list(canon="MidPrice", arch="scalar_candle", params=c(14.0), width=0L, name="MIDPRICE"), + list(canon="MinusDi", arch="scalar_candle", params=c(14.0), width=0L, name="MINUS_DI"), + list(canon="MinusDm", arch="scalar_candle", params=c(14.0), width=0L, name="MINUS_DM"), + list(canon="ModifiedMaStop", arch="multi_candle", params=c(14.0), width=2L, name="ModifiedMaStop"), + list(canon="Mom", arch="scalar_f64", params=c(14.0), width=0L, name="MOM"), + list(canon="MorningDojiStar", arch="scalar_candle", params=c(), width=0L, name="MorningDojiStar"), + list(canon="MorningEveningStar", arch="scalar_candle", params=c(), width=0L, name="MorningEveningStar"), + list(canon="MurreyMathLines", arch="multi_candle", params=c(14.0), width=9L, name="MurreyMathLines"), + list(canon="NakedPoc", arch="scalar_candle", params=c(3.0,7.0), width=0L, name="NakedPoc"), + list(canon="Natr", arch="scalar_candle", params=c(14.0), width=0L, name="NATR"), + list(canon="NewHighsNewLows", arch="cross", params=c(), width=0L, name="NewHighsNewLows"), + list(canon="NewPriceLines", arch="scalar_candle", params=c(14.0), width=0L, name="NewPriceLines"), + list(canon="Nrtr", arch="multi_candle", params=c(2.0), width=2L, name="Nrtr"), + list(canon="Nvi", arch="scalar_candle", params=c(), width=0L, name="NVI"), + list(canon="OIPriceDivergence", arch="deriv", params=c(20.0), width=0L, name="OIPriceDivergence"), + list(canon="OIWeighted", arch="deriv", params=c(), width=0L, name="OIWeighted"), + list(canon="Obv", arch="scalar_candle", params=c(), width=0L, name="OBV"), + list(canon="OiToVolumeRatio", arch="deriv", params=c(), width=0L, name="OiToVolumeRatio"), + list(canon="OmegaRatio", arch="scalar_f64", params=c(14.0,2.0), width=0L, name="OmegaRatio"), + list(canon="OnNeck", arch="scalar_candle", params=c(), width=0L, name="OnNeck"), + list(canon="OpenInterestDelta", arch="deriv", params=c(), width=0L, name="OpenInterestDelta"), + list(canon="OpenInterestMomentum", arch="deriv", params=c(10.0), width=0L, name="OpenInterestMomentum"), + list(canon="OpeningMarubozu", arch="scalar_candle", params=c(), width=0L, name="OpeningMarubozu"), + list(canon="OpeningRange", arch="multi_candle", params=c(14.0), width=3L, name="OpeningRange"), + list(canon="OrderBookImbalanceFull", arch="ob", params=c(), width=0L, name="OrderBookImbalanceFull"), + list(canon="OrderBookImbalanceTop1", arch="ob", params=c(), width=0L, name="OrderBookImbalanceTop1"), + list(canon="OrderBookImbalanceTopN", arch="ob", params=c(5.0), width=0L, name="OrderBookImbalanceTopN"), + list(canon="OrderFlowImbalance", arch="ob", params=c(20.0), width=0L, name="OrderFlowImbalance"), + list(canon="OuHalfLife", arch="pairwise", params=c(14.0), width=0L, name="OuHalfLife"), + list(canon="OvernightGap", arch="scalar_candle", params=c(0.0), width=0L, name="OvernightGap"), + list(canon="OvernightIntradayReturn", arch="multi_candle", params=c(14.0), width=2L, name="OvernightIntradayReturn"), + list(canon="PainIndex", arch="scalar_f64", params=c(14.0), width=0L, name="PainIndex"), + list(canon="PairSpreadZScore", arch="pairwise", params=c(20.0,20.0), width=0L, name="PairSpreadZScore"), + list(canon="PairwiseBeta", arch="pairwise", params=c(14.0), width=0L, name="PairwiseBeta"), + list(canon="ParkinsonVolatility", arch="scalar_candle", params=c(20.0,252.0), width=0L, name="ParkinsonVolatility"), + list(canon="PearsonCorrelation", arch="pairwise", params=c(14.0), width=0L, name="PearsonCorrelation"), + list(canon="PercentAboveMa", arch="cross", params=c(), width=0L, name="PercentAboveMa"), + list(canon="PercentB", arch="scalar_f64", params=c(14.0,2.0), width=0L, name="PercentB"), + list(canon="PercentageTrailingStop", arch="scalar_f64", params=c(2.0), width=0L, name="PercentageTrailingStop"), + list(canon="PerpetualPremiumIndex", arch="deriv", params=c(), width=0L, name="PerpetualPremiumIndex"), + list(canon="Pgo", arch="scalar_candle", params=c(14.0), width=0L, name="PGO"), + list(canon="PiercingDarkCloud", arch="scalar_candle", params=c(), width=0L, name="PiercingDarkCloud"), + list(canon="Pin", arch="trade", params=c(20.0), width=0L, name="PIN"), + list(canon="PivotReversal", arch="scalar_candle", params=c(3.0,7.0), width=0L, name="PivotReversal"), + list(canon="PlusDi", arch="scalar_candle", params=c(14.0), width=0L, name="PLUS_DI"), + list(canon="PlusDm", arch="scalar_candle", params=c(14.0), width=0L, name="PLUS_DM"), + list(canon="Pmo", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="PMO"), + list(canon="PointAndFigureBars", arch="bars_close", params=c(2.0,3.0), width=0L, name="PointAndFigureBars"), + list(canon="PolarizedFractalEfficiency", arch="scalar_f64", params=c(10.0,5.0), width=0L, name="PolarizedFractalEfficiency"), + list(canon="Ppo", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="PPO"), + list(canon="PpoHistogram", arch="scalar_f64", params=c(3.0,7.0,14.0), width=0L, name="PpoHistogram"), + list(canon="ProfileShape", arch="scalar_candle", params=c(3.0,7.0), width=0L, name="ProfileShape"), + list(canon="ProfitFactor", arch="scalar_f64", params=c(14.0), width=0L, name="ProfitFactor"), + list(canon="ProjectionBands", arch="multi_candle", params=c(14.0), width=3L, name="ProjectionBands"), + list(canon="ProjectionOscillator", arch="scalar_candle", params=c(14.0), width=0L, name="ProjectionOscillator"), + list(canon="Psar", arch="scalar_candle", params=c(0.02,0.02,0.2), width=0L, name="PSAR"), + list(canon="Pvi", arch="scalar_candle", params=c(), width=0L, name="PVI"), + list(canon="Qqe", arch="multi_f64", params=c(3.0,7.0,2.0), width=2L, name="QQE"), + list(canon="Qstick", arch="scalar_candle", params=c(14.0), width=0L, name="Qstick"), + list(canon="QuartileBands", arch="multi_f64", params=c(14.0), width=3L, name="QuartileBands"), + list(canon="QuotedSpread", arch="ob", params=c(), width=0L, name="QuotedSpread"), + list(canon="RSquared", arch="scalar_f64", params=c(14.0), width=0L, name="RSquared"), + list(canon="RangeBars", arch="bars_close", params=c(2.0), width=0L, name="RangeBars"), + list(canon="RealizedSpread", arch="trademid", params=c(20.0), width=0L, name="RealizedSpread"), + list(canon="RealizedVolatility", arch="scalar_f64", params=c(14.0), width=0L, name="RealizedVolatility"), + list(canon="RecoveryFactor", arch="scalar_f64", params=c(), width=0L, name="RecoveryFactor"), + list(canon="RectangleRange", arch="scalar_candle", params=c(), width=0L, name="RectangleRange"), + list(canon="Reflex", arch="scalar_f64", params=c(14.0), width=0L, name="Reflex"), + list(canon="RegimeLabel", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="RegimeLabel"), + list(canon="RelativeStrengthAB", arch="multi_pairwise", params=c(14.0,14.0), width=3L, name="RelativeStrengthAB"), + list(canon="RenkoBars", arch="bars_close", params=c(2.0), width=0L, name="RenkoBars"), + list(canon="RenkoTrailingStop", arch="scalar_f64", params=c(2.0), width=0L, name="RenkoTrailingStop"), + list(canon="RickshawMan", arch="scalar_candle", params=c(), width=0L, name="RickshawMan"), + list(canon="RisingThreeMethods", arch="scalar_candle", params=c(), width=0L, name="RisingThreeMethods"), + list(canon="Rmi", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="RMI"), + list(canon="Roc", arch="scalar_f64", params=c(14.0), width=0L, name="ROC"), + list(canon="Rocp", arch="scalar_f64", params=c(14.0), width=0L, name="ROCP"), + list(canon="Rocr", arch="scalar_f64", params=c(14.0), width=0L, name="ROCR"), + list(canon="Rocr100", arch="scalar_f64", params=c(14.0), width=0L, name="ROCR100"), + list(canon="RogersSatchellVolatility", arch="scalar_candle", params=c(20.0,252.0), width=0L, name="RogersSatchellVolatility"), + list(canon="RollMeasure", arch="trade", params=c(20.0), width=0L, name="RollMeasure"), + list(canon="RollingCorrelation", arch="pairwise", params=c(14.0), width=0L, name="RollingCorrelation"), + list(canon="RollingCovariance", arch="pairwise", params=c(14.0), width=0L, name="RollingCovariance"), + list(canon="RollingIqr", arch="scalar_f64", params=c(14.0), width=0L, name="RollingIqr"), + list(canon="RollingMinMaxScaler", arch="scalar_f64", params=c(14.0), width=0L, name="RollingMinMaxScaler"), + list(canon="RollingPercentileRank", arch="scalar_f64", params=c(14.0), width=0L, name="RollingPercentileRank"), + list(canon="RollingQuantile", arch="scalar_f64", params=c(20.0,0.5), width=0L, name="RollingQuantile"), + list(canon="RollingVwap", arch="scalar_candle", params=c(14.0), width=0L, name="RollingVWAP"), + list(canon="RoofingFilter", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="RoofingFilter"), + list(canon="Rsi", arch="scalar_f64", params=c(14.0), width=0L, name="RSI"), + list(canon="Rsx", arch="scalar_f64", params=c(14.0), width=0L, name="RSX"), + list(canon="RunBars", arch="bars_candle4", params=c(3.0), width=0L, name="RunBars"), + list(canon="Rvi", arch="scalar_candle", params=c(14.0), width=0L, name="RVI"), + list(canon="RviVolatility", arch="scalar_f64", params=c(14.0), width=0L, name="RVIVolatility"), + list(canon="Rwi", arch="multi_candle", params=c(14.0), width=2L, name="RWI"), + list(canon="SampleEntropy", arch="scalar_f64", params=c(20.0,2.0,0.2), width=0L, name="SampleEntropy"), + list(canon="SarExt", arch="scalar_candle", params=c(2.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5), width=0L, name="SAREXT"), + list(canon="SeasonalZScore", arch="scalar_candle", params=c(14.0), width=0L, name="SeasonalZScore"), + list(canon="SeparatingLines", arch="scalar_candle", params=c(), width=0L, name="SeparatingLines"), + list(canon="SessionHighLow", arch="multi_candle", params=c(14.0), width=2L, name="SessionHighLow"), + list(canon="SessionRange", arch="multi_candle", params=c(14.0), width=3L, name="SessionRange"), + list(canon="SessionVwap", arch="scalar_candle", params=c(14.0), width=0L, name="SessionVwap"), + list(canon="ShannonEntropy", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="ShannonEntropy"), + list(canon="Shark", arch="scalar_candle", params=c(), width=0L, name="Shark"), + list(canon="SharpeRatio", arch="scalar_f64", params=c(14.0,2.0), width=0L, name="SharpeRatio"), + list(canon="ShootingStar", arch="scalar_candle", params=c(), width=0L, name="ShootingStar"), + list(canon="ShortLine", arch="scalar_candle", params=c(), width=0L, name="ShortLine"), + list(canon="SignedVolume", arch="trade", params=c(), width=0L, name="SignedVolume"), + list(canon="SineWave", arch="scalar_f64", params=c(), width=0L, name="SineWave"), + list(canon="SineWeightedMa", arch="scalar_f64", params=c(14.0), width=0L, name="SWMA"), + list(canon="SinglePrints", arch="scalar_candle", params=c(3.0,7.0), width=0L, name="SinglePrints"), + list(canon="Skewness", arch="scalar_f64", params=c(14.0), width=0L, name="Skewness"), + list(canon="Sma", arch="scalar_f64", params=c(14.0), width=0L, name="SMA"), + list(canon="Smi", arch="scalar_candle", params=c(3.0,7.0,14.0), width=0L, name="SMI"), + list(canon="Smma", arch="scalar_f64", params=c(14.0), width=0L, name="SMMA"), + list(canon="SmoothedHeikinAshi", arch="multi_candle", params=c(14.0), width=4L, name="SmoothedHeikinAshi"), + list(canon="SortinoRatio", arch="scalar_f64", params=c(14.0,2.0), width=0L, name="SortinoRatio"), + list(canon="SpearmanCorrelation", arch="pairwise", params=c(14.0), width=0L, name="SpearmanCorrelation"), + list(canon="SpinningTop", arch="scalar_candle", params=c(), width=0L, name="SpinningTop"), + list(canon="SpreadAr1Coefficient", arch="pairwise", params=c(14.0), width=0L, name="SpreadAr1Coefficient"), + list(canon="SpreadBollingerBands", arch="multi_pairwise", params=c(14.0,2.0), width=4L, name="SpreadBollingerBands"), + list(canon="SpreadHurst", arch="pairwise", params=c(14.0), width=0L, name="SpreadHurst"), + list(canon="StalledPattern", arch="scalar_candle", params=c(), width=0L, name="StalledPattern"), + list(canon="StandardError", arch="scalar_f64", params=c(14.0), width=0L, name="StandardError"), + list(canon="StandardErrorBands", arch="multi_f64", params=c(14.0,2.0), width=3L, name="StandardErrorBands"), + list(canon="StarcBands", arch="multi_candle", params=c(3.0,7.0,2.0), width=3L, name="StarcBands"), + list(canon="Stc", arch="scalar_f64", params=c(10.0,23.0,10.0,0.5), width=0L, name="STC"), + list(canon="StdDev", arch="scalar_f64", params=c(14.0), width=0L, name="StdDev"), + list(canon="StepTrailingStop", arch="scalar_f64", params=c(2.0), width=0L, name="StepTrailingStop"), + list(canon="SterlingRatio", arch="scalar_f64", params=c(14.0), width=0L, name="SterlingRatio"), + list(canon="StickSandwich", arch="scalar_candle", params=c(), width=0L, name="StickSandwich"), + list(canon="StochRsi", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="StochRSI"), + list(canon="Stochastic", arch="multi_candle", params=c(3.0,7.0), width=2L, name="Stochastic"), + list(canon="StochasticCci", arch="scalar_candle", params=c(14.0), width=0L, name="StochasticCCI"), + list(canon="SuperSmoother", arch="scalar_f64", params=c(14.0), width=0L, name="SuperSmoother"), + list(canon="SuperTrend", arch="multi_candle", params=c(14.0,2.0), width=2L, name="SuperTrend"), + list(canon="T3", arch="scalar_f64", params=c(5.0,0.7), width=0L, name="T3"), + list(canon="TailRatio", arch="scalar_f64", params=c(14.0), width=0L, name="TailRatio"), + list(canon="TakerBuySellRatio", arch="deriv", params=c(), width=0L, name="TakerBuySellRatio"), + list(canon="Takuri", arch="scalar_candle", params=c(), width=0L, name="Takuri"), + list(canon="TasukiGap", arch="scalar_candle", params=c(), width=0L, name="TasukiGap"), + list(canon="TdCamouflage", arch="scalar_candle", params=c(), width=0L, name="TDCamouflage"), + list(canon="TdClop", arch="scalar_candle", params=c(), width=0L, name="TDClop"), + list(canon="TdClopwin", arch="scalar_candle", params=c(), width=0L, name="TDClopwin"), + list(canon="TdCombo", arch="scalar_candle", params=c(3.0,7.0,14.0,28.0), width=0L, name="TDCombo"), + list(canon="TdCountdown", arch="scalar_candle", params=c(3.0,7.0,14.0,28.0), width=0L, name="TDCountdown"), + list(canon="TdDWave", arch="scalar_candle", params=c(2.0), width=0L, name="TDDWave"), + list(canon="TdDeMarker", arch="scalar_candle", params=c(14.0), width=0L, name="TDDeMarker"), + list(canon="TdDifferential", arch="scalar_candle", params=c(), width=0L, name="TDDifferential"), + list(canon="TdLines", arch="multi_candle", params=c(3.0,7.0), width=2L, name="TDLines"), + list(canon="TdMovingAverage", arch="multi_candle", params=c(3.0,7.0), width=2L, name="TDMovingAverage"), + list(canon="TdOpen", arch="scalar_candle", params=c(), width=0L, name="TDOpen"), + list(canon="TdPressure", arch="scalar_candle", params=c(14.0), width=0L, name="TDPressure"), + list(canon="TdPropulsion", arch="scalar_candle", params=c(), width=0L, name="TDPropulsion"), + list(canon="TdRangeProjection", arch="multi_candle", params=c(), width=2L, name="TDRangeProjection"), + list(canon="TdRei", arch="scalar_candle", params=c(14.0), width=0L, name="TDREI"), + list(canon="TdRiskLevel", arch="multi_candle", params=c(3.0,7.0), width=2L, name="TDRiskLevel"), + list(canon="TdSequential", arch="multi_candle", params=c(3.0,7.0,14.0,28.0), width=3L, name="TDSequential"), + list(canon="TdSetup", arch="scalar_candle", params=c(3.0,7.0), width=0L, name="TDSetup"), + list(canon="TdTrap", arch="scalar_candle", params=c(), width=0L, name="TDTrap"), + list(canon="Tema", arch="scalar_f64", params=c(14.0), width=0L, name="TEMA"), + list(canon="TermStructureBasis", arch="deriv", params=c(), width=0L, name="TermStructureBasis"), + list(canon="ThreeDrives", arch="scalar_candle", params=c(), width=0L, name="ThreeDrives"), + list(canon="ThreeInside", arch="scalar_candle", params=c(), width=0L, name="ThreeInside"), + list(canon="ThreeLineBreak", arch="scalar_candle", params=c(14.0), width=0L, name="ThreeLineBreak"), + list(canon="ThreeLineBreakBars", arch="bars_close", params=c(3.0), width=0L, name="ThreeLineBreakBars"), + list(canon="ThreeLineStrike", arch="scalar_candle", params=c(), width=0L, name="ThreeLineStrike"), + list(canon="ThreeOutside", arch="scalar_candle", params=c(), width=0L, name="ThreeOutside"), + list(canon="ThreeSoldiersOrCrows", arch="scalar_candle", params=c(), width=0L, name="ThreeSoldiersOrCrows"), + list(canon="ThreeStarsInSouth", arch="scalar_candle", params=c(), width=0L, name="ThreeStarsInSouth"), + list(canon="Thrusting", arch="scalar_candle", params=c(), width=0L, name="Thrusting"), + list(canon="TickBars", arch="bars_candle5", params=c(2.0), width=0L, name="TickBars"), + list(canon="TickIndex", arch="cross", params=c(), width=0L, name="TickIndex"), + list(canon="Tii", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="TII"), + list(canon="TimeBasedStop", arch="scalar_candle", params=c(14.0), width=0L, name="TimeBasedStop"), + list(canon="TimeOfDayReturnProfile", arch="profile_bins", params=c(24.0,0.0), width=24L, name="TimeOfDayReturnProfile"), + list(canon="TowerTopBottom", arch="scalar_candle", params=c(), width=0L, name="TowerTopBottom"), + list(canon="TpoProfile", arch="profile_pricebins", params=c(30.0,50.0), width=52L, name="TpoProfile"), + list(canon="TradeImbalance", arch="trade", params=c(20.0), width=0L, name="TradeImbalance"), + list(canon="TradeSignAutocorrelation", arch="trade", params=c(20.0), width=0L, name="TradeSignAutocorrelation"), + list(canon="TradeVolumeIndex", arch="scalar_candle", params=c(2.0), width=0L, name="TradeVolumeIndex"), + list(canon="TrendLabel", arch="scalar_f64", params=c(14.0), width=0L, name="TrendLabel"), + list(canon="TrendStrengthIndex", arch="scalar_f64", params=c(14.0), width=0L, name="TrendStrengthIndex"), + list(canon="Trendflex", arch="scalar_f64", params=c(14.0), width=0L, name="Trendflex"), + list(canon="TreynorRatio", arch="pairwise", params=c(14.0,2.0), width=0L, name="TreynorRatio"), + list(canon="Triangle", arch="scalar_candle", params=c(), width=0L, name="Triangle"), + list(canon="Trima", arch="scalar_f64", params=c(14.0), width=0L, name="TRIMA"), + list(canon="Trin", arch="cross", params=c(), width=0L, name="Trin"), + list(canon="TripleTopBottom", arch="scalar_candle", params=c(), width=0L, name="TripleTopBottom"), + list(canon="Tristar", arch="scalar_candle", params=c(), width=0L, name="Tristar"), + list(canon="Trix", arch="scalar_f64", params=c(14.0), width=0L, name="TRIX"), + list(canon="TrueRange", arch="scalar_candle", params=c(), width=0L, name="TrueRange"), + list(canon="Tsf", arch="scalar_f64", params=c(14.0), width=0L, name="TSF"), + list(canon="TsfOscillator", arch="scalar_f64", params=c(14.0), width=0L, name="TsfOscillator"), + list(canon="Tsi", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="TSI"), + list(canon="Tsv", arch="scalar_candle", params=c(14.0), width=0L, name="TSV"), + list(canon="TtmSqueeze", arch="multi_candle", params=c(14.0,2.0,0.5), width=2L, name="TtmSqueeze"), + list(canon="TtmTrend", arch="scalar_candle", params=c(14.0), width=0L, name="TtmTrend"), + list(canon="TurnOfMonth", arch="scalar_candle", params=c(3.0,3.0,0.0), width=0L, name="TurnOfMonth"), + list(canon="Tweezer", arch="scalar_candle", params=c(), width=0L, name="Tweezer"), + list(canon="TwiggsMoneyFlow", arch="scalar_candle", params=c(14.0), width=0L, name="TwiggsMoneyFlow"), + list(canon="TwoCrows", arch="scalar_candle", params=c(), width=0L, name="TwoCrows"), + list(canon="TypicalPrice", arch="scalar_candle", params=c(), width=0L, name="TypicalPrice"), + list(canon="UlcerIndex", arch="scalar_f64", params=c(14.0), width=0L, name="UlcerIndex"), + list(canon="UltimateOscillator", arch="scalar_candle", params=c(3.0,7.0,14.0), width=0L, name="UltimateOscillator"), + list(canon="UniqueThreeRiver", arch="scalar_candle", params=c(), width=0L, name="UniqueThreeRiver"), + list(canon="UniversalOscillator", arch="scalar_f64", params=c(14.0), width=0L, name="UniversalOscillator"), + list(canon="UpDownVolumeRatio", arch="cross", params=c(), width=0L, name="UpDownVolumeRatio"), + list(canon="UpsideGapThreeMethods", arch="scalar_candle", params=c(), width=0L, name="UpsideGapThreeMethods"), + list(canon="UpsideGapTwoCrows", arch="scalar_candle", params=c(), width=0L, name="UpsideGapTwoCrows"), + list(canon="UpsidePotentialRatio", arch="scalar_f64", params=c(14.0,2.0), width=0L, name="UpsidePotentialRatio"), + list(canon="ValueArea", arch="multi_candle", params=c(20.0,50.0,0.7), width=3L, name="ValueArea"), + list(canon="ValueAtRisk", arch="scalar_f64", params=c(20.0,0.95), width=0L, name="ValueAtRisk"), + list(canon="Variance", arch="scalar_f64", params=c(14.0), width=0L, name="Variance"), + list(canon="VarianceRatio", arch="pairwise", params=c(60.0,2.0), width=0L, name="VarianceRatio"), + list(canon="VerticalHorizontalFilter", arch="scalar_f64", params=c(14.0), width=0L, name="VerticalHorizontalFilter"), + list(canon="Vidya", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="VIDYA"), + list(canon="VolatilityCone", arch="multi_candle", params=c(3.0,7.0), width=5L, name="VolatilityCone"), + list(canon="VolatilityOfVolatility", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="VolatilityOfVolatility"), + list(canon="VolatilityRatio", arch="scalar_candle", params=c(14.0), width=0L, name="VolatilityRatio"), + list(canon="VoltyStop", arch="scalar_candle", params=c(14.0,2.0), width=0L, name="VoltyStop"), + list(canon="VolumeBars", arch="bars_candle5", params=c(500.0), width=0L, name="VolumeBars"), + list(canon="VolumeByTimeProfile", arch="profile_bins", params=c(24.0,0.0), width=24L, name="VolumeByTimeProfile"), + list(canon="VolumeOscillator", arch="scalar_candle", params=c(3.0,7.0), width=0L, name="VolumeOscillator"), + list(canon="VolumePriceTrend", arch="scalar_candle", params=c(), width=0L, name="VPT"), + list(canon="VolumeProfile", arch="profile_pricebins", params=c(20.0,50.0), width=52L, name="VolumeProfile"), + list(canon="VolumeRsi", arch="scalar_candle", params=c(14.0), width=0L, name="VolumeRsi"), + list(canon="VolumeWeightedMacd", arch="multi_candle", params=c(3.0,7.0,14.0), width=3L, name="VolumeWeightedMacd"), + list(canon="VolumeWeightedSr", arch="multi_candle", params=c(14.0), width=2L, name="VolumeWeightedSr"), + list(canon="Vortex", arch="multi_candle", params=c(14.0), width=2L, name="Vortex"), + list(canon="Vpin", arch="trade", params=c(5000.0,10.0), width=0L, name="Vpin"), + list(canon="Vwap", arch="scalar_candle", params=c(), width=0L, name="VWAP"), + list(canon="VwapStdDevBands", arch="multi_candle", params=c(2.0), width=4L, name="VwapStdDevBands"), + list(canon="Vwma", arch="scalar_candle", params=c(14.0), width=0L, name="VWMA"), + list(canon="Vzo", arch="scalar_candle", params=c(14.0), width=0L, name="VZO"), + list(canon="Wad", arch="scalar_candle", params=c(), width=0L, name="Wad"), + list(canon="WavePm", arch="scalar_f64", params=c(3.0,7.0), width=0L, name="WavePm"), + list(canon="WaveTrend", arch="multi_candle", params=c(3.0,7.0,14.0), width=2L, name="WaveTrend"), + list(canon="Wedge", arch="scalar_candle", params=c(), width=0L, name="Wedge"), + list(canon="WeightedClose", arch="scalar_candle", params=c(), width=0L, name="WeightedClose"), + list(canon="WickRatio", arch="scalar_candle", params=c(), width=0L, name="WickRatio"), + list(canon="WilliamsFractals", arch="multi_candle", params=c(), width=2L, name="WilliamsFractals"), + list(canon="WilliamsR", arch="scalar_candle", params=c(14.0), width=0L, name="WilliamsR"), + list(canon="WinRate", arch="scalar_f64", params=c(14.0), width=0L, name="WinRate"), + list(canon="Wma", arch="scalar_f64", params=c(14.0), width=0L, name="WMA"), + list(canon="WoodiePivots", arch="multi_candle", params=c(), width=5L, name="WoodiePivots"), + list(canon="YangZhangVolatility", arch="scalar_candle", params=c(20.0,252.0), width=0L, name="YangZhangVolatility"), + list(canon="YoyoExit", arch="scalar_candle", params=c(14.0,2.0), width=0L, name="YoyoExit"), + list(canon="ZScore", arch="scalar_f64", params=c(14.0), width=0L, name="ZScore"), + list(canon="ZeroLagMacd", arch="multi_f64", params=c(3.0,7.0,14.0), width=3L, name="ZeroLagMACD"), + list(canon="ZigZag", arch="multi_candle", params=c(0.02), width=2L, name="ZigZag"), + list(canon="Zlema", arch="scalar_f64", params=c(14.0), width=0L, name="ZLEMA") ) diff --git a/bindings/r/tests/testthat/test-golden-all.R b/bindings/r/tests/testthat/test-golden-all.R index 0576338a..4281c855 100644 --- a/bindings/r/tests/testthat/test-golden-all.R +++ b/bindings/r/tests/testthat/test-golden-all.R @@ -98,6 +98,8 @@ test_that("all 514 indicators match the Rust golden fixtures", { for (spec in GOLDEN_SPECS) { ind <- do.call(get(spec$canon), as.list(spec$params)) + expect_identical(name(ind), spec$name, + info = sprintf("%s name()", spec$canon)) exp <- read_rows(paste0("g_", spec$canon)) for (i in seq_along(input_rows)) { got <- compute(spec, ind, input_rows[[i]], i) diff --git a/bindings/wasm/src/lib.rs b/bindings/wasm/src/lib.rs index 3c4f64c1..868d2b78 100644 --- a/bindings/wasm/src/lib.rs +++ b/bindings/wasm/src/lib.rs @@ -60,6 +60,7 @@ macro_rules! wasm_scalar_indicator { Float64Array::from(out.as_slice()) } pub fn reset(&mut self) { self.inner.reset(); } + pub fn name(&self) -> String { self.inner.name().to_string() } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() } #[wasm_bindgen(js_name = warmupPeriod)] pub fn warmup_period(&self) -> usize { self.inner.warmup_period() } } @@ -164,6 +165,10 @@ impl WasmKst { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } wasm_scalar_indicator!(WasmStochRsi, "StochRSI", wc::StochRsi, rsi_period: usize, stoch_period: usize); wasm_scalar_indicator!(WasmDpo, "DPO", wc::Dpo, period: usize); @@ -215,6 +220,10 @@ impl WasmZeroLagMacd { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -295,6 +304,10 @@ impl WasmYangZhangVolatility { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -354,6 +367,10 @@ impl WasmRogersSatchellVolatility { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -413,6 +430,10 @@ impl WasmGarmanKlassVolatility { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -456,6 +477,10 @@ impl WasmParkinsonVolatility { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -515,6 +540,10 @@ macro_rules! wasm_pair_indicator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -602,6 +631,10 @@ impl WasmPairSpreadZScore { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -659,6 +692,10 @@ impl WasmLeadLagCrossCorrelation { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -717,6 +754,10 @@ impl WasmCointegration { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -775,6 +816,10 @@ impl WasmRelativeStrengthAB { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -818,6 +863,10 @@ impl WasmVarianceRatio { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -861,6 +910,10 @@ impl WasmGrangerCausality { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -919,6 +972,10 @@ impl WasmKalmanHedgeRatio { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -979,6 +1036,10 @@ impl WasmSpreadBollingerBands { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1014,6 +1075,10 @@ impl WasmKama { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1068,6 +1133,10 @@ impl WasmMacd { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1119,6 +1188,10 @@ impl WasmBb { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } // ---------- Candle-input indicators ---------- @@ -1168,6 +1241,10 @@ impl WasmSmi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1214,6 +1291,10 @@ impl WasmPgo { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1269,6 +1350,10 @@ impl WasmInertia { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1324,6 +1409,10 @@ impl WasmRvi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -1370,6 +1459,10 @@ impl WasmAtr { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = PLUS_DM)] @@ -1408,6 +1501,10 @@ impl WasmPlusDm { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = MINUS_DM)] @@ -1446,6 +1543,10 @@ impl WasmMinusDm { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = PLUS_DI)] @@ -1484,6 +1585,10 @@ impl WasmPlusDi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = MINUS_DI)] @@ -1522,6 +1627,10 @@ impl WasmMinusDi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = DX)] @@ -1560,6 +1669,10 @@ impl WasmDx { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = MIDPRICE)] @@ -1598,6 +1711,10 @@ impl WasmMidPrice { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = AVGPRICE)] @@ -1651,6 +1768,10 @@ impl WasmAvgPrice { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = MACDEXT)] @@ -1710,6 +1831,10 @@ impl WasmMacdExt { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = MACDFIX)] @@ -1753,6 +1878,10 @@ impl WasmMacdFix { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = SAREXT)] @@ -1811,6 +1940,10 @@ impl WasmSarExt { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = HT_PHASOR)] @@ -1858,6 +1991,10 @@ impl WasmHtPhasor { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = CloseVsOpen)] @@ -1909,6 +2046,10 @@ impl WasmCloseVsOpen { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = BodySizePct)] @@ -1960,6 +2101,10 @@ impl WasmBodySizePct { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = WickRatio)] @@ -2011,6 +2156,10 @@ impl WasmWickRatio { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = HighLowRange)] @@ -2062,6 +2211,10 @@ impl WasmHighLowRange { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = StochasticCCI)] @@ -2100,6 +2253,10 @@ impl WasmStochasticCci { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = IMI)] @@ -2139,6 +2296,10 @@ impl WasmImi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } /// Streaming update over one candle's open/high/low/close. pub fn update( &mut self, @@ -2187,6 +2348,10 @@ impl WasmQqe { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } /// Streaming update. Returns `{ rsiMa, trailingLine }` once warm, else `null`. pub fn update(&mut self, value: f64) -> JsValue { match self.inner.update(value) { @@ -2246,6 +2411,10 @@ impl WasmElderRay { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } /// Streaming update. Returns `{ bullPower, bearPower }` once warm, else `null`. pub fn update(&mut self, high: f64, low: f64, close: f64) -> Result { let c = make_candle(high, low, close, 0.0)?; @@ -2305,6 +2474,10 @@ impl WasmTtmTrend { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = Qstick)] @@ -2340,6 +2513,10 @@ impl WasmQstick { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } /// Streaming update over one candle's open and close. pub fn update(&mut self, open: f64, close: f64) -> Result, JsError> { let hi = open.max(close); @@ -2399,6 +2576,10 @@ impl WasmGatorOscillator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } /// Streaming update. Returns `{ upper, lower }` once warm, else `null`. pub fn update(&mut self, high: f64, low: f64, close: f64) -> Result { let c = make_candle(high, low, close, 0.0)?; @@ -2459,6 +2640,10 @@ impl WasmKasePermissionStochastic { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } /// Streaming update. Returns `{ fast, slow }` once warm, else `null`. pub fn update(&mut self, high: f64, low: f64, close: f64) -> Result { let c = make_candle(high, low, close, 0.0)?; @@ -2518,6 +2703,10 @@ impl WasmVolatilityRatio { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ProjectionOscillator)] @@ -2556,6 +2745,10 @@ impl WasmProjectionOscillator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = TimeBasedStop)] @@ -2594,6 +2787,10 @@ impl WasmTimeBasedStop { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ADAPTIVECCI)] @@ -2632,6 +2829,10 @@ impl WasmAdaptiveCci { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = Stochastic)] @@ -2671,6 +2872,10 @@ impl WasmStoch { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } /// Streaming update. Returns `{ k, d }` once warm, else `null`. pub fn update(&mut self, high: f64, low: f64, close: f64) -> Result { let c = make_candle(high, low, close, 0.0)?; @@ -2727,6 +2932,10 @@ impl WasmObv { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } pub fn update(&mut self, close: f64, volume: f64) -> Result, JsError> { let c = make_candle(close, close, close, volume)?; Ok(self.inner.update(c)) @@ -2777,6 +2986,10 @@ impl WasmUltimateOscillator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ADL)] @@ -2831,6 +3044,10 @@ impl WasmAdl { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = VolumePriceTrend)] @@ -2870,6 +3087,10 @@ impl WasmVolumePriceTrend { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ChaikinMoneyFlow)] @@ -2918,6 +3139,10 @@ impl WasmChaikinMoneyFlow { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ChaikinOscillator)] @@ -2966,6 +3191,10 @@ impl WasmChaikinOscillator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ForceIndex)] @@ -2999,6 +3228,10 @@ impl WasmForceIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = VolumeOscillator)] @@ -3029,6 +3262,10 @@ impl WasmVolumeOscillator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = NVI)] @@ -3062,6 +3299,10 @@ impl WasmNvi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = PVI)] @@ -3095,6 +3336,10 @@ impl WasmPvi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = KVO)] @@ -3143,6 +3388,10 @@ impl WasmKvo { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ADOSC)] @@ -3183,6 +3432,10 @@ impl WasmAdOscillator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = AnchoredRSI)] @@ -3213,6 +3466,10 @@ impl WasmAnchoredRsi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -3274,6 +3531,10 @@ impl WasmAnchoredVwap { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = DemandIndex)] @@ -3322,6 +3583,10 @@ impl WasmDemandIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = TSV)] @@ -3355,6 +3620,10 @@ impl WasmTsv { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = VZO)] @@ -3388,6 +3657,10 @@ impl WasmVzo { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = MarketFacilitationIndex)] @@ -3428,6 +3701,10 @@ impl WasmMarketFacilitationIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = EaseOfMovement)] @@ -3467,6 +3744,10 @@ impl WasmEaseOfMovement { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = SuperTrend)] @@ -3520,6 +3801,10 @@ impl WasmSuperTrend { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ChandelierExit)] @@ -3572,6 +3857,10 @@ impl WasmChandelierExit { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ChandeKrollStop)] @@ -3629,6 +3918,10 @@ impl WasmChandeKrollStop { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = AtrTrailingStop)] @@ -3668,6 +3961,10 @@ impl WasmAtrTrailingStop { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } // ---------- Trailing Stops (family 09) ---------- @@ -3709,6 +4006,10 @@ impl WasmHiLoActivator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = VoltyStop)] @@ -3748,6 +4049,10 @@ impl WasmVoltyStop { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = YoyoExit)] @@ -3787,6 +4092,10 @@ impl WasmYoyoExit { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = inTrade)] pub fn in_trade(&self) -> bool { self.inner.in_trade() @@ -3838,6 +4147,10 @@ impl WasmDonchianStop { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = PercentageTrailingStop)] @@ -3863,6 +4176,10 @@ impl WasmPercentageTrailingStop { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = StepTrailingStop)] @@ -3888,6 +4205,10 @@ impl WasmStepTrailingStop { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = RenkoTrailingStop)] @@ -3913,6 +4234,10 @@ impl WasmRenkoTrailingStop { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = KaseDevStop)] @@ -3966,6 +4291,10 @@ impl WasmKaseDevStop { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ElderSafeZone)] @@ -4019,6 +4348,10 @@ impl WasmElderSafeZone { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = AtrRatchet)] @@ -4076,6 +4409,10 @@ impl WasmAtrRatchet { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = Nrtr)] @@ -4129,6 +4466,10 @@ impl WasmNrtr { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ModifiedMaStop)] @@ -4182,6 +4523,10 @@ impl WasmModifiedMaStop { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = TypicalPrice)] @@ -4227,6 +4572,10 @@ impl WasmTypicalPrice { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = MedianPrice)] @@ -4266,6 +4615,10 @@ impl WasmMedianPrice { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = WeightedClose)] @@ -4311,6 +4664,10 @@ impl WasmWeightedClose { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = AcceleratorOscillator)] @@ -4349,6 +4706,10 @@ impl WasmAcceleratorOscillator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = BalanceOfPower)] @@ -4401,6 +4762,10 @@ impl WasmBalanceOfPower { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ChoppinessIndex)] @@ -4440,6 +4805,10 @@ impl WasmChoppinessIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = TrueRange)] @@ -4485,6 +4854,10 @@ impl WasmTrueRange { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ChaikinVolatility)] @@ -4518,6 +4891,10 @@ impl WasmChaikinVolatility { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = NATR)] @@ -4556,6 +4933,10 @@ impl WasmNatr { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = AroonOscillator)] @@ -4589,6 +4970,10 @@ impl WasmAroonOscillator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = Vortex)] @@ -4640,6 +5025,10 @@ impl WasmVortex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = WaveTrend)] @@ -4700,6 +5089,10 @@ impl WasmWaveTrend { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = RWI)] @@ -4751,6 +5144,10 @@ impl WasmRwi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = MassIndex)] @@ -4784,6 +5181,10 @@ impl WasmMassIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = EVWMA)] @@ -4817,6 +5218,10 @@ impl WasmEvwma { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4858,6 +5263,10 @@ impl WasmVwma { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ADX)] @@ -4912,6 +5321,10 @@ impl WasmAdx { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -4958,6 +5371,10 @@ impl WasmAdxr { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5004,6 +5421,10 @@ impl WasmWilliamsR { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5050,6 +5471,10 @@ impl WasmCci { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5105,6 +5530,10 @@ impl WasmMfi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5151,6 +5580,10 @@ impl WasmPsar { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5216,6 +5649,10 @@ impl WasmKeltner { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5272,6 +5709,10 @@ impl WasmDonchian { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5333,6 +5774,10 @@ impl WasmVwap { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5392,6 +5837,10 @@ impl WasmRollingVwap { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5433,6 +5882,10 @@ impl WasmAoHist { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5474,6 +5927,10 @@ impl WasmAo { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5531,6 +5988,10 @@ impl WasmAlligator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5586,6 +6047,10 @@ impl WasmAroon { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5621,6 +6086,10 @@ impl WasmHtDcPhase { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5654,6 +6123,10 @@ impl WasmHtTrendMode { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5687,6 +6160,10 @@ impl WasmHilbertDominantCycle { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5720,6 +6197,10 @@ impl WasmAdaptiveCycle { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5756,6 +6237,10 @@ impl WasmSineWave { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5805,6 +6290,10 @@ impl WasmMama { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5866,6 +6355,10 @@ impl WasmMaEnvelope { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5929,6 +6422,10 @@ impl WasmAccelerationBands { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -5995,6 +6492,10 @@ impl WasmStarcBands { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6057,6 +6558,10 @@ impl WasmAtrBands { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6119,6 +6624,10 @@ impl WasmHurstChannel { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6171,6 +6680,10 @@ impl WasmLinRegChannel { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6223,6 +6736,10 @@ impl WasmStandardErrorBands { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6275,6 +6792,10 @@ impl WasmQuartileBands { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6327,6 +6848,10 @@ impl WasmBomarBands { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6379,6 +6904,10 @@ impl WasmMedianChannel { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6436,6 +6965,10 @@ impl WasmProjectionBands { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6504,6 +7037,10 @@ impl WasmCentralPivotRange { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6573,6 +7110,10 @@ impl WasmMurreyMathLines { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6630,6 +7171,10 @@ impl WasmAndrewsPitchfork { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6690,6 +7235,10 @@ impl WasmVolumeWeightedSr { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6738,6 +7287,10 @@ impl WasmPivotReversal { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6795,6 +7348,10 @@ impl WasmDoubleBollinger { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6856,6 +7413,10 @@ impl WasmTtmSqueeze { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6912,6 +7473,10 @@ impl WasmFractalChaosBands { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -6986,6 +7551,10 @@ impl WasmVwapStdDevBands { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7062,6 +7631,10 @@ impl WasmClassicPivots { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7136,6 +7709,10 @@ impl WasmFibonacciPivots { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7214,6 +7791,10 @@ impl WasmCamarilla { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7284,6 +7865,10 @@ impl WasmWoodiePivots { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7357,6 +7942,10 @@ impl WasmDemarkPivots { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7423,6 +8012,10 @@ impl WasmWilliamsFractals { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7480,6 +8073,10 @@ impl WasmZigZag { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7527,6 +8124,10 @@ impl WasmTdSetup { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7603,6 +8204,10 @@ impl WasmTdSequential { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7646,6 +8251,10 @@ impl WasmTdDeMarker { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7689,6 +8298,10 @@ impl WasmTdRei { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7753,6 +8366,10 @@ impl WasmTdPressure { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7812,6 +8429,10 @@ impl WasmTdCombo { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7860,6 +8481,10 @@ impl WasmTdDWave { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7915,6 +8540,10 @@ impl WasmTdMovingAverage { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -7974,6 +8603,10 @@ impl WasmTdCountdown { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8036,6 +8669,10 @@ impl WasmTdLines { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8106,6 +8743,10 @@ impl WasmTdRangeProjection { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8155,6 +8796,10 @@ impl WasmTdDifferential { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8211,6 +8856,10 @@ impl WasmTdOpen { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8273,6 +8922,10 @@ impl WasmTdRiskLevel { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8369,6 +9022,10 @@ impl WasmIchimoku { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8449,6 +9106,10 @@ impl WasmHeikinAshi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8516,6 +9177,10 @@ impl WasmValueArea { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8574,6 +9239,10 @@ impl WasmNakedPoc { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8622,6 +9291,10 @@ impl WasmSinglePrints { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8678,6 +9351,10 @@ impl WasmProfileShape { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8740,6 +9417,10 @@ impl WasmHighLowVolumeNodes { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8808,6 +9489,10 @@ impl WasmCompositeProfile { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8875,6 +9560,10 @@ impl WasmVolumeProfile { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8937,6 +9626,10 @@ impl WasmTpoProfile { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -8993,6 +9686,10 @@ impl WasmInitialBalance { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9064,6 +9761,10 @@ impl WasmOpeningRange { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9138,6 +9839,10 @@ macro_rules! wasm_candle_pattern { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9205,6 +9910,10 @@ impl WasmDoji { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9417,6 +10126,10 @@ macro_rules! wasm_ob_indicator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9470,6 +10183,10 @@ impl WasmOrderBookImbalanceTopN { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9527,6 +10244,10 @@ macro_rules! wasm_trade_indicator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9566,6 +10287,10 @@ impl WasmTradeImbalance { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9596,6 +10321,10 @@ impl WasmTradeSignAutocorrelation { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9626,6 +10355,10 @@ impl WasmPin { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9663,6 +10396,10 @@ impl WasmOrderFlowImbalance { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9693,6 +10430,10 @@ impl WasmVpin { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9723,6 +10464,10 @@ impl WasmAmihudIlliquidity { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9753,6 +10498,10 @@ impl WasmRollMeasure { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9816,6 +10565,10 @@ macro_rules! wasm_trade_quote_indicator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9858,6 +10611,10 @@ impl WasmRealizedSpread { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9896,6 +10653,10 @@ impl WasmKylesLambda { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -9944,6 +10705,10 @@ impl WasmFootprint { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10041,6 +10806,10 @@ impl WasmFundingRate { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10070,6 +10839,10 @@ impl WasmFundingRateMean { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10099,6 +10872,10 @@ impl WasmFundingRateZScore { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10134,6 +10911,10 @@ impl WasmFundingBasis { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10169,6 +10950,10 @@ impl WasmOpenInterestDelta { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10309,6 +11094,10 @@ impl WasmOIPriceDivergence { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10344,6 +11133,10 @@ impl WasmOIWeighted { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10379,6 +11172,10 @@ impl WasmLongShortRatio { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10420,6 +11217,10 @@ impl WasmTakerBuySellRatio { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10469,6 +11270,10 @@ impl WasmLiquidationFeatures { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10545,6 +11350,10 @@ impl WasmTermStructureBasis { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10582,6 +11391,10 @@ impl WasmCalendarSpread { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10626,6 +11439,10 @@ impl WasmEstimatedLeverageRatio { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10672,6 +11489,10 @@ impl WasmOiToVolumeRatio { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10709,6 +11530,10 @@ impl WasmPerpetualPremiumIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10740,6 +11565,10 @@ impl WasmFundingImpliedApr { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10771,6 +11600,10 @@ impl WasmOpenInterestMomentum { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10826,6 +11659,10 @@ impl WasmHeikinAshiOscillator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10874,6 +11711,10 @@ impl WasmThreeLineBreak { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -10945,6 +11786,10 @@ impl WasmSmoothedHeikinAshi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11006,6 +11851,10 @@ impl WasmEquivolume { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11071,6 +11920,10 @@ impl WasmCandleVolume { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11119,6 +11972,10 @@ impl WasmFryPanBottom { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11167,6 +12024,10 @@ impl WasmDumplingTop { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11215,6 +12076,10 @@ impl WasmNewPriceLines { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11287,6 +12152,10 @@ impl WasmAdvanceDecline { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11392,6 +12261,10 @@ impl WasmAdvanceDeclineRatio { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11435,6 +12308,10 @@ impl WasmAdVolumeLine { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11478,6 +12355,10 @@ impl WasmMcClellanOscillator { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11521,6 +12402,10 @@ impl WasmMcClellanSummationIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11564,6 +12449,10 @@ impl WasmTrin { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11601,6 +12490,10 @@ impl WasmBreadthThrust { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11644,6 +12537,10 @@ impl WasmNewHighsNewLows { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11681,6 +12578,10 @@ impl WasmHighLowIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11725,6 +12626,10 @@ impl WasmPercentAboveMa { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11768,6 +12673,10 @@ impl WasmUpDownVolumeRatio { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11816,6 +12725,10 @@ impl WasmBullishPercentIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11859,6 +12772,10 @@ impl WasmCumulativeVolumeIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11902,6 +12819,10 @@ impl WasmAbsoluteBreadthIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -11945,6 +12866,10 @@ impl WasmTickIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12821,6 +13746,10 @@ impl WasmVolatilityCone { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12865,6 +13794,10 @@ impl WasmDrawdownDuration { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12906,6 +13839,10 @@ impl WasmRecoveryFactor { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12955,6 +13892,10 @@ impl WasmTreynorRatio { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -12998,6 +13939,10 @@ impl WasmInformationRatio { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13061,6 +14006,10 @@ impl WasmRenkoBars { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = KagiBars)] @@ -13109,6 +14058,10 @@ impl WasmKagiBars { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = PointAndFigureBars)] @@ -13161,6 +14114,10 @@ impl WasmPointAndFigureBars { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = RangeBars)] @@ -13209,6 +14166,10 @@ impl WasmRangeBars { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = TickBars)] @@ -13252,6 +14213,10 @@ impl WasmTickBars { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = VolumeBars)] @@ -13296,6 +14261,10 @@ impl WasmVolumeBars { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = DollarBars)] @@ -13341,6 +14310,10 @@ impl WasmDollarBars { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ImbalanceBars)] @@ -13378,6 +14351,10 @@ impl WasmImbalanceBars { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = RunBars)] @@ -13417,6 +14394,10 @@ impl WasmRunBars { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = ThreeLineBreakBars)] @@ -13465,6 +14446,10 @@ impl WasmThreeLineBreakBars { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } } #[wasm_bindgen(js_name = Alpha)] @@ -13500,6 +14485,10 @@ impl WasmAlpha { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13547,6 +14536,10 @@ macro_rules! wasm_seasonality_offset_scalar { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13596,6 +14589,10 @@ macro_rules! wasm_seasonality_bucket_profile { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13645,6 +14642,10 @@ macro_rules! wasm_seasonality_offset_profile { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13709,6 +14710,10 @@ impl WasmAverageDailyRange { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13751,6 +14756,10 @@ impl WasmTurnOfMonth { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13796,6 +14805,10 @@ impl WasmSessionHighLow { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13842,6 +14855,10 @@ impl WasmSessionRange { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13887,6 +14904,10 @@ impl WasmOvernightIntradayReturn { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -13963,6 +14984,10 @@ impl WasmFibRetracement { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14027,6 +15052,10 @@ impl WasmFibExtension { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14089,6 +15118,10 @@ impl WasmFibProjection { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14157,6 +15190,10 @@ impl WasmAutoFib { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14217,6 +15254,10 @@ impl WasmGoldenPocket { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14275,6 +15316,10 @@ impl WasmFibConfluence { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14335,6 +15380,10 @@ impl WasmFibFan { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14395,6 +15444,10 @@ impl WasmFibArcs { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14457,6 +15510,10 @@ impl WasmFibChannel { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14515,6 +15572,10 @@ impl WasmFibTimeZones { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14558,6 +15619,10 @@ impl WasmVolumeRsi { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14606,6 +15671,10 @@ impl WasmWad { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14663,6 +15732,10 @@ impl WasmTwiggsMoneyFlow { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14706,6 +15779,10 @@ impl WasmTradeVolumeIndex { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14763,6 +15840,10 @@ impl WasmIntradayIntensity { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14820,6 +15901,10 @@ impl WasmBetterVolume { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() @@ -14879,6 +15964,10 @@ impl WasmVolumeWeightedMacd { pub fn reset(&mut self) { self.inner.reset(); } + + pub fn name(&self) -> String { + self.inner.name().to_string() + } #[wasm_bindgen(js_name = isReady)] pub fn is_ready(&self) -> bool { self.inner.is_ready() diff --git a/bindings/wasm/tests/golden.test.js b/bindings/wasm/tests/golden.test.js index 558a2a92..98a09735 100644 --- a/bindings/wasm/tests/golden.test.js +++ b/bindings/wasm/tests/golden.test.js @@ -39,6 +39,8 @@ function readBarRows(name) { } const MANIFEST = JSON.parse(fs.readFileSync(path.join(GOLDEN, 'wasm_manifest.json'), 'utf8')); +// Canonical Indicator::name() per indicator, the same string every binding returns. +const NAMES = JSON.parse(fs.readFileSync(path.join(GOLDEN, 'names.json'), 'utf8')); const ROWS = readCsv('input'); function deriv(o, h, l, c, v) { @@ -133,6 +135,7 @@ for (const spec of MANIFEST) { const Cls = W[spec.js]; assert.ok(Cls, `missing WASM class ${spec.js}`); const ind = new Cls(...spec.ctor); + assert.equal(ind.name(), NAMES[spec.canonical], `${spec.canonical}: name()`); const isBars = spec.out === 'bars' || spec.out === 'footprint'; const expected = isBars ? readBarRows('g_' + spec.canonical) : readCsv('g_' + spec.canonical); diff --git a/examples/c/gen_golden_test.py b/examples/c/gen_golden_test.py index e71f168c..352efb95 100644 --- a/examples/c/gen_golden_test.py +++ b/examples/c/gen_golden_test.py @@ -14,6 +14,9 @@ ROOT = os.path.normpath(os.path.join(os.path.dirname(__file__), "..", "..")) G = os.path.join(ROOT, "testdata", "golden") HDR = open(os.path.join(ROOT, "bindings", "c", "include", "wickra.h"), encoding="utf-8").read() +# Canonical core Indicator::name() per indicator, shared across every binding. +NAMES = json.load(open(os.path.join(G, "names.json"))) + # canonical -> C prefix, from the R wrappers (.wk_obj first arg == C symbol prefix). RSRC = open(os.path.join(ROOT, "bindings", "r", "R", "indicators.R"), encoding="utf-8").read() PREFIX = {m.group(1): m.group(2) @@ -113,6 +116,8 @@ def gen_check(canon): f' if (!h) {{ printf("FAIL {canon}: new returned NULL\\n"); return 1; }}', f" double **exp; int rows = read_fixture(\"g_{canon}\", &exp);", " int fails = 0;", + f' {{ const char *nm = wickra_{p}_name(h);', + f' if (!nm || strcmp(nm, {json.dumps(NAMES[canon])}) != 0) {{ printf("FAIL {canon}: name %s\\n", nm ? nm : "(null)"); fails++; }} }}', " for (int i = 0; i < N_INPUT; i++) {", " double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4];", " (void)o; (void)hi; (void)lo; (void)c; (void)v;", diff --git a/examples/c/golden_test.c b/examples/c/golden_test.c index e71fbf31..d83d4a8f 100644 --- a/examples/c/golden_test.c +++ b/examples/c/golden_test.c @@ -113,6 +113,8 @@ static int check_AbandonedBaby(void) { if (!h) { printf("FAIL AbandonedBaby: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AbandonedBaby", &exp); int fails = 0; + { const char *nm = wickra_abandoned_baby_name(h); + if (!nm || strcmp(nm, "AbandonedBaby") != 0) { printf("FAIL AbandonedBaby: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -129,6 +131,8 @@ static int check_Abcd(void) { if (!h) { printf("FAIL Abcd: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Abcd", &exp); int fails = 0; + { const char *nm = wickra_abcd_name(h); + if (!nm || strcmp(nm, "Abcd") != 0) { printf("FAIL Abcd: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -145,6 +149,8 @@ static int check_AbsoluteBreadthIndex(void) { if (!h) { printf("FAIL AbsoluteBreadthIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AbsoluteBreadthIndex", &exp); int fails = 0; + { const char *nm = wickra_absolute_breadth_index_name(h); + if (!nm || strcmp(nm, "AbsoluteBreadthIndex") != 0) { printf("FAIL AbsoluteBreadthIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -163,6 +169,8 @@ static int check_AccelerationBands(void) { if (!h) { printf("FAIL AccelerationBands: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AccelerationBands", &exp); int fails = 0; + { const char *nm = wickra_acceleration_bands_name(h); + if (!nm || strcmp(nm, "AccelerationBands") != 0) { printf("FAIL AccelerationBands: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -186,6 +194,8 @@ static int check_AcceleratorOscillator(void) { if (!h) { printf("FAIL AcceleratorOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AcceleratorOscillator", &exp); int fails = 0; + { const char *nm = wickra_accelerator_oscillator_name(h); + if (!nm || strcmp(nm, "AcceleratorOscillator") != 0) { printf("FAIL AcceleratorOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -202,6 +212,8 @@ static int check_AdOscillator(void) { if (!h) { printf("FAIL AdOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AdOscillator", &exp); int fails = 0; + { const char *nm = wickra_ad_oscillator_name(h); + if (!nm || strcmp(nm, "ADOSC") != 0) { printf("FAIL AdOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -218,6 +230,8 @@ static int check_AdVolumeLine(void) { if (!h) { printf("FAIL AdVolumeLine: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AdVolumeLine", &exp); int fails = 0; + { const char *nm = wickra_ad_volume_line_name(h); + if (!nm || strcmp(nm, "AdVolumeLine") != 0) { printf("FAIL AdVolumeLine: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -236,6 +250,8 @@ static int check_AdaptiveCci(void) { if (!h) { printf("FAIL AdaptiveCci: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AdaptiveCci", &exp); int fails = 0; + { const char *nm = wickra_adaptive_cci_name(h); + if (!nm || strcmp(nm, "AdaptiveCci") != 0) { printf("FAIL AdaptiveCci: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -252,6 +268,8 @@ static int check_AdaptiveCycle(void) { if (!h) { printf("FAIL AdaptiveCycle: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AdaptiveCycle", &exp); int fails = 0; + { const char *nm = wickra_adaptive_cycle_name(h); + if (!nm || strcmp(nm, "AdaptiveCycle") != 0) { printf("FAIL AdaptiveCycle: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -268,6 +286,8 @@ static int check_AdaptiveLaguerreFilter(void) { if (!h) { printf("FAIL AdaptiveLaguerreFilter: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AdaptiveLaguerreFilter", &exp); int fails = 0; + { const char *nm = wickra_adaptive_laguerre_filter_name(h); + if (!nm || strcmp(nm, "AdaptiveLaguerre") != 0) { printf("FAIL AdaptiveLaguerreFilter: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -284,6 +304,8 @@ static int check_AdaptiveRsi(void) { if (!h) { printf("FAIL AdaptiveRsi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AdaptiveRsi", &exp); int fails = 0; + { const char *nm = wickra_adaptive_rsi_name(h); + if (!nm || strcmp(nm, "AdaptiveRsi") != 0) { printf("FAIL AdaptiveRsi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -300,6 +322,8 @@ static int check_Adl(void) { if (!h) { printf("FAIL Adl: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Adl", &exp); int fails = 0; + { const char *nm = wickra_adl_name(h); + if (!nm || strcmp(nm, "ADL") != 0) { printf("FAIL Adl: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -316,6 +340,8 @@ static int check_AdvanceBlock(void) { if (!h) { printf("FAIL AdvanceBlock: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AdvanceBlock", &exp); int fails = 0; + { const char *nm = wickra_advance_block_name(h); + if (!nm || strcmp(nm, "AdvanceBlock") != 0) { printf("FAIL AdvanceBlock: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -332,6 +358,8 @@ static int check_AdvanceDecline(void) { if (!h) { printf("FAIL AdvanceDecline: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AdvanceDecline", &exp); int fails = 0; + { const char *nm = wickra_advance_decline_name(h); + if (!nm || strcmp(nm, "AdvanceDecline") != 0) { printf("FAIL AdvanceDecline: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -350,6 +378,8 @@ static int check_AdvanceDeclineRatio(void) { if (!h) { printf("FAIL AdvanceDeclineRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AdvanceDeclineRatio", &exp); int fails = 0; + { const char *nm = wickra_advance_decline_ratio_name(h); + if (!nm || strcmp(nm, "AdvanceDeclineRatio") != 0) { printf("FAIL AdvanceDeclineRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -368,6 +398,8 @@ static int check_Adx(void) { if (!h) { printf("FAIL Adx: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Adx", &exp); int fails = 0; + { const char *nm = wickra_adx_name(h); + if (!nm || strcmp(nm, "ADX") != 0) { printf("FAIL Adx: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -391,6 +423,8 @@ static int check_Adxr(void) { if (!h) { printf("FAIL Adxr: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Adxr", &exp); int fails = 0; + { const char *nm = wickra_adxr_name(h); + if (!nm || strcmp(nm, "ADXR") != 0) { printf("FAIL Adxr: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -407,6 +441,8 @@ static int check_Alligator(void) { if (!h) { printf("FAIL Alligator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Alligator", &exp); int fails = 0; + { const char *nm = wickra_alligator_name(h); + if (!nm || strcmp(nm, "Alligator") != 0) { printf("FAIL Alligator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -430,6 +466,8 @@ static int check_Alma(void) { if (!h) { printf("FAIL Alma: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Alma", &exp); int fails = 0; + { const char *nm = wickra_alma_name(h); + if (!nm || strcmp(nm, "ALMA") != 0) { printf("FAIL Alma: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -446,6 +484,8 @@ static int check_Alpha(void) { if (!h) { printf("FAIL Alpha: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Alpha", &exp); int fails = 0; + { const char *nm = wickra_alpha_name(h); + if (!nm || strcmp(nm, "Alpha") != 0) { printf("FAIL Alpha: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -462,6 +502,8 @@ static int check_AmihudIlliquidity(void) { if (!h) { printf("FAIL AmihudIlliquidity: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AmihudIlliquidity", &exp); int fails = 0; + { const char *nm = wickra_amihud_illiquidity_name(h); + if (!nm || strcmp(nm, "AmihudIlliquidity") != 0) { printf("FAIL AmihudIlliquidity: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -478,6 +520,8 @@ static int check_AnchoredRsi(void) { if (!h) { printf("FAIL AnchoredRsi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AnchoredRsi", &exp); int fails = 0; + { const char *nm = wickra_anchored_rsi_name(h); + if (!nm || strcmp(nm, "AnchoredRSI") != 0) { printf("FAIL AnchoredRsi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -494,6 +538,8 @@ static int check_AnchoredVwap(void) { if (!h) { printf("FAIL AnchoredVwap: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AnchoredVwap", &exp); int fails = 0; + { const char *nm = wickra_anchored_vwap_name(h); + if (!nm || strcmp(nm, "AnchoredVWAP") != 0) { printf("FAIL AnchoredVwap: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -510,6 +556,8 @@ static int check_AndrewsPitchfork(void) { if (!h) { printf("FAIL AndrewsPitchfork: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AndrewsPitchfork", &exp); int fails = 0; + { const char *nm = wickra_andrews_pitchfork_name(h); + if (!nm || strcmp(nm, "AndrewsPitchfork") != 0) { printf("FAIL AndrewsPitchfork: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -533,6 +581,8 @@ static int check_Apo(void) { if (!h) { printf("FAIL Apo: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Apo", &exp); int fails = 0; + { const char *nm = wickra_apo_name(h); + if (!nm || strcmp(nm, "APO") != 0) { printf("FAIL Apo: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -549,6 +599,8 @@ static int check_Aroon(void) { if (!h) { printf("FAIL Aroon: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Aroon", &exp); int fails = 0; + { const char *nm = wickra_aroon_name(h); + if (!nm || strcmp(nm, "Aroon") != 0) { printf("FAIL Aroon: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -571,6 +623,8 @@ static int check_AroonOscillator(void) { if (!h) { printf("FAIL AroonOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AroonOscillator", &exp); int fails = 0; + { const char *nm = wickra_aroon_oscillator_name(h); + if (!nm || strcmp(nm, "AroonOscillator") != 0) { printf("FAIL AroonOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -587,6 +641,8 @@ static int check_Atr(void) { if (!h) { printf("FAIL Atr: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Atr", &exp); int fails = 0; + { const char *nm = wickra_atr_name(h); + if (!nm || strcmp(nm, "ATR") != 0) { printf("FAIL Atr: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -603,6 +659,8 @@ static int check_AtrBands(void) { if (!h) { printf("FAIL AtrBands: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AtrBands", &exp); int fails = 0; + { const char *nm = wickra_atr_bands_name(h); + if (!nm || strcmp(nm, "AtrBands") != 0) { printf("FAIL AtrBands: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -626,6 +684,8 @@ static int check_AtrRatchet(void) { if (!h) { printf("FAIL AtrRatchet: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AtrRatchet", &exp); int fails = 0; + { const char *nm = wickra_atr_ratchet_name(h); + if (!nm || strcmp(nm, "AtrRatchet") != 0) { printf("FAIL AtrRatchet: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -648,6 +708,8 @@ static int check_AtrTrailingStop(void) { if (!h) { printf("FAIL AtrTrailingStop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AtrTrailingStop", &exp); int fails = 0; + { const char *nm = wickra_atr_trailing_stop_name(h); + if (!nm || strcmp(nm, "AtrTrailingStop") != 0) { printf("FAIL AtrTrailingStop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -664,6 +726,8 @@ static int check_AutoFib(void) { if (!h) { printf("FAIL AutoFib: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AutoFib", &exp); int fails = 0; + { const char *nm = wickra_auto_fib_name(h); + if (!nm || strcmp(nm, "AutoFib") != 0) { printf("FAIL AutoFib: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -691,6 +755,8 @@ static int check_Autocorrelation(void) { if (!h) { printf("FAIL Autocorrelation: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Autocorrelation", &exp); int fails = 0; + { const char *nm = wickra_autocorrelation_name(h); + if (!nm || strcmp(nm, "Autocorrelation") != 0) { printf("FAIL Autocorrelation: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -707,6 +773,8 @@ static int check_AutocorrelationPeriodogram(void) { if (!h) { printf("FAIL AutocorrelationPeriodogram: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AutocorrelationPeriodogram", &exp); int fails = 0; + { const char *nm = wickra_autocorrelation_periodogram_name(h); + if (!nm || strcmp(nm, "AutocorrelationPeriodogram") != 0) { printf("FAIL AutocorrelationPeriodogram: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -723,6 +791,8 @@ static int check_AverageDailyRange(void) { if (!h) { printf("FAIL AverageDailyRange: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AverageDailyRange", &exp); int fails = 0; + { const char *nm = wickra_average_daily_range_name(h); + if (!nm || strcmp(nm, "AverageDailyRange") != 0) { printf("FAIL AverageDailyRange: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -739,6 +809,8 @@ static int check_AverageDrawdown(void) { if (!h) { printf("FAIL AverageDrawdown: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AverageDrawdown", &exp); int fails = 0; + { const char *nm = wickra_average_drawdown_name(h); + if (!nm || strcmp(nm, "AverageDrawdown") != 0) { printf("FAIL AverageDrawdown: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -755,6 +827,8 @@ static int check_AvgPrice(void) { if (!h) { printf("FAIL AvgPrice: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AvgPrice", &exp); int fails = 0; + { const char *nm = wickra_avg_price_name(h); + if (!nm || strcmp(nm, "AVGPRICE") != 0) { printf("FAIL AvgPrice: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -771,6 +845,8 @@ static int check_AwesomeOscillator(void) { if (!h) { printf("FAIL AwesomeOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AwesomeOscillator", &exp); int fails = 0; + { const char *nm = wickra_awesome_oscillator_name(h); + if (!nm || strcmp(nm, "AwesomeOscillator") != 0) { printf("FAIL AwesomeOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -787,6 +863,8 @@ static int check_AwesomeOscillatorHistogram(void) { if (!h) { printf("FAIL AwesomeOscillatorHistogram: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_AwesomeOscillatorHistogram", &exp); int fails = 0; + { const char *nm = wickra_awesome_oscillator_histogram_name(h); + if (!nm || strcmp(nm, "AwesomeOscillatorHistogram") != 0) { printf("FAIL AwesomeOscillatorHistogram: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -803,6 +881,8 @@ static int check_BalanceOfPower(void) { if (!h) { printf("FAIL BalanceOfPower: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BalanceOfPower", &exp); int fails = 0; + { const char *nm = wickra_balance_of_power_name(h); + if (!nm || strcmp(nm, "BalanceOfPower") != 0) { printf("FAIL BalanceOfPower: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -819,6 +899,8 @@ static int check_BandpassFilter(void) { if (!h) { printf("FAIL BandpassFilter: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BandpassFilter", &exp); int fails = 0; + { const char *nm = wickra_bandpass_filter_name(h); + if (!nm || strcmp(nm, "BandpassFilter") != 0) { printf("FAIL BandpassFilter: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -835,6 +917,8 @@ static int check_Bat(void) { if (!h) { printf("FAIL Bat: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Bat", &exp); int fails = 0; + { const char *nm = wickra_bat_name(h); + if (!nm || strcmp(nm, "Bat") != 0) { printf("FAIL Bat: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -851,6 +935,8 @@ static int check_BeltHold(void) { if (!h) { printf("FAIL BeltHold: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BeltHold", &exp); int fails = 0; + { const char *nm = wickra_belt_hold_name(h); + if (!nm || strcmp(nm, "BeltHold") != 0) { printf("FAIL BeltHold: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -867,6 +953,8 @@ static int check_Beta(void) { if (!h) { printf("FAIL Beta: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Beta", &exp); int fails = 0; + { const char *nm = wickra_beta_name(h); + if (!nm || strcmp(nm, "Beta") != 0) { printf("FAIL Beta: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -883,6 +971,8 @@ static int check_BetaNeutralSpread(void) { if (!h) { printf("FAIL BetaNeutralSpread: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BetaNeutralSpread", &exp); int fails = 0; + { const char *nm = wickra_beta_neutral_spread_name(h); + if (!nm || strcmp(nm, "BetaNeutralSpread") != 0) { printf("FAIL BetaNeutralSpread: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -899,6 +989,8 @@ static int check_BetterVolume(void) { if (!h) { printf("FAIL BetterVolume: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BetterVolume", &exp); int fails = 0; + { const char *nm = wickra_better_volume_name(h); + if (!nm || strcmp(nm, "BetterVolume") != 0) { printf("FAIL BetterVolume: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -915,6 +1007,8 @@ static int check_BipowerVariation(void) { if (!h) { printf("FAIL BipowerVariation: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BipowerVariation", &exp); int fails = 0; + { const char *nm = wickra_bipower_variation_name(h); + if (!nm || strcmp(nm, "BipowerVariation") != 0) { printf("FAIL BipowerVariation: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -931,6 +1025,8 @@ static int check_BodySizePct(void) { if (!h) { printf("FAIL BodySizePct: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BodySizePct", &exp); int fails = 0; + { const char *nm = wickra_body_size_pct_name(h); + if (!nm || strcmp(nm, "BodySizePct") != 0) { printf("FAIL BodySizePct: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -947,6 +1043,8 @@ static int check_BollingerBands(void) { if (!h) { printf("FAIL BollingerBands: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BollingerBands", &exp); int fails = 0; + { const char *nm = wickra_bollinger_bands_name(h); + if (!nm || strcmp(nm, "BollingerBands") != 0) { printf("FAIL BollingerBands: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -971,6 +1069,8 @@ static int check_BollingerBandwidth(void) { if (!h) { printf("FAIL BollingerBandwidth: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BollingerBandwidth", &exp); int fails = 0; + { const char *nm = wickra_bollinger_bandwidth_name(h); + if (!nm || strcmp(nm, "BollingerBandwidth") != 0) { printf("FAIL BollingerBandwidth: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -987,6 +1087,8 @@ static int check_BomarBands(void) { if (!h) { printf("FAIL BomarBands: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BomarBands", &exp); int fails = 0; + { const char *nm = wickra_bomar_bands_name(h); + if (!nm || strcmp(nm, "BomarBands") != 0) { printf("FAIL BomarBands: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1010,6 +1112,8 @@ static int check_BreadthThrust(void) { if (!h) { printf("FAIL BreadthThrust: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BreadthThrust", &exp); int fails = 0; + { const char *nm = wickra_breadth_thrust_name(h); + if (!nm || strcmp(nm, "BreadthThrust") != 0) { printf("FAIL BreadthThrust: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1028,6 +1132,8 @@ static int check_Breakaway(void) { if (!h) { printf("FAIL Breakaway: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Breakaway", &exp); int fails = 0; + { const char *nm = wickra_breakaway_name(h); + if (!nm || strcmp(nm, "Breakaway") != 0) { printf("FAIL Breakaway: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1044,6 +1150,8 @@ static int check_BullishPercentIndex(void) { if (!h) { printf("FAIL BullishPercentIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BullishPercentIndex", &exp); int fails = 0; + { const char *nm = wickra_bullish_percent_index_name(h); + if (!nm || strcmp(nm, "BullishPercentIndex") != 0) { printf("FAIL BullishPercentIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1062,6 +1170,8 @@ static int check_BurkeRatio(void) { if (!h) { printf("FAIL BurkeRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_BurkeRatio", &exp); int fails = 0; + { const char *nm = wickra_burke_ratio_name(h); + if (!nm || strcmp(nm, "BurkeRatio") != 0) { printf("FAIL BurkeRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1078,6 +1188,8 @@ static int check_Butterfly(void) { if (!h) { printf("FAIL Butterfly: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Butterfly", &exp); int fails = 0; + { const char *nm = wickra_butterfly_name(h); + if (!nm || strcmp(nm, "Butterfly") != 0) { printf("FAIL Butterfly: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1094,6 +1206,8 @@ static int check_CalendarSpread(void) { if (!h) { printf("FAIL CalendarSpread: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CalendarSpread", &exp); int fails = 0; + { const char *nm = wickra_calendar_spread_name(h); + if (!nm || strcmp(nm, "CalendarSpread") != 0) { printf("FAIL CalendarSpread: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1111,6 +1225,8 @@ static int check_CalmarRatio(void) { if (!h) { printf("FAIL CalmarRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CalmarRatio", &exp); int fails = 0; + { const char *nm = wickra_calmar_ratio_name(h); + if (!nm || strcmp(nm, "CalmarRatio") != 0) { printf("FAIL CalmarRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1127,6 +1243,8 @@ static int check_Camarilla(void) { if (!h) { printf("FAIL Camarilla: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Camarilla", &exp); int fails = 0; + { const char *nm = wickra_camarilla_name(h); + if (!nm || strcmp(nm, "Camarilla") != 0) { printf("FAIL Camarilla: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1156,6 +1274,8 @@ static int check_CandleVolume(void) { if (!h) { printf("FAIL CandleVolume: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CandleVolume", &exp); int fails = 0; + { const char *nm = wickra_candle_volume_name(h); + if (!nm || strcmp(nm, "CandleVolume") != 0) { printf("FAIL CandleVolume: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1178,6 +1298,8 @@ static int check_Cci(void) { if (!h) { printf("FAIL Cci: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Cci", &exp); int fails = 0; + { const char *nm = wickra_cci_name(h); + if (!nm || strcmp(nm, "CCI") != 0) { printf("FAIL Cci: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1194,6 +1316,8 @@ static int check_CenterOfGravity(void) { if (!h) { printf("FAIL CenterOfGravity: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CenterOfGravity", &exp); int fails = 0; + { const char *nm = wickra_center_of_gravity_name(h); + if (!nm || strcmp(nm, "CenterOfGravity") != 0) { printf("FAIL CenterOfGravity: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1210,6 +1334,8 @@ static int check_CentralPivotRange(void) { if (!h) { printf("FAIL CentralPivotRange: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CentralPivotRange", &exp); int fails = 0; + { const char *nm = wickra_central_pivot_range_name(h); + if (!nm || strcmp(nm, "CentralPivotRange") != 0) { printf("FAIL CentralPivotRange: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1233,6 +1359,8 @@ static int check_Cfo(void) { if (!h) { printf("FAIL Cfo: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Cfo", &exp); int fails = 0; + { const char *nm = wickra_cfo_name(h); + if (!nm || strcmp(nm, "CFO") != 0) { printf("FAIL Cfo: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1249,6 +1377,8 @@ static int check_ChaikinMoneyFlow(void) { if (!h) { printf("FAIL ChaikinMoneyFlow: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ChaikinMoneyFlow", &exp); int fails = 0; + { const char *nm = wickra_chaikin_money_flow_name(h); + if (!nm || strcmp(nm, "CMF") != 0) { printf("FAIL ChaikinMoneyFlow: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1265,6 +1395,8 @@ static int check_ChaikinOscillator(void) { if (!h) { printf("FAIL ChaikinOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ChaikinOscillator", &exp); int fails = 0; + { const char *nm = wickra_chaikin_oscillator_name(h); + if (!nm || strcmp(nm, "ChaikinOscillator") != 0) { printf("FAIL ChaikinOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1281,6 +1413,8 @@ static int check_ChaikinVolatility(void) { if (!h) { printf("FAIL ChaikinVolatility: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ChaikinVolatility", &exp); int fails = 0; + { const char *nm = wickra_chaikin_volatility_name(h); + if (!nm || strcmp(nm, "ChaikinVolatility") != 0) { printf("FAIL ChaikinVolatility: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1297,6 +1431,8 @@ static int check_ChandeKrollStop(void) { if (!h) { printf("FAIL ChandeKrollStop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ChandeKrollStop", &exp); int fails = 0; + { const char *nm = wickra_chande_kroll_stop_name(h); + if (!nm || strcmp(nm, "ChandeKrollStop") != 0) { printf("FAIL ChandeKrollStop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1319,6 +1455,8 @@ static int check_ChandelierExit(void) { if (!h) { printf("FAIL ChandelierExit: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ChandelierExit", &exp); int fails = 0; + { const char *nm = wickra_chandelier_exit_name(h); + if (!nm || strcmp(nm, "ChandelierExit") != 0) { printf("FAIL ChandelierExit: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1341,6 +1479,8 @@ static int check_ChoppinessIndex(void) { if (!h) { printf("FAIL ChoppinessIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ChoppinessIndex", &exp); int fails = 0; + { const char *nm = wickra_choppiness_index_name(h); + if (!nm || strcmp(nm, "ChoppinessIndex") != 0) { printf("FAIL ChoppinessIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1357,6 +1497,8 @@ static int check_ClassicPivots(void) { if (!h) { printf("FAIL ClassicPivots: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ClassicPivots", &exp); int fails = 0; + { const char *nm = wickra_classic_pivots_name(h); + if (!nm || strcmp(nm, "ClassicPivots") != 0) { printf("FAIL ClassicPivots: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1384,6 +1526,8 @@ static int check_CloseVsOpen(void) { if (!h) { printf("FAIL CloseVsOpen: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CloseVsOpen", &exp); int fails = 0; + { const char *nm = wickra_close_vs_open_name(h); + if (!nm || strcmp(nm, "CloseVsOpen") != 0) { printf("FAIL CloseVsOpen: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1400,6 +1544,8 @@ static int check_ClosingMarubozu(void) { if (!h) { printf("FAIL ClosingMarubozu: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ClosingMarubozu", &exp); int fails = 0; + { const char *nm = wickra_closing_marubozu_name(h); + if (!nm || strcmp(nm, "ClosingMarubozu") != 0) { printf("FAIL ClosingMarubozu: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1416,6 +1562,8 @@ static int check_Cmo(void) { if (!h) { printf("FAIL Cmo: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Cmo", &exp); int fails = 0; + { const char *nm = wickra_cmo_name(h); + if (!nm || strcmp(nm, "CMO") != 0) { printf("FAIL Cmo: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1432,6 +1580,8 @@ static int check_CoefficientOfVariation(void) { if (!h) { printf("FAIL CoefficientOfVariation: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CoefficientOfVariation", &exp); int fails = 0; + { const char *nm = wickra_coefficient_of_variation_name(h); + if (!nm || strcmp(nm, "CoefficientOfVariation") != 0) { printf("FAIL CoefficientOfVariation: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1448,6 +1598,8 @@ static int check_Cointegration(void) { if (!h) { printf("FAIL Cointegration: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Cointegration", &exp); int fails = 0; + { const char *nm = wickra_cointegration_name(h); + if (!nm || strcmp(nm, "Cointegration") != 0) { printf("FAIL Cointegration: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1471,6 +1623,8 @@ static int check_CommonSenseRatio(void) { if (!h) { printf("FAIL CommonSenseRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CommonSenseRatio", &exp); int fails = 0; + { const char *nm = wickra_common_sense_ratio_name(h); + if (!nm || strcmp(nm, "CommonSenseRatio") != 0) { printf("FAIL CommonSenseRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1487,6 +1641,8 @@ static int check_CompositeProfile(void) { if (!h) { printf("FAIL CompositeProfile: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CompositeProfile", &exp); int fails = 0; + { const char *nm = wickra_composite_profile_name(h); + if (!nm || strcmp(nm, "CompositeProfile") != 0) { printf("FAIL CompositeProfile: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1510,6 +1666,8 @@ static int check_ConcealingBabySwallow(void) { if (!h) { printf("FAIL ConcealingBabySwallow: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ConcealingBabySwallow", &exp); int fails = 0; + { const char *nm = wickra_concealing_baby_swallow_name(h); + if (!nm || strcmp(nm, "ConcealingBabySwallow") != 0) { printf("FAIL ConcealingBabySwallow: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1526,6 +1684,8 @@ static int check_ConditionalValueAtRisk(void) { if (!h) { printf("FAIL ConditionalValueAtRisk: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ConditionalValueAtRisk", &exp); int fails = 0; + { const char *nm = wickra_conditional_value_at_risk_name(h); + if (!nm || strcmp(nm, "ConditionalValueAtRisk") != 0) { printf("FAIL ConditionalValueAtRisk: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1542,6 +1702,8 @@ static int check_ConnorsRsi(void) { if (!h) { printf("FAIL ConnorsRsi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ConnorsRsi", &exp); int fails = 0; + { const char *nm = wickra_connors_rsi_name(h); + if (!nm || strcmp(nm, "ConnorsRSI") != 0) { printf("FAIL ConnorsRsi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1558,6 +1720,8 @@ static int check_Coppock(void) { if (!h) { printf("FAIL Coppock: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Coppock", &exp); int fails = 0; + { const char *nm = wickra_coppock_name(h); + if (!nm || strcmp(nm, "Coppock") != 0) { printf("FAIL Coppock: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1574,6 +1738,8 @@ static int check_CorrelationTrendIndicator(void) { if (!h) { printf("FAIL CorrelationTrendIndicator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CorrelationTrendIndicator", &exp); int fails = 0; + { const char *nm = wickra_correlation_trend_indicator_name(h); + if (!nm || strcmp(nm, "CorrelationTrendIndicator") != 0) { printf("FAIL CorrelationTrendIndicator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1590,6 +1756,8 @@ static int check_Counterattack(void) { if (!h) { printf("FAIL Counterattack: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Counterattack", &exp); int fails = 0; + { const char *nm = wickra_counterattack_name(h); + if (!nm || strcmp(nm, "Counterattack") != 0) { printf("FAIL Counterattack: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1606,6 +1774,8 @@ static int check_Crab(void) { if (!h) { printf("FAIL Crab: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Crab", &exp); int fails = 0; + { const char *nm = wickra_crab_name(h); + if (!nm || strcmp(nm, "Crab") != 0) { printf("FAIL Crab: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1622,6 +1792,8 @@ static int check_CumulativeVolumeDelta(void) { if (!h) { printf("FAIL CumulativeVolumeDelta: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CumulativeVolumeDelta", &exp); int fails = 0; + { const char *nm = wickra_cumulative_volume_delta_name(h); + if (!nm || strcmp(nm, "CumulativeVolumeDelta") != 0) { printf("FAIL CumulativeVolumeDelta: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1638,6 +1810,8 @@ static int check_CumulativeVolumeIndex(void) { if (!h) { printf("FAIL CumulativeVolumeIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CumulativeVolumeIndex", &exp); int fails = 0; + { const char *nm = wickra_cumulative_volume_index_name(h); + if (!nm || strcmp(nm, "CumulativeVolumeIndex") != 0) { printf("FAIL CumulativeVolumeIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1656,6 +1830,8 @@ static int check_CupAndHandle(void) { if (!h) { printf("FAIL CupAndHandle: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CupAndHandle", &exp); int fails = 0; + { const char *nm = wickra_cup_and_handle_name(h); + if (!nm || strcmp(nm, "CupAndHandle") != 0) { printf("FAIL CupAndHandle: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1672,6 +1848,8 @@ static int check_CyberneticCycle(void) { if (!h) { printf("FAIL CyberneticCycle: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_CyberneticCycle", &exp); int fails = 0; + { const char *nm = wickra_cybernetic_cycle_name(h); + if (!nm || strcmp(nm, "CyberneticCycle") != 0) { printf("FAIL CyberneticCycle: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1688,6 +1866,8 @@ static int check_Cypher(void) { if (!h) { printf("FAIL Cypher: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Cypher", &exp); int fails = 0; + { const char *nm = wickra_cypher_name(h); + if (!nm || strcmp(nm, "Cypher") != 0) { printf("FAIL Cypher: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1704,6 +1884,8 @@ static int check_DayOfWeekProfile(void) { if (!h) { printf("FAIL DayOfWeekProfile: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DayOfWeekProfile", &exp); int fails = 0; + { const char *nm = wickra_day_of_week_profile_name(h); + if (!nm || strcmp(nm, "DayOfWeekProfile") != 0) { printf("FAIL DayOfWeekProfile: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1723,6 +1905,8 @@ static int check_Decycler(void) { if (!h) { printf("FAIL Decycler: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Decycler", &exp); int fails = 0; + { const char *nm = wickra_decycler_name(h); + if (!nm || strcmp(nm, "Decycler") != 0) { printf("FAIL Decycler: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1739,6 +1923,8 @@ static int check_DecyclerOscillator(void) { if (!h) { printf("FAIL DecyclerOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DecyclerOscillator", &exp); int fails = 0; + { const char *nm = wickra_decycler_oscillator_name(h); + if (!nm || strcmp(nm, "DecyclerOscillator") != 0) { printf("FAIL DecyclerOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1755,6 +1941,8 @@ static int check_Dema(void) { if (!h) { printf("FAIL Dema: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Dema", &exp); int fails = 0; + { const char *nm = wickra_dema_name(h); + if (!nm || strcmp(nm, "DEMA") != 0) { printf("FAIL Dema: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1771,6 +1959,8 @@ static int check_DemandIndex(void) { if (!h) { printf("FAIL DemandIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DemandIndex", &exp); int fails = 0; + { const char *nm = wickra_demand_index_name(h); + if (!nm || strcmp(nm, "DemandIndex") != 0) { printf("FAIL DemandIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1787,6 +1977,8 @@ static int check_DemarkPivots(void) { if (!h) { printf("FAIL DemarkPivots: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DemarkPivots", &exp); int fails = 0; + { const char *nm = wickra_demark_pivots_name(h); + if (!nm || strcmp(nm, "DemarkPivots") != 0) { printf("FAIL DemarkPivots: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1810,6 +2002,8 @@ static int check_DepthSlope(void) { if (!h) { printf("FAIL DepthSlope: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DepthSlope", &exp); int fails = 0; + { const char *nm = wickra_depth_slope_name(h); + if (!nm || strcmp(nm, "DepthSlope") != 0) { printf("FAIL DepthSlope: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1828,6 +2022,8 @@ static int check_DerivativeOscillator(void) { if (!h) { printf("FAIL DerivativeOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DerivativeOscillator", &exp); int fails = 0; + { const char *nm = wickra_derivative_oscillator_name(h); + if (!nm || strcmp(nm, "DerivativeOscillator") != 0) { printf("FAIL DerivativeOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1844,6 +2040,8 @@ static int check_DetrendedStdDev(void) { if (!h) { printf("FAIL DetrendedStdDev: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DetrendedStdDev", &exp); int fails = 0; + { const char *nm = wickra_detrended_std_dev_name(h); + if (!nm || strcmp(nm, "DetrendedStdDev") != 0) { printf("FAIL DetrendedStdDev: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1860,6 +2058,8 @@ static int check_DisparityIndex(void) { if (!h) { printf("FAIL DisparityIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DisparityIndex", &exp); int fails = 0; + { const char *nm = wickra_disparity_index_name(h); + if (!nm || strcmp(nm, "DisparityIndex") != 0) { printf("FAIL DisparityIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1876,6 +2076,8 @@ static int check_DistanceSsd(void) { if (!h) { printf("FAIL DistanceSsd: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DistanceSsd", &exp); int fails = 0; + { const char *nm = wickra_distance_ssd_name(h); + if (!nm || strcmp(nm, "DistanceSsd") != 0) { printf("FAIL DistanceSsd: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1892,6 +2094,8 @@ static int check_Doji(void) { if (!h) { printf("FAIL Doji: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Doji", &exp); int fails = 0; + { const char *nm = wickra_doji_name(h); + if (!nm || strcmp(nm, "Doji") != 0) { printf("FAIL Doji: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1908,6 +2112,8 @@ static int check_DojiStar(void) { if (!h) { printf("FAIL DojiStar: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DojiStar", &exp); int fails = 0; + { const char *nm = wickra_doji_star_name(h); + if (!nm || strcmp(nm, "DojiStar") != 0) { printf("FAIL DojiStar: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1924,6 +2130,8 @@ static int check_DollarBars(void) { if (!h) { printf("FAIL DollarBars: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DollarBars", &exp); int fails = 0; + { const char *nm = wickra_dollar_bars_name(h); + if (!nm || strcmp(nm, "DollarBars") != 0) { printf("FAIL DollarBars: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1949,6 +2157,8 @@ static int check_Donchian(void) { if (!h) { printf("FAIL Donchian: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Donchian", &exp); int fails = 0; + { const char *nm = wickra_donchian_name(h); + if (!nm || strcmp(nm, "DonchianChannels") != 0) { printf("FAIL Donchian: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1972,6 +2182,8 @@ static int check_DonchianStop(void) { if (!h) { printf("FAIL DonchianStop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DonchianStop", &exp); int fails = 0; + { const char *nm = wickra_donchian_stop_name(h); + if (!nm || strcmp(nm, "DonchianStop") != 0) { printf("FAIL DonchianStop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -1994,6 +2206,8 @@ static int check_DoubleBollinger(void) { if (!h) { printf("FAIL DoubleBollinger: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DoubleBollinger", &exp); int fails = 0; + { const char *nm = wickra_double_bollinger_name(h); + if (!nm || strcmp(nm, "DoubleBollinger") != 0) { printf("FAIL DoubleBollinger: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2019,6 +2233,8 @@ static int check_DoubleTopBottom(void) { if (!h) { printf("FAIL DoubleTopBottom: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DoubleTopBottom", &exp); int fails = 0; + { const char *nm = wickra_double_top_bottom_name(h); + if (!nm || strcmp(nm, "DoubleTopBottom") != 0) { printf("FAIL DoubleTopBottom: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2035,6 +2251,8 @@ static int check_DownsideGapThreeMethods(void) { if (!h) { printf("FAIL DownsideGapThreeMethods: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DownsideGapThreeMethods", &exp); int fails = 0; + { const char *nm = wickra_downside_gap_three_methods_name(h); + if (!nm || strcmp(nm, "DownsideGapThreeMethods") != 0) { printf("FAIL DownsideGapThreeMethods: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2051,6 +2269,8 @@ static int check_Dpo(void) { if (!h) { printf("FAIL Dpo: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Dpo", &exp); int fails = 0; + { const char *nm = wickra_dpo_name(h); + if (!nm || strcmp(nm, "DPO") != 0) { printf("FAIL Dpo: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2067,6 +2287,8 @@ static int check_DragonflyDoji(void) { if (!h) { printf("FAIL DragonflyDoji: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DragonflyDoji", &exp); int fails = 0; + { const char *nm = wickra_dragonfly_doji_name(h); + if (!nm || strcmp(nm, "DragonflyDoji") != 0) { printf("FAIL DragonflyDoji: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2083,6 +2305,8 @@ static int check_DrawdownDuration(void) { if (!h) { printf("FAIL DrawdownDuration: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DrawdownDuration", &exp); int fails = 0; + { const char *nm = wickra_drawdown_duration_name(h); + if (!nm || strcmp(nm, "DrawdownDuration") != 0) { printf("FAIL DrawdownDuration: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2099,6 +2323,8 @@ static int check_DumplingTop(void) { if (!h) { printf("FAIL DumplingTop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DumplingTop", &exp); int fails = 0; + { const char *nm = wickra_dumpling_top_name(h); + if (!nm || strcmp(nm, "DumplingTop") != 0) { printf("FAIL DumplingTop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2115,6 +2341,8 @@ static int check_Dx(void) { if (!h) { printf("FAIL Dx: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Dx", &exp); int fails = 0; + { const char *nm = wickra_dx_name(h); + if (!nm || strcmp(nm, "DX") != 0) { printf("FAIL Dx: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2131,6 +2359,8 @@ static int check_DynamicMomentumIndex(void) { if (!h) { printf("FAIL DynamicMomentumIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_DynamicMomentumIndex", &exp); int fails = 0; + { const char *nm = wickra_dynamic_momentum_index_name(h); + if (!nm || strcmp(nm, "DynamicMomentumIndex") != 0) { printf("FAIL DynamicMomentumIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2147,6 +2377,8 @@ static int check_EaseOfMovement(void) { if (!h) { printf("FAIL EaseOfMovement: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_EaseOfMovement", &exp); int fails = 0; + { const char *nm = wickra_ease_of_movement_name(h); + if (!nm || strcmp(nm, "EaseOfMovement") != 0) { printf("FAIL EaseOfMovement: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2163,6 +2395,8 @@ static int check_EffectiveSpread(void) { if (!h) { printf("FAIL EffectiveSpread: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_EffectiveSpread", &exp); int fails = 0; + { const char *nm = wickra_effective_spread_name(h); + if (!nm || strcmp(nm, "EffectiveSpread") != 0) { printf("FAIL EffectiveSpread: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2179,6 +2413,8 @@ static int check_EhlersStochastic(void) { if (!h) { printf("FAIL EhlersStochastic: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_EhlersStochastic", &exp); int fails = 0; + { const char *nm = wickra_ehlers_stochastic_name(h); + if (!nm || strcmp(nm, "EhlersStochastic") != 0) { printf("FAIL EhlersStochastic: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2195,6 +2431,8 @@ static int check_Ehma(void) { if (!h) { printf("FAIL Ehma: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Ehma", &exp); int fails = 0; + { const char *nm = wickra_ehma_name(h); + if (!nm || strcmp(nm, "EHMA") != 0) { printf("FAIL Ehma: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2211,6 +2449,8 @@ static int check_ElderImpulse(void) { if (!h) { printf("FAIL ElderImpulse: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ElderImpulse", &exp); int fails = 0; + { const char *nm = wickra_elder_impulse_name(h); + if (!nm || strcmp(nm, "ElderImpulse") != 0) { printf("FAIL ElderImpulse: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2227,6 +2467,8 @@ static int check_ElderRay(void) { if (!h) { printf("FAIL ElderRay: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ElderRay", &exp); int fails = 0; + { const char *nm = wickra_elder_ray_name(h); + if (!nm || strcmp(nm, "ElderRay") != 0) { printf("FAIL ElderRay: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2249,6 +2491,8 @@ static int check_ElderSafeZone(void) { if (!h) { printf("FAIL ElderSafeZone: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ElderSafeZone", &exp); int fails = 0; + { const char *nm = wickra_elder_safe_zone_name(h); + if (!nm || strcmp(nm, "ElderSafeZone") != 0) { printf("FAIL ElderSafeZone: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2271,6 +2515,8 @@ static int check_Ema(void) { if (!h) { printf("FAIL Ema: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Ema", &exp); int fails = 0; + { const char *nm = wickra_ema_name(h); + if (!nm || strcmp(nm, "EMA") != 0) { printf("FAIL Ema: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2287,6 +2533,8 @@ static int check_EmpiricalModeDecomposition(void) { if (!h) { printf("FAIL EmpiricalModeDecomposition: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_EmpiricalModeDecomposition", &exp); int fails = 0; + { const char *nm = wickra_empirical_mode_decomposition_name(h); + if (!nm || strcmp(nm, "EmpiricalModeDecomposition") != 0) { printf("FAIL EmpiricalModeDecomposition: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2303,6 +2551,8 @@ static int check_Engulfing(void) { if (!h) { printf("FAIL Engulfing: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Engulfing", &exp); int fails = 0; + { const char *nm = wickra_engulfing_name(h); + if (!nm || strcmp(nm, "Engulfing") != 0) { printf("FAIL Engulfing: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2319,6 +2569,8 @@ static int check_Equivolume(void) { if (!h) { printf("FAIL Equivolume: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Equivolume", &exp); int fails = 0; + { const char *nm = wickra_equivolume_name(h); + if (!nm || strcmp(nm, "Equivolume") != 0) { printf("FAIL Equivolume: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2341,6 +2593,8 @@ static int check_EstimatedLeverageRatio(void) { if (!h) { printf("FAIL EstimatedLeverageRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_EstimatedLeverageRatio", &exp); int fails = 0; + { const char *nm = wickra_estimated_leverage_ratio_name(h); + if (!nm || strcmp(nm, "EstimatedLeverageRatio") != 0) { printf("FAIL EstimatedLeverageRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2358,6 +2612,8 @@ static int check_EvenBetterSinewave(void) { if (!h) { printf("FAIL EvenBetterSinewave: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_EvenBetterSinewave", &exp); int fails = 0; + { const char *nm = wickra_even_better_sinewave_name(h); + if (!nm || strcmp(nm, "EvenBetterSinewave") != 0) { printf("FAIL EvenBetterSinewave: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2374,6 +2630,8 @@ static int check_EveningDojiStar(void) { if (!h) { printf("FAIL EveningDojiStar: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_EveningDojiStar", &exp); int fails = 0; + { const char *nm = wickra_evening_doji_star_name(h); + if (!nm || strcmp(nm, "EveningDojiStar") != 0) { printf("FAIL EveningDojiStar: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2390,6 +2648,8 @@ static int check_Evwma(void) { if (!h) { printf("FAIL Evwma: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Evwma", &exp); int fails = 0; + { const char *nm = wickra_evwma_name(h); + if (!nm || strcmp(nm, "EVWMA") != 0) { printf("FAIL Evwma: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2406,6 +2666,8 @@ static int check_EwmaVolatility(void) { if (!h) { printf("FAIL EwmaVolatility: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_EwmaVolatility", &exp); int fails = 0; + { const char *nm = wickra_ewma_volatility_name(h); + if (!nm || strcmp(nm, "EwmaVolatility") != 0) { printf("FAIL EwmaVolatility: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2422,6 +2684,8 @@ static int check_Expectancy(void) { if (!h) { printf("FAIL Expectancy: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Expectancy", &exp); int fails = 0; + { const char *nm = wickra_expectancy_name(h); + if (!nm || strcmp(nm, "Expectancy") != 0) { printf("FAIL Expectancy: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2438,6 +2702,8 @@ static int check_FallingThreeMethods(void) { if (!h) { printf("FAIL FallingThreeMethods: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FallingThreeMethods", &exp); int fails = 0; + { const char *nm = wickra_falling_three_methods_name(h); + if (!nm || strcmp(nm, "FallingThreeMethods") != 0) { printf("FAIL FallingThreeMethods: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2454,6 +2720,8 @@ static int check_Fama(void) { if (!h) { printf("FAIL Fama: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Fama", &exp); int fails = 0; + { const char *nm = wickra_fama_name(h); + if (!nm || strcmp(nm, "FAMA") != 0) { printf("FAIL Fama: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2470,6 +2738,8 @@ static int check_FibArcs(void) { if (!h) { printf("FAIL FibArcs: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FibArcs", &exp); int fails = 0; + { const char *nm = wickra_fib_arcs_name(h); + if (!nm || strcmp(nm, "FibArcs") != 0) { printf("FAIL FibArcs: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2493,6 +2763,8 @@ static int check_FibChannel(void) { if (!h) { printf("FAIL FibChannel: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FibChannel", &exp); int fails = 0; + { const char *nm = wickra_fib_channel_name(h); + if (!nm || strcmp(nm, "FibChannel") != 0) { printf("FAIL FibChannel: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2517,6 +2789,8 @@ static int check_FibConfluence(void) { if (!h) { printf("FAIL FibConfluence: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FibConfluence", &exp); int fails = 0; + { const char *nm = wickra_fib_confluence_name(h); + if (!nm || strcmp(nm, "FibConfluence") != 0) { printf("FAIL FibConfluence: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2539,6 +2813,8 @@ static int check_FibExtension(void) { if (!h) { printf("FAIL FibExtension: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FibExtension", &exp); int fails = 0; + { const char *nm = wickra_fib_extension_name(h); + if (!nm || strcmp(nm, "FibExtension") != 0) { printf("FAIL FibExtension: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2564,6 +2840,8 @@ static int check_FibFan(void) { if (!h) { printf("FAIL FibFan: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FibFan", &exp); int fails = 0; + { const char *nm = wickra_fib_fan_name(h); + if (!nm || strcmp(nm, "FibFan") != 0) { printf("FAIL FibFan: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2587,6 +2865,8 @@ static int check_FibProjection(void) { if (!h) { printf("FAIL FibProjection: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FibProjection", &exp); int fails = 0; + { const char *nm = wickra_fib_projection_name(h); + if (!nm || strcmp(nm, "FibProjection") != 0) { printf("FAIL FibProjection: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2611,6 +2891,8 @@ static int check_FibRetracement(void) { if (!h) { printf("FAIL FibRetracement: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FibRetracement", &exp); int fails = 0; + { const char *nm = wickra_fib_retracement_name(h); + if (!nm || strcmp(nm, "FibRetracement") != 0) { printf("FAIL FibRetracement: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2638,6 +2920,8 @@ static int check_FibTimeZones(void) { if (!h) { printf("FAIL FibTimeZones: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FibTimeZones", &exp); int fails = 0; + { const char *nm = wickra_fib_time_zones_name(h); + if (!nm || strcmp(nm, "FibTimeZones") != 0) { printf("FAIL FibTimeZones: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2660,6 +2944,8 @@ static int check_FibonacciPivots(void) { if (!h) { printf("FAIL FibonacciPivots: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FibonacciPivots", &exp); int fails = 0; + { const char *nm = wickra_fibonacci_pivots_name(h); + if (!nm || strcmp(nm, "FibonacciPivots") != 0) { printf("FAIL FibonacciPivots: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2687,6 +2973,8 @@ static int check_FisherRsi(void) { if (!h) { printf("FAIL FisherRsi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FisherRsi", &exp); int fails = 0; + { const char *nm = wickra_fisher_rsi_name(h); + if (!nm || strcmp(nm, "FisherRSI") != 0) { printf("FAIL FisherRsi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2703,6 +2991,8 @@ static int check_FisherTransform(void) { if (!h) { printf("FAIL FisherTransform: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FisherTransform", &exp); int fails = 0; + { const char *nm = wickra_fisher_transform_name(h); + if (!nm || strcmp(nm, "FisherTransform") != 0) { printf("FAIL FisherTransform: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2719,6 +3009,8 @@ static int check_FlagPennant(void) { if (!h) { printf("FAIL FlagPennant: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FlagPennant", &exp); int fails = 0; + { const char *nm = wickra_flag_pennant_name(h); + if (!nm || strcmp(nm, "FlagPennant") != 0) { printf("FAIL FlagPennant: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2735,6 +3027,8 @@ static int check_Footprint(void) { if (!h) { printf("FAIL Footprint: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Footprint", &exp); int fails = 0; + { const char *nm = wickra_footprint_name(h); + if (!nm || strcmp(nm, "Footprint") != 0) { printf("FAIL Footprint: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2758,6 +3052,8 @@ static int check_ForceIndex(void) { if (!h) { printf("FAIL ForceIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ForceIndex", &exp); int fails = 0; + { const char *nm = wickra_force_index_name(h); + if (!nm || strcmp(nm, "ForceIndex") != 0) { printf("FAIL ForceIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2774,6 +3070,8 @@ static int check_FractalChaosBands(void) { if (!h) { printf("FAIL FractalChaosBands: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FractalChaosBands", &exp); int fails = 0; + { const char *nm = wickra_fractal_chaos_bands_name(h); + if (!nm || strcmp(nm, "FractalChaosBands") != 0) { printf("FAIL FractalChaosBands: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2796,6 +3094,8 @@ static int check_Frama(void) { if (!h) { printf("FAIL Frama: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Frama", &exp); int fails = 0; + { const char *nm = wickra_frama_name(h); + if (!nm || strcmp(nm, "FRAMA") != 0) { printf("FAIL Frama: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2812,6 +3112,8 @@ static int check_FryPanBottom(void) { if (!h) { printf("FAIL FryPanBottom: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FryPanBottom", &exp); int fails = 0; + { const char *nm = wickra_fry_pan_bottom_name(h); + if (!nm || strcmp(nm, "FryPanBottom") != 0) { printf("FAIL FryPanBottom: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2828,6 +3130,8 @@ static int check_FundingBasis(void) { if (!h) { printf("FAIL FundingBasis: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FundingBasis", &exp); int fails = 0; + { const char *nm = wickra_funding_basis_name(h); + if (!nm || strcmp(nm, "FundingBasis") != 0) { printf("FAIL FundingBasis: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2845,6 +3149,8 @@ static int check_FundingImpliedApr(void) { if (!h) { printf("FAIL FundingImpliedApr: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FundingImpliedApr", &exp); int fails = 0; + { const char *nm = wickra_funding_implied_apr_name(h); + if (!nm || strcmp(nm, "FundingImpliedApr") != 0) { printf("FAIL FundingImpliedApr: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2862,6 +3168,8 @@ static int check_FundingRate(void) { if (!h) { printf("FAIL FundingRate: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FundingRate", &exp); int fails = 0; + { const char *nm = wickra_funding_rate_name(h); + if (!nm || strcmp(nm, "FundingRate") != 0) { printf("FAIL FundingRate: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2879,6 +3187,8 @@ static int check_FundingRateMean(void) { if (!h) { printf("FAIL FundingRateMean: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FundingRateMean", &exp); int fails = 0; + { const char *nm = wickra_funding_rate_mean_name(h); + if (!nm || strcmp(nm, "FundingRateMean") != 0) { printf("FAIL FundingRateMean: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2896,6 +3206,8 @@ static int check_FundingRateZScore(void) { if (!h) { printf("FAIL FundingRateZScore: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_FundingRateZScore", &exp); int fails = 0; + { const char *nm = wickra_funding_rate_z_score_name(h); + if (!nm || strcmp(nm, "FundingRateZScore") != 0) { printf("FAIL FundingRateZScore: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2913,6 +3225,8 @@ static int check_GainLossRatio(void) { if (!h) { printf("FAIL GainLossRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_GainLossRatio", &exp); int fails = 0; + { const char *nm = wickra_gain_loss_ratio_name(h); + if (!nm || strcmp(nm, "GainLossRatio") != 0) { printf("FAIL GainLossRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2929,6 +3243,8 @@ static int check_GainToPainRatio(void) { if (!h) { printf("FAIL GainToPainRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_GainToPainRatio", &exp); int fails = 0; + { const char *nm = wickra_gain_to_pain_ratio_name(h); + if (!nm || strcmp(nm, "GainToPainRatio") != 0) { printf("FAIL GainToPainRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2945,6 +3261,8 @@ static int check_GapSideBySideWhite(void) { if (!h) { printf("FAIL GapSideBySideWhite: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_GapSideBySideWhite", &exp); int fails = 0; + { const char *nm = wickra_gap_side_by_side_white_name(h); + if (!nm || strcmp(nm, "GapSideBySideWhite") != 0) { printf("FAIL GapSideBySideWhite: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2961,6 +3279,8 @@ static int check_Garch11(void) { if (!h) { printf("FAIL Garch11: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Garch11", &exp); int fails = 0; + { const char *nm = wickra_garch11_name(h); + if (!nm || strcmp(nm, "Garch11") != 0) { printf("FAIL Garch11: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2977,6 +3297,8 @@ static int check_GarmanKlassVolatility(void) { if (!h) { printf("FAIL GarmanKlassVolatility: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_GarmanKlassVolatility", &exp); int fails = 0; + { const char *nm = wickra_garman_klass_volatility_name(h); + if (!nm || strcmp(nm, "GarmanKlassVolatility") != 0) { printf("FAIL GarmanKlassVolatility: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -2993,6 +3315,8 @@ static int check_Gartley(void) { if (!h) { printf("FAIL Gartley: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Gartley", &exp); int fails = 0; + { const char *nm = wickra_gartley_name(h); + if (!nm || strcmp(nm, "Gartley") != 0) { printf("FAIL Gartley: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3009,6 +3333,8 @@ static int check_GatorOscillator(void) { if (!h) { printf("FAIL GatorOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_GatorOscillator", &exp); int fails = 0; + { const char *nm = wickra_gator_oscillator_name(h); + if (!nm || strcmp(nm, "GatorOscillator") != 0) { printf("FAIL GatorOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3031,6 +3357,8 @@ static int check_GeneralizedDema(void) { if (!h) { printf("FAIL GeneralizedDema: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_GeneralizedDema", &exp); int fails = 0; + { const char *nm = wickra_generalized_dema_name(h); + if (!nm || strcmp(nm, "GD") != 0) { printf("FAIL GeneralizedDema: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3047,6 +3375,8 @@ static int check_GeometricMa(void) { if (!h) { printf("FAIL GeometricMa: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_GeometricMa", &exp); int fails = 0; + { const char *nm = wickra_geometric_ma_name(h); + if (!nm || strcmp(nm, "GMA") != 0) { printf("FAIL GeometricMa: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3063,6 +3393,8 @@ static int check_GoldenPocket(void) { if (!h) { printf("FAIL GoldenPocket: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_GoldenPocket", &exp); int fails = 0; + { const char *nm = wickra_golden_pocket_name(h); + if (!nm || strcmp(nm, "GoldenPocket") != 0) { printf("FAIL GoldenPocket: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3086,6 +3418,8 @@ static int check_GrangerCausality(void) { if (!h) { printf("FAIL GrangerCausality: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_GrangerCausality", &exp); int fails = 0; + { const char *nm = wickra_granger_causality_name(h); + if (!nm || strcmp(nm, "GrangerCausality") != 0) { printf("FAIL GrangerCausality: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3102,6 +3436,8 @@ static int check_GravestoneDoji(void) { if (!h) { printf("FAIL GravestoneDoji: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_GravestoneDoji", &exp); int fails = 0; + { const char *nm = wickra_gravestone_doji_name(h); + if (!nm || strcmp(nm, "GravestoneDoji") != 0) { printf("FAIL GravestoneDoji: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3118,6 +3454,8 @@ static int check_Hammer(void) { if (!h) { printf("FAIL Hammer: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Hammer", &exp); int fails = 0; + { const char *nm = wickra_hammer_name(h); + if (!nm || strcmp(nm, "Hammer") != 0) { printf("FAIL Hammer: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3134,6 +3472,8 @@ static int check_HangingMan(void) { if (!h) { printf("FAIL HangingMan: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HangingMan", &exp); int fails = 0; + { const char *nm = wickra_hanging_man_name(h); + if (!nm || strcmp(nm, "HangingMan") != 0) { printf("FAIL HangingMan: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3150,6 +3490,8 @@ static int check_Harami(void) { if (!h) { printf("FAIL Harami: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Harami", &exp); int fails = 0; + { const char *nm = wickra_harami_name(h); + if (!nm || strcmp(nm, "Harami") != 0) { printf("FAIL Harami: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3166,6 +3508,8 @@ static int check_HaramiCross(void) { if (!h) { printf("FAIL HaramiCross: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HaramiCross", &exp); int fails = 0; + { const char *nm = wickra_harami_cross_name(h); + if (!nm || strcmp(nm, "HaramiCross") != 0) { printf("FAIL HaramiCross: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3182,6 +3526,8 @@ static int check_HasbrouckInformationShare(void) { if (!h) { printf("FAIL HasbrouckInformationShare: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HasbrouckInformationShare", &exp); int fails = 0; + { const char *nm = wickra_hasbrouck_information_share_name(h); + if (!nm || strcmp(nm, "HasbrouckInformationShare") != 0) { printf("FAIL HasbrouckInformationShare: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3198,6 +3544,8 @@ static int check_HeadAndShoulders(void) { if (!h) { printf("FAIL HeadAndShoulders: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HeadAndShoulders", &exp); int fails = 0; + { const char *nm = wickra_head_and_shoulders_name(h); + if (!nm || strcmp(nm, "HeadAndShoulders") != 0) { printf("FAIL HeadAndShoulders: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3214,6 +3562,8 @@ static int check_HeikinAshi(void) { if (!h) { printf("FAIL HeikinAshi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HeikinAshi", &exp); int fails = 0; + { const char *nm = wickra_heikin_ashi_name(h); + if (!nm || strcmp(nm, "HeikinAshi") != 0) { printf("FAIL HeikinAshi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3238,6 +3588,8 @@ static int check_HeikinAshiOscillator(void) { if (!h) { printf("FAIL HeikinAshiOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HeikinAshiOscillator", &exp); int fails = 0; + { const char *nm = wickra_heikin_ashi_oscillator_name(h); + if (!nm || strcmp(nm, "HeikinAshiOscillator") != 0) { printf("FAIL HeikinAshiOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3254,6 +3606,8 @@ static int check_HiLoActivator(void) { if (!h) { printf("FAIL HiLoActivator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HiLoActivator", &exp); int fails = 0; + { const char *nm = wickra_hi_lo_activator_name(h); + if (!nm || strcmp(nm, "HiLoActivator") != 0) { printf("FAIL HiLoActivator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3270,6 +3624,8 @@ static int check_HighLowIndex(void) { if (!h) { printf("FAIL HighLowIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HighLowIndex", &exp); int fails = 0; + { const char *nm = wickra_high_low_index_name(h); + if (!nm || strcmp(nm, "HighLowIndex") != 0) { printf("FAIL HighLowIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3288,6 +3644,8 @@ static int check_HighLowRange(void) { if (!h) { printf("FAIL HighLowRange: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HighLowRange", &exp); int fails = 0; + { const char *nm = wickra_high_low_range_name(h); + if (!nm || strcmp(nm, "HighLowRange") != 0) { printf("FAIL HighLowRange: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3304,6 +3662,8 @@ static int check_HighLowVolumeNodes(void) { if (!h) { printf("FAIL HighLowVolumeNodes: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HighLowVolumeNodes", &exp); int fails = 0; + { const char *nm = wickra_high_low_volume_nodes_name(h); + if (!nm || strcmp(nm, "HighLowVolumeNodes") != 0) { printf("FAIL HighLowVolumeNodes: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3326,6 +3686,8 @@ static int check_HighWave(void) { if (!h) { printf("FAIL HighWave: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HighWave", &exp); int fails = 0; + { const char *nm = wickra_high_wave_name(h); + if (!nm || strcmp(nm, "HighWave") != 0) { printf("FAIL HighWave: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3342,6 +3704,8 @@ static int check_HighpassFilter(void) { if (!h) { printf("FAIL HighpassFilter: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HighpassFilter", &exp); int fails = 0; + { const char *nm = wickra_highpass_filter_name(h); + if (!nm || strcmp(nm, "HighpassFilter") != 0) { printf("FAIL HighpassFilter: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3358,6 +3722,8 @@ static int check_Hikkake(void) { if (!h) { printf("FAIL Hikkake: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Hikkake", &exp); int fails = 0; + { const char *nm = wickra_hikkake_name(h); + if (!nm || strcmp(nm, "Hikkake") != 0) { printf("FAIL Hikkake: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3374,6 +3740,8 @@ static int check_HikkakeModified(void) { if (!h) { printf("FAIL HikkakeModified: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HikkakeModified", &exp); int fails = 0; + { const char *nm = wickra_hikkake_modified_name(h); + if (!nm || strcmp(nm, "HikkakeModified") != 0) { printf("FAIL HikkakeModified: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3390,6 +3758,8 @@ static int check_HilbertDominantCycle(void) { if (!h) { printf("FAIL HilbertDominantCycle: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HilbertDominantCycle", &exp); int fails = 0; + { const char *nm = wickra_hilbert_dominant_cycle_name(h); + if (!nm || strcmp(nm, "HilbertDominantCycle") != 0) { printf("FAIL HilbertDominantCycle: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3406,6 +3776,8 @@ static int check_HistoricalVolatility(void) { if (!h) { printf("FAIL HistoricalVolatility: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HistoricalVolatility", &exp); int fails = 0; + { const char *nm = wickra_historical_volatility_name(h); + if (!nm || strcmp(nm, "HistoricalVolatility") != 0) { printf("FAIL HistoricalVolatility: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3422,6 +3794,8 @@ static int check_Hma(void) { if (!h) { printf("FAIL Hma: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Hma", &exp); int fails = 0; + { const char *nm = wickra_hma_name(h); + if (!nm || strcmp(nm, "HMA") != 0) { printf("FAIL Hma: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3438,6 +3812,8 @@ static int check_HoltWinters(void) { if (!h) { printf("FAIL HoltWinters: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HoltWinters", &exp); int fails = 0; + { const char *nm = wickra_holt_winters_name(h); + if (!nm || strcmp(nm, "HoltWinters") != 0) { printf("FAIL HoltWinters: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3454,6 +3830,8 @@ static int check_HomingPigeon(void) { if (!h) { printf("FAIL HomingPigeon: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HomingPigeon", &exp); int fails = 0; + { const char *nm = wickra_homing_pigeon_name(h); + if (!nm || strcmp(nm, "HomingPigeon") != 0) { printf("FAIL HomingPigeon: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3470,6 +3848,8 @@ static int check_HtDcPhase(void) { if (!h) { printf("FAIL HtDcPhase: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HtDcPhase", &exp); int fails = 0; + { const char *nm = wickra_ht_dc_phase_name(h); + if (!nm || strcmp(nm, "HT_DCPHASE") != 0) { printf("FAIL HtDcPhase: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3486,6 +3866,8 @@ static int check_HtPhasor(void) { if (!h) { printf("FAIL HtPhasor: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HtPhasor", &exp); int fails = 0; + { const char *nm = wickra_ht_phasor_name(h); + if (!nm || strcmp(nm, "HT_PHASOR") != 0) { printf("FAIL HtPhasor: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3508,6 +3890,8 @@ static int check_HtTrendMode(void) { if (!h) { printf("FAIL HtTrendMode: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HtTrendMode", &exp); int fails = 0; + { const char *nm = wickra_ht_trend_mode_name(h); + if (!nm || strcmp(nm, "HT_TRENDMODE") != 0) { printf("FAIL HtTrendMode: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3524,6 +3908,8 @@ static int check_HurstChannel(void) { if (!h) { printf("FAIL HurstChannel: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HurstChannel", &exp); int fails = 0; + { const char *nm = wickra_hurst_channel_name(h); + if (!nm || strcmp(nm, "HurstChannel") != 0) { printf("FAIL HurstChannel: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3547,6 +3933,8 @@ static int check_HurstExponent(void) { if (!h) { printf("FAIL HurstExponent: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_HurstExponent", &exp); int fails = 0; + { const char *nm = wickra_hurst_exponent_name(h); + if (!nm || strcmp(nm, "HurstExponent") != 0) { printf("FAIL HurstExponent: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3563,6 +3951,8 @@ static int check_Ichimoku(void) { if (!h) { printf("FAIL Ichimoku: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Ichimoku", &exp); int fails = 0; + { const char *nm = wickra_ichimoku_name(h); + if (!nm || strcmp(nm, "Ichimoku") != 0) { printf("FAIL Ichimoku: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3588,6 +3978,8 @@ static int check_IdenticalThreeCrows(void) { if (!h) { printf("FAIL IdenticalThreeCrows: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_IdenticalThreeCrows", &exp); int fails = 0; + { const char *nm = wickra_identical_three_crows_name(h); + if (!nm || strcmp(nm, "IdenticalThreeCrows") != 0) { printf("FAIL IdenticalThreeCrows: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3604,6 +3996,8 @@ static int check_ImbalanceBars(void) { if (!h) { printf("FAIL ImbalanceBars: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ImbalanceBars", &exp); int fails = 0; + { const char *nm = wickra_imbalance_bars_name(h); + if (!nm || strcmp(nm, "ImbalanceBars") != 0) { printf("FAIL ImbalanceBars: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3629,6 +4023,8 @@ static int check_InNeck(void) { if (!h) { printf("FAIL InNeck: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_InNeck", &exp); int fails = 0; + { const char *nm = wickra_in_neck_name(h); + if (!nm || strcmp(nm, "InNeck") != 0) { printf("FAIL InNeck: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3645,6 +4041,8 @@ static int check_Inertia(void) { if (!h) { printf("FAIL Inertia: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Inertia", &exp); int fails = 0; + { const char *nm = wickra_inertia_name(h); + if (!nm || strcmp(nm, "Inertia") != 0) { printf("FAIL Inertia: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3661,6 +4059,8 @@ static int check_InformationRatio(void) { if (!h) { printf("FAIL InformationRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_InformationRatio", &exp); int fails = 0; + { const char *nm = wickra_information_ratio_name(h); + if (!nm || strcmp(nm, "InformationRatio") != 0) { printf("FAIL InformationRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3677,6 +4077,8 @@ static int check_InitialBalance(void) { if (!h) { printf("FAIL InitialBalance: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_InitialBalance", &exp); int fails = 0; + { const char *nm = wickra_initial_balance_name(h); + if (!nm || strcmp(nm, "InitialBalance") != 0) { printf("FAIL InitialBalance: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3699,6 +4101,8 @@ static int check_InstantaneousTrendline(void) { if (!h) { printf("FAIL InstantaneousTrendline: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_InstantaneousTrendline", &exp); int fails = 0; + { const char *nm = wickra_instantaneous_trendline_name(h); + if (!nm || strcmp(nm, "InstantaneousTrendline") != 0) { printf("FAIL InstantaneousTrendline: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3715,6 +4119,8 @@ static int check_IntradayIntensity(void) { if (!h) { printf("FAIL IntradayIntensity: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_IntradayIntensity", &exp); int fails = 0; + { const char *nm = wickra_intraday_intensity_name(h); + if (!nm || strcmp(nm, "IntradayIntensity") != 0) { printf("FAIL IntradayIntensity: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3731,6 +4137,8 @@ static int check_IntradayMomentumIndex(void) { if (!h) { printf("FAIL IntradayMomentumIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_IntradayMomentumIndex", &exp); int fails = 0; + { const char *nm = wickra_intraday_momentum_index_name(h); + if (!nm || strcmp(nm, "IMI") != 0) { printf("FAIL IntradayMomentumIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3747,6 +4155,8 @@ static int check_IntradayVolatilityProfile(void) { if (!h) { printf("FAIL IntradayVolatilityProfile: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_IntradayVolatilityProfile", &exp); int fails = 0; + { const char *nm = wickra_intraday_volatility_profile_name(h); + if (!nm || strcmp(nm, "IntradayVolatilityProfile") != 0) { printf("FAIL IntradayVolatilityProfile: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3766,6 +4176,8 @@ static int check_InverseFisherTransform(void) { if (!h) { printf("FAIL InverseFisherTransform: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_InverseFisherTransform", &exp); int fails = 0; + { const char *nm = wickra_inverse_fisher_transform_name(h); + if (!nm || strcmp(nm, "InverseFisherTransform") != 0) { printf("FAIL InverseFisherTransform: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3782,6 +4194,8 @@ static int check_InvertedHammer(void) { if (!h) { printf("FAIL InvertedHammer: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_InvertedHammer", &exp); int fails = 0; + { const char *nm = wickra_inverted_hammer_name(h); + if (!nm || strcmp(nm, "InvertedHammer") != 0) { printf("FAIL InvertedHammer: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3798,6 +4212,8 @@ static int check_JarqueBera(void) { if (!h) { printf("FAIL JarqueBera: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_JarqueBera", &exp); int fails = 0; + { const char *nm = wickra_jarque_bera_name(h); + if (!nm || strcmp(nm, "JarqueBera") != 0) { printf("FAIL JarqueBera: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3814,6 +4230,8 @@ static int check_Jma(void) { if (!h) { printf("FAIL Jma: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Jma", &exp); int fails = 0; + { const char *nm = wickra_jma_name(h); + if (!nm || strcmp(nm, "JMA") != 0) { printf("FAIL Jma: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3830,6 +4248,8 @@ static int check_JumpIndicator(void) { if (!h) { printf("FAIL JumpIndicator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_JumpIndicator", &exp); int fails = 0; + { const char *nm = wickra_jump_indicator_name(h); + if (!nm || strcmp(nm, "JumpIndicator") != 0) { printf("FAIL JumpIndicator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3846,6 +4266,8 @@ static int check_KRatio(void) { if (!h) { printf("FAIL KRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_KRatio", &exp); int fails = 0; + { const char *nm = wickra_k_ratio_name(h); + if (!nm || strcmp(nm, "KRatio") != 0) { printf("FAIL KRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3862,6 +4284,8 @@ static int check_KagiBars(void) { if (!h) { printf("FAIL KagiBars: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_KagiBars", &exp); int fails = 0; + { const char *nm = wickra_kagi_bars_name(h); + if (!nm || strcmp(nm, "KagiBars") != 0) { printf("FAIL KagiBars: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3884,6 +4308,8 @@ static int check_KalmanHedgeRatio(void) { if (!h) { printf("FAIL KalmanHedgeRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_KalmanHedgeRatio", &exp); int fails = 0; + { const char *nm = wickra_kalman_hedge_ratio_name(h); + if (!nm || strcmp(nm, "KalmanHedgeRatio") != 0) { printf("FAIL KalmanHedgeRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3907,6 +4333,8 @@ static int check_Kama(void) { if (!h) { printf("FAIL Kama: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Kama", &exp); int fails = 0; + { const char *nm = wickra_kama_name(h); + if (!nm || strcmp(nm, "KAMA") != 0) { printf("FAIL Kama: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3923,6 +4351,8 @@ static int check_KaseDevStop(void) { if (!h) { printf("FAIL KaseDevStop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_KaseDevStop", &exp); int fails = 0; + { const char *nm = wickra_kase_dev_stop_name(h); + if (!nm || strcmp(nm, "KaseDevStop") != 0) { printf("FAIL KaseDevStop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3945,6 +4375,8 @@ static int check_KasePermissionStochastic(void) { if (!h) { printf("FAIL KasePermissionStochastic: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_KasePermissionStochastic", &exp); int fails = 0; + { const char *nm = wickra_kase_permission_stochastic_name(h); + if (!nm || strcmp(nm, "KasePermissionStochastic") != 0) { printf("FAIL KasePermissionStochastic: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3967,6 +4399,8 @@ static int check_KellyCriterion(void) { if (!h) { printf("FAIL KellyCriterion: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_KellyCriterion", &exp); int fails = 0; + { const char *nm = wickra_kelly_criterion_name(h); + if (!nm || strcmp(nm, "KellyCriterion") != 0) { printf("FAIL KellyCriterion: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -3983,6 +4417,8 @@ static int check_Keltner(void) { if (!h) { printf("FAIL Keltner: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Keltner", &exp); int fails = 0; + { const char *nm = wickra_keltner_name(h); + if (!nm || strcmp(nm, "KeltnerChannels") != 0) { printf("FAIL Keltner: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4006,6 +4442,8 @@ static int check_KendallTau(void) { if (!h) { printf("FAIL KendallTau: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_KendallTau", &exp); int fails = 0; + { const char *nm = wickra_kendall_tau_name(h); + if (!nm || strcmp(nm, "KendallTau") != 0) { printf("FAIL KendallTau: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4022,6 +4460,8 @@ static int check_Kicking(void) { if (!h) { printf("FAIL Kicking: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Kicking", &exp); int fails = 0; + { const char *nm = wickra_kicking_name(h); + if (!nm || strcmp(nm, "Kicking") != 0) { printf("FAIL Kicking: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4038,6 +4478,8 @@ static int check_KickingByLength(void) { if (!h) { printf("FAIL KickingByLength: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_KickingByLength", &exp); int fails = 0; + { const char *nm = wickra_kicking_by_length_name(h); + if (!nm || strcmp(nm, "KickingByLength") != 0) { printf("FAIL KickingByLength: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4054,6 +4496,8 @@ static int check_Kst(void) { if (!h) { printf("FAIL Kst: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Kst", &exp); int fails = 0; + { const char *nm = wickra_kst_name(h); + if (!nm || strcmp(nm, "KST") != 0) { printf("FAIL Kst: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4076,6 +4520,8 @@ static int check_Kurtosis(void) { if (!h) { printf("FAIL Kurtosis: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Kurtosis", &exp); int fails = 0; + { const char *nm = wickra_kurtosis_name(h); + if (!nm || strcmp(nm, "Kurtosis") != 0) { printf("FAIL Kurtosis: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4092,6 +4538,8 @@ static int check_Kvo(void) { if (!h) { printf("FAIL Kvo: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Kvo", &exp); int fails = 0; + { const char *nm = wickra_kvo_name(h); + if (!nm || strcmp(nm, "KVO") != 0) { printf("FAIL Kvo: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4108,6 +4556,8 @@ static int check_KylesLambda(void) { if (!h) { printf("FAIL KylesLambda: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_KylesLambda", &exp); int fails = 0; + { const char *nm = wickra_kyles_lambda_name(h); + if (!nm || strcmp(nm, "KylesLambda") != 0) { printf("FAIL KylesLambda: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4124,6 +4574,8 @@ static int check_LadderBottom(void) { if (!h) { printf("FAIL LadderBottom: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LadderBottom", &exp); int fails = 0; + { const char *nm = wickra_ladder_bottom_name(h); + if (!nm || strcmp(nm, "LadderBottom") != 0) { printf("FAIL LadderBottom: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4140,6 +4592,8 @@ static int check_LaguerreRsi(void) { if (!h) { printf("FAIL LaguerreRsi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LaguerreRsi", &exp); int fails = 0; + { const char *nm = wickra_laguerre_rsi_name(h); + if (!nm || strcmp(nm, "LaguerreRSI") != 0) { printf("FAIL LaguerreRsi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4156,6 +4610,8 @@ static int check_LeadLagCrossCorrelation(void) { if (!h) { printf("FAIL LeadLagCrossCorrelation: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LeadLagCrossCorrelation", &exp); int fails = 0; + { const char *nm = wickra_lead_lag_cross_correlation_name(h); + if (!nm || strcmp(nm, "LeadLagCrossCorrelation") != 0) { printf("FAIL LeadLagCrossCorrelation: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4178,6 +4634,8 @@ static int check_LinRegAngle(void) { if (!h) { printf("FAIL LinRegAngle: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LinRegAngle", &exp); int fails = 0; + { const char *nm = wickra_lin_reg_angle_name(h); + if (!nm || strcmp(nm, "LinRegAngle") != 0) { printf("FAIL LinRegAngle: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4194,6 +4652,8 @@ static int check_LinRegChannel(void) { if (!h) { printf("FAIL LinRegChannel: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LinRegChannel", &exp); int fails = 0; + { const char *nm = wickra_lin_reg_channel_name(h); + if (!nm || strcmp(nm, "LinRegChannel") != 0) { printf("FAIL LinRegChannel: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4217,6 +4677,8 @@ static int check_LinRegIntercept(void) { if (!h) { printf("FAIL LinRegIntercept: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LinRegIntercept", &exp); int fails = 0; + { const char *nm = wickra_lin_reg_intercept_name(h); + if (!nm || strcmp(nm, "LINEARREG_INTERCEPT") != 0) { printf("FAIL LinRegIntercept: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4233,6 +4695,8 @@ static int check_LinRegSlope(void) { if (!h) { printf("FAIL LinRegSlope: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LinRegSlope", &exp); int fails = 0; + { const char *nm = wickra_lin_reg_slope_name(h); + if (!nm || strcmp(nm, "LinRegSlope") != 0) { printf("FAIL LinRegSlope: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4249,6 +4713,8 @@ static int check_LinearRegression(void) { if (!h) { printf("FAIL LinearRegression: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LinearRegression", &exp); int fails = 0; + { const char *nm = wickra_linear_regression_name(h); + if (!nm || strcmp(nm, "LinearRegression") != 0) { printf("FAIL LinearRegression: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4265,6 +4731,8 @@ static int check_LiquidationFeatures(void) { if (!h) { printf("FAIL LiquidationFeatures: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LiquidationFeatures", &exp); int fails = 0; + { const char *nm = wickra_liquidation_features_name(h); + if (!nm || strcmp(nm, "LiquidationFeatures") != 0) { printf("FAIL LiquidationFeatures: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4291,6 +4759,8 @@ static int check_LogReturn(void) { if (!h) { printf("FAIL LogReturn: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LogReturn", &exp); int fails = 0; + { const char *nm = wickra_log_return_name(h); + if (!nm || strcmp(nm, "LogReturn") != 0) { printf("FAIL LogReturn: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4307,6 +4777,8 @@ static int check_LongLeggedDoji(void) { if (!h) { printf("FAIL LongLeggedDoji: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LongLeggedDoji", &exp); int fails = 0; + { const char *nm = wickra_long_legged_doji_name(h); + if (!nm || strcmp(nm, "LongLeggedDoji") != 0) { printf("FAIL LongLeggedDoji: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4323,6 +4795,8 @@ static int check_LongLine(void) { if (!h) { printf("FAIL LongLine: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LongLine", &exp); int fails = 0; + { const char *nm = wickra_long_line_name(h); + if (!nm || strcmp(nm, "LongLine") != 0) { printf("FAIL LongLine: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4339,6 +4813,8 @@ static int check_LongShortRatio(void) { if (!h) { printf("FAIL LongShortRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_LongShortRatio", &exp); int fails = 0; + { const char *nm = wickra_long_short_ratio_name(h); + if (!nm || strcmp(nm, "LongShortRatio") != 0) { printf("FAIL LongShortRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4356,6 +4832,8 @@ static int check_M2Measure(void) { if (!h) { printf("FAIL M2Measure: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_M2Measure", &exp); int fails = 0; + { const char *nm = wickra_m2_measure_name(h); + if (!nm || strcmp(nm, "M2Measure") != 0) { printf("FAIL M2Measure: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4372,6 +4850,8 @@ static int check_MaEnvelope(void) { if (!h) { printf("FAIL MaEnvelope: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MaEnvelope", &exp); int fails = 0; + { const char *nm = wickra_ma_envelope_name(h); + if (!nm || strcmp(nm, "MaEnvelope") != 0) { printf("FAIL MaEnvelope: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4395,6 +4875,8 @@ static int check_MacdExt(void) { if (!h) { printf("FAIL MacdExt: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MacdExt", &exp); int fails = 0; + { const char *nm = wickra_macd_ext_name(h); + if (!nm || strcmp(nm, "MACDEXT") != 0) { printf("FAIL MacdExt: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4418,6 +4900,8 @@ static int check_MacdFix(void) { if (!h) { printf("FAIL MacdFix: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MacdFix", &exp); int fails = 0; + { const char *nm = wickra_macd_fix_name(h); + if (!nm || strcmp(nm, "MACDFIX") != 0) { printf("FAIL MacdFix: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4441,6 +4925,8 @@ static int check_MacdHistogram(void) { if (!h) { printf("FAIL MacdHistogram: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MacdHistogram", &exp); int fails = 0; + { const char *nm = wickra_macd_histogram_name(h); + if (!nm || strcmp(nm, "MacdHistogram") != 0) { printf("FAIL MacdHistogram: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4457,6 +4943,8 @@ static int check_MacdIndicator(void) { if (!h) { printf("FAIL MacdIndicator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MacdIndicator", &exp); int fails = 0; + { const char *nm = wickra_macd_indicator_name(h); + if (!nm || strcmp(nm, "MACD") != 0) { printf("FAIL MacdIndicator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4480,6 +4968,8 @@ static int check_Mama(void) { if (!h) { printf("FAIL Mama: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Mama", &exp); int fails = 0; + { const char *nm = wickra_mama_name(h); + if (!nm || strcmp(nm, "MAMA") != 0) { printf("FAIL Mama: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4502,6 +4992,8 @@ static int check_MarketFacilitationIndex(void) { if (!h) { printf("FAIL MarketFacilitationIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MarketFacilitationIndex", &exp); int fails = 0; + { const char *nm = wickra_market_facilitation_index_name(h); + if (!nm || strcmp(nm, "MarketFacilitationIndex") != 0) { printf("FAIL MarketFacilitationIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4518,6 +5010,8 @@ static int check_MartinRatio(void) { if (!h) { printf("FAIL MartinRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MartinRatio", &exp); int fails = 0; + { const char *nm = wickra_martin_ratio_name(h); + if (!nm || strcmp(nm, "MartinRatio") != 0) { printf("FAIL MartinRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4534,6 +5028,8 @@ static int check_Marubozu(void) { if (!h) { printf("FAIL Marubozu: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Marubozu", &exp); int fails = 0; + { const char *nm = wickra_marubozu_name(h); + if (!nm || strcmp(nm, "Marubozu") != 0) { printf("FAIL Marubozu: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4550,6 +5046,8 @@ static int check_MassIndex(void) { if (!h) { printf("FAIL MassIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MassIndex", &exp); int fails = 0; + { const char *nm = wickra_mass_index_name(h); + if (!nm || strcmp(nm, "MassIndex") != 0) { printf("FAIL MassIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4566,6 +5064,8 @@ static int check_MatHold(void) { if (!h) { printf("FAIL MatHold: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MatHold", &exp); int fails = 0; + { const char *nm = wickra_mat_hold_name(h); + if (!nm || strcmp(nm, "MatHold") != 0) { printf("FAIL MatHold: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4582,6 +5082,8 @@ static int check_MatchingLow(void) { if (!h) { printf("FAIL MatchingLow: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MatchingLow", &exp); int fails = 0; + { const char *nm = wickra_matching_low_name(h); + if (!nm || strcmp(nm, "MatchingLow") != 0) { printf("FAIL MatchingLow: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4598,6 +5100,8 @@ static int check_MaxDrawdown(void) { if (!h) { printf("FAIL MaxDrawdown: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MaxDrawdown", &exp); int fails = 0; + { const char *nm = wickra_max_drawdown_name(h); + if (!nm || strcmp(nm, "MaxDrawdown") != 0) { printf("FAIL MaxDrawdown: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4614,6 +5118,8 @@ static int check_McClellanOscillator(void) { if (!h) { printf("FAIL McClellanOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_McClellanOscillator", &exp); int fails = 0; + { const char *nm = wickra_mc_clellan_oscillator_name(h); + if (!nm || strcmp(nm, "McClellanOscillator") != 0) { printf("FAIL McClellanOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4632,6 +5138,8 @@ static int check_McClellanSummationIndex(void) { if (!h) { printf("FAIL McClellanSummationIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_McClellanSummationIndex", &exp); int fails = 0; + { const char *nm = wickra_mc_clellan_summation_index_name(h); + if (!nm || strcmp(nm, "McClellanSummationIndex") != 0) { printf("FAIL McClellanSummationIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4650,6 +5158,8 @@ static int check_McGinleyDynamic(void) { if (!h) { printf("FAIL McGinleyDynamic: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_McGinleyDynamic", &exp); int fails = 0; + { const char *nm = wickra_mc_ginley_dynamic_name(h); + if (!nm || strcmp(nm, "McGinleyDynamic") != 0) { printf("FAIL McGinleyDynamic: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4666,6 +5176,8 @@ static int check_MedianAbsoluteDeviation(void) { if (!h) { printf("FAIL MedianAbsoluteDeviation: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MedianAbsoluteDeviation", &exp); int fails = 0; + { const char *nm = wickra_median_absolute_deviation_name(h); + if (!nm || strcmp(nm, "MedianAbsoluteDeviation") != 0) { printf("FAIL MedianAbsoluteDeviation: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4682,6 +5194,8 @@ static int check_MedianChannel(void) { if (!h) { printf("FAIL MedianChannel: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MedianChannel", &exp); int fails = 0; + { const char *nm = wickra_median_channel_name(h); + if (!nm || strcmp(nm, "MedianChannel") != 0) { printf("FAIL MedianChannel: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4705,6 +5219,8 @@ static int check_MedianMa(void) { if (!h) { printf("FAIL MedianMa: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MedianMa", &exp); int fails = 0; + { const char *nm = wickra_median_ma_name(h); + if (!nm || strcmp(nm, "MedianMA") != 0) { printf("FAIL MedianMa: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4721,6 +5237,8 @@ static int check_MedianPrice(void) { if (!h) { printf("FAIL MedianPrice: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MedianPrice", &exp); int fails = 0; + { const char *nm = wickra_median_price_name(h); + if (!nm || strcmp(nm, "MedianPrice") != 0) { printf("FAIL MedianPrice: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4737,6 +5255,8 @@ static int check_Mfi(void) { if (!h) { printf("FAIL Mfi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Mfi", &exp); int fails = 0; + { const char *nm = wickra_mfi_name(h); + if (!nm || strcmp(nm, "MFI") != 0) { printf("FAIL Mfi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4753,6 +5273,8 @@ static int check_Microprice(void) { if (!h) { printf("FAIL Microprice: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Microprice", &exp); int fails = 0; + { const char *nm = wickra_microprice_name(h); + if (!nm || strcmp(nm, "Microprice") != 0) { printf("FAIL Microprice: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4771,6 +5293,8 @@ static int check_MidPoint(void) { if (!h) { printf("FAIL MidPoint: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MidPoint", &exp); int fails = 0; + { const char *nm = wickra_mid_point_name(h); + if (!nm || strcmp(nm, "MIDPOINT") != 0) { printf("FAIL MidPoint: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4787,6 +5311,8 @@ static int check_MidPrice(void) { if (!h) { printf("FAIL MidPrice: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MidPrice", &exp); int fails = 0; + { const char *nm = wickra_mid_price_name(h); + if (!nm || strcmp(nm, "MIDPRICE") != 0) { printf("FAIL MidPrice: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4803,6 +5329,8 @@ static int check_MinusDi(void) { if (!h) { printf("FAIL MinusDi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MinusDi", &exp); int fails = 0; + { const char *nm = wickra_minus_di_name(h); + if (!nm || strcmp(nm, "MINUS_DI") != 0) { printf("FAIL MinusDi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4819,6 +5347,8 @@ static int check_MinusDm(void) { if (!h) { printf("FAIL MinusDm: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MinusDm", &exp); int fails = 0; + { const char *nm = wickra_minus_dm_name(h); + if (!nm || strcmp(nm, "MINUS_DM") != 0) { printf("FAIL MinusDm: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4835,6 +5365,8 @@ static int check_ModifiedMaStop(void) { if (!h) { printf("FAIL ModifiedMaStop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ModifiedMaStop", &exp); int fails = 0; + { const char *nm = wickra_modified_ma_stop_name(h); + if (!nm || strcmp(nm, "ModifiedMaStop") != 0) { printf("FAIL ModifiedMaStop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4857,6 +5389,8 @@ static int check_Mom(void) { if (!h) { printf("FAIL Mom: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Mom", &exp); int fails = 0; + { const char *nm = wickra_mom_name(h); + if (!nm || strcmp(nm, "MOM") != 0) { printf("FAIL Mom: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4873,6 +5407,8 @@ static int check_MorningDojiStar(void) { if (!h) { printf("FAIL MorningDojiStar: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MorningDojiStar", &exp); int fails = 0; + { const char *nm = wickra_morning_doji_star_name(h); + if (!nm || strcmp(nm, "MorningDojiStar") != 0) { printf("FAIL MorningDojiStar: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4889,6 +5425,8 @@ static int check_MorningEveningStar(void) { if (!h) { printf("FAIL MorningEveningStar: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MorningEveningStar", &exp); int fails = 0; + { const char *nm = wickra_morning_evening_star_name(h); + if (!nm || strcmp(nm, "MorningEveningStar") != 0) { printf("FAIL MorningEveningStar: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4905,6 +5443,8 @@ static int check_MurreyMathLines(void) { if (!h) { printf("FAIL MurreyMathLines: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_MurreyMathLines", &exp); int fails = 0; + { const char *nm = wickra_murrey_math_lines_name(h); + if (!nm || strcmp(nm, "MurreyMathLines") != 0) { printf("FAIL MurreyMathLines: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4934,6 +5474,8 @@ static int check_NakedPoc(void) { if (!h) { printf("FAIL NakedPoc: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_NakedPoc", &exp); int fails = 0; + { const char *nm = wickra_naked_poc_name(h); + if (!nm || strcmp(nm, "NakedPoc") != 0) { printf("FAIL NakedPoc: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4950,6 +5492,8 @@ static int check_Natr(void) { if (!h) { printf("FAIL Natr: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Natr", &exp); int fails = 0; + { const char *nm = wickra_natr_name(h); + if (!nm || strcmp(nm, "NATR") != 0) { printf("FAIL Natr: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4966,6 +5510,8 @@ static int check_NewHighsNewLows(void) { if (!h) { printf("FAIL NewHighsNewLows: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_NewHighsNewLows", &exp); int fails = 0; + { const char *nm = wickra_new_highs_new_lows_name(h); + if (!nm || strcmp(nm, "NewHighsNewLows") != 0) { printf("FAIL NewHighsNewLows: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -4984,6 +5530,8 @@ static int check_NewPriceLines(void) { if (!h) { printf("FAIL NewPriceLines: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_NewPriceLines", &exp); int fails = 0; + { const char *nm = wickra_new_price_lines_name(h); + if (!nm || strcmp(nm, "NewPriceLines") != 0) { printf("FAIL NewPriceLines: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5000,6 +5548,8 @@ static int check_Nrtr(void) { if (!h) { printf("FAIL Nrtr: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Nrtr", &exp); int fails = 0; + { const char *nm = wickra_nrtr_name(h); + if (!nm || strcmp(nm, "Nrtr") != 0) { printf("FAIL Nrtr: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5022,6 +5572,8 @@ static int check_Nvi(void) { if (!h) { printf("FAIL Nvi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Nvi", &exp); int fails = 0; + { const char *nm = wickra_nvi_name(h); + if (!nm || strcmp(nm, "NVI") != 0) { printf("FAIL Nvi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5038,6 +5590,8 @@ static int check_OIPriceDivergence(void) { if (!h) { printf("FAIL OIPriceDivergence: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OIPriceDivergence", &exp); int fails = 0; + { const char *nm = wickra_oi_price_divergence_name(h); + if (!nm || strcmp(nm, "OIPriceDivergence") != 0) { printf("FAIL OIPriceDivergence: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5055,6 +5609,8 @@ static int check_OIWeighted(void) { if (!h) { printf("FAIL OIWeighted: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OIWeighted", &exp); int fails = 0; + { const char *nm = wickra_oi_weighted_name(h); + if (!nm || strcmp(nm, "OIWeighted") != 0) { printf("FAIL OIWeighted: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5072,6 +5628,8 @@ static int check_Obv(void) { if (!h) { printf("FAIL Obv: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Obv", &exp); int fails = 0; + { const char *nm = wickra_obv_name(h); + if (!nm || strcmp(nm, "OBV") != 0) { printf("FAIL Obv: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5088,6 +5646,8 @@ static int check_OiToVolumeRatio(void) { if (!h) { printf("FAIL OiToVolumeRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OiToVolumeRatio", &exp); int fails = 0; + { const char *nm = wickra_oi_to_volume_ratio_name(h); + if (!nm || strcmp(nm, "OiToVolumeRatio") != 0) { printf("FAIL OiToVolumeRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5105,6 +5665,8 @@ static int check_OmegaRatio(void) { if (!h) { printf("FAIL OmegaRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OmegaRatio", &exp); int fails = 0; + { const char *nm = wickra_omega_ratio_name(h); + if (!nm || strcmp(nm, "OmegaRatio") != 0) { printf("FAIL OmegaRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5121,6 +5683,8 @@ static int check_OnNeck(void) { if (!h) { printf("FAIL OnNeck: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OnNeck", &exp); int fails = 0; + { const char *nm = wickra_on_neck_name(h); + if (!nm || strcmp(nm, "OnNeck") != 0) { printf("FAIL OnNeck: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5137,6 +5701,8 @@ static int check_OpenInterestDelta(void) { if (!h) { printf("FAIL OpenInterestDelta: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OpenInterestDelta", &exp); int fails = 0; + { const char *nm = wickra_open_interest_delta_name(h); + if (!nm || strcmp(nm, "OpenInterestDelta") != 0) { printf("FAIL OpenInterestDelta: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5154,6 +5720,8 @@ static int check_OpenInterestMomentum(void) { if (!h) { printf("FAIL OpenInterestMomentum: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OpenInterestMomentum", &exp); int fails = 0; + { const char *nm = wickra_open_interest_momentum_name(h); + if (!nm || strcmp(nm, "OpenInterestMomentum") != 0) { printf("FAIL OpenInterestMomentum: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5171,6 +5739,8 @@ static int check_OpeningMarubozu(void) { if (!h) { printf("FAIL OpeningMarubozu: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OpeningMarubozu", &exp); int fails = 0; + { const char *nm = wickra_opening_marubozu_name(h); + if (!nm || strcmp(nm, "OpeningMarubozu") != 0) { printf("FAIL OpeningMarubozu: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5187,6 +5757,8 @@ static int check_OpeningRange(void) { if (!h) { printf("FAIL OpeningRange: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OpeningRange", &exp); int fails = 0; + { const char *nm = wickra_opening_range_name(h); + if (!nm || strcmp(nm, "OpeningRange") != 0) { printf("FAIL OpeningRange: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5210,6 +5782,8 @@ static int check_OrderBookImbalanceFull(void) { if (!h) { printf("FAIL OrderBookImbalanceFull: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OrderBookImbalanceFull", &exp); int fails = 0; + { const char *nm = wickra_order_book_imbalance_full_name(h); + if (!nm || strcmp(nm, "OrderBookImbalanceFull") != 0) { printf("FAIL OrderBookImbalanceFull: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5228,6 +5802,8 @@ static int check_OrderBookImbalanceTop1(void) { if (!h) { printf("FAIL OrderBookImbalanceTop1: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OrderBookImbalanceTop1", &exp); int fails = 0; + { const char *nm = wickra_order_book_imbalance_top1_name(h); + if (!nm || strcmp(nm, "OrderBookImbalanceTop1") != 0) { printf("FAIL OrderBookImbalanceTop1: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5246,6 +5822,8 @@ static int check_OrderBookImbalanceTopN(void) { if (!h) { printf("FAIL OrderBookImbalanceTopN: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OrderBookImbalanceTopN", &exp); int fails = 0; + { const char *nm = wickra_order_book_imbalance_top_n_name(h); + if (!nm || strcmp(nm, "OrderBookImbalanceTopN") != 0) { printf("FAIL OrderBookImbalanceTopN: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5264,6 +5842,8 @@ static int check_OrderFlowImbalance(void) { if (!h) { printf("FAIL OrderFlowImbalance: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OrderFlowImbalance", &exp); int fails = 0; + { const char *nm = wickra_order_flow_imbalance_name(h); + if (!nm || strcmp(nm, "OrderFlowImbalance") != 0) { printf("FAIL OrderFlowImbalance: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5282,6 +5862,8 @@ static int check_OuHalfLife(void) { if (!h) { printf("FAIL OuHalfLife: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OuHalfLife", &exp); int fails = 0; + { const char *nm = wickra_ou_half_life_name(h); + if (!nm || strcmp(nm, "OuHalfLife") != 0) { printf("FAIL OuHalfLife: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5298,6 +5880,8 @@ static int check_OvernightGap(void) { if (!h) { printf("FAIL OvernightGap: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OvernightGap", &exp); int fails = 0; + { const char *nm = wickra_overnight_gap_name(h); + if (!nm || strcmp(nm, "OvernightGap") != 0) { printf("FAIL OvernightGap: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5314,6 +5898,8 @@ static int check_OvernightIntradayReturn(void) { if (!h) { printf("FAIL OvernightIntradayReturn: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_OvernightIntradayReturn", &exp); int fails = 0; + { const char *nm = wickra_overnight_intraday_return_name(h); + if (!nm || strcmp(nm, "OvernightIntradayReturn") != 0) { printf("FAIL OvernightIntradayReturn: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5336,6 +5922,8 @@ static int check_PainIndex(void) { if (!h) { printf("FAIL PainIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PainIndex", &exp); int fails = 0; + { const char *nm = wickra_pain_index_name(h); + if (!nm || strcmp(nm, "PainIndex") != 0) { printf("FAIL PainIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5352,6 +5940,8 @@ static int check_PairSpreadZScore(void) { if (!h) { printf("FAIL PairSpreadZScore: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PairSpreadZScore", &exp); int fails = 0; + { const char *nm = wickra_pair_spread_z_score_name(h); + if (!nm || strcmp(nm, "PairSpreadZScore") != 0) { printf("FAIL PairSpreadZScore: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5368,6 +5958,8 @@ static int check_PairwiseBeta(void) { if (!h) { printf("FAIL PairwiseBeta: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PairwiseBeta", &exp); int fails = 0; + { const char *nm = wickra_pairwise_beta_name(h); + if (!nm || strcmp(nm, "PairwiseBeta") != 0) { printf("FAIL PairwiseBeta: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5384,6 +5976,8 @@ static int check_ParkinsonVolatility(void) { if (!h) { printf("FAIL ParkinsonVolatility: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ParkinsonVolatility", &exp); int fails = 0; + { const char *nm = wickra_parkinson_volatility_name(h); + if (!nm || strcmp(nm, "ParkinsonVolatility") != 0) { printf("FAIL ParkinsonVolatility: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5400,6 +5994,8 @@ static int check_PearsonCorrelation(void) { if (!h) { printf("FAIL PearsonCorrelation: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PearsonCorrelation", &exp); int fails = 0; + { const char *nm = wickra_pearson_correlation_name(h); + if (!nm || strcmp(nm, "PearsonCorrelation") != 0) { printf("FAIL PearsonCorrelation: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5416,6 +6012,8 @@ static int check_PercentAboveMa(void) { if (!h) { printf("FAIL PercentAboveMa: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PercentAboveMa", &exp); int fails = 0; + { const char *nm = wickra_percent_above_ma_name(h); + if (!nm || strcmp(nm, "PercentAboveMa") != 0) { printf("FAIL PercentAboveMa: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5434,6 +6032,8 @@ static int check_PercentB(void) { if (!h) { printf("FAIL PercentB: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PercentB", &exp); int fails = 0; + { const char *nm = wickra_percent_b_name(h); + if (!nm || strcmp(nm, "PercentB") != 0) { printf("FAIL PercentB: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5450,6 +6050,8 @@ static int check_PercentageTrailingStop(void) { if (!h) { printf("FAIL PercentageTrailingStop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PercentageTrailingStop", &exp); int fails = 0; + { const char *nm = wickra_percentage_trailing_stop_name(h); + if (!nm || strcmp(nm, "PercentageTrailingStop") != 0) { printf("FAIL PercentageTrailingStop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5466,6 +6068,8 @@ static int check_PerpetualPremiumIndex(void) { if (!h) { printf("FAIL PerpetualPremiumIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PerpetualPremiumIndex", &exp); int fails = 0; + { const char *nm = wickra_perpetual_premium_index_name(h); + if (!nm || strcmp(nm, "PerpetualPremiumIndex") != 0) { printf("FAIL PerpetualPremiumIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5483,6 +6087,8 @@ static int check_Pgo(void) { if (!h) { printf("FAIL Pgo: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Pgo", &exp); int fails = 0; + { const char *nm = wickra_pgo_name(h); + if (!nm || strcmp(nm, "PGO") != 0) { printf("FAIL Pgo: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5499,6 +6105,8 @@ static int check_PiercingDarkCloud(void) { if (!h) { printf("FAIL PiercingDarkCloud: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PiercingDarkCloud", &exp); int fails = 0; + { const char *nm = wickra_piercing_dark_cloud_name(h); + if (!nm || strcmp(nm, "PiercingDarkCloud") != 0) { printf("FAIL PiercingDarkCloud: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5515,6 +6123,8 @@ static int check_Pin(void) { if (!h) { printf("FAIL Pin: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Pin", &exp); int fails = 0; + { const char *nm = wickra_pin_name(h); + if (!nm || strcmp(nm, "PIN") != 0) { printf("FAIL Pin: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5531,6 +6141,8 @@ static int check_PivotReversal(void) { if (!h) { printf("FAIL PivotReversal: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PivotReversal", &exp); int fails = 0; + { const char *nm = wickra_pivot_reversal_name(h); + if (!nm || strcmp(nm, "PivotReversal") != 0) { printf("FAIL PivotReversal: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5547,6 +6159,8 @@ static int check_PlusDi(void) { if (!h) { printf("FAIL PlusDi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PlusDi", &exp); int fails = 0; + { const char *nm = wickra_plus_di_name(h); + if (!nm || strcmp(nm, "PLUS_DI") != 0) { printf("FAIL PlusDi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5563,6 +6177,8 @@ static int check_PlusDm(void) { if (!h) { printf("FAIL PlusDm: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PlusDm", &exp); int fails = 0; + { const char *nm = wickra_plus_dm_name(h); + if (!nm || strcmp(nm, "PLUS_DM") != 0) { printf("FAIL PlusDm: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5579,6 +6195,8 @@ static int check_Pmo(void) { if (!h) { printf("FAIL Pmo: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Pmo", &exp); int fails = 0; + { const char *nm = wickra_pmo_name(h); + if (!nm || strcmp(nm, "PMO") != 0) { printf("FAIL Pmo: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5595,6 +6213,8 @@ static int check_PointAndFigureBars(void) { if (!h) { printf("FAIL PointAndFigureBars: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PointAndFigureBars", &exp); int fails = 0; + { const char *nm = wickra_point_and_figure_bars_name(h); + if (!nm || strcmp(nm, "PointAndFigureBars") != 0) { printf("FAIL PointAndFigureBars: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5617,6 +6237,8 @@ static int check_PolarizedFractalEfficiency(void) { if (!h) { printf("FAIL PolarizedFractalEfficiency: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PolarizedFractalEfficiency", &exp); int fails = 0; + { const char *nm = wickra_polarized_fractal_efficiency_name(h); + if (!nm || strcmp(nm, "PolarizedFractalEfficiency") != 0) { printf("FAIL PolarizedFractalEfficiency: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5633,6 +6255,8 @@ static int check_Ppo(void) { if (!h) { printf("FAIL Ppo: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Ppo", &exp); int fails = 0; + { const char *nm = wickra_ppo_name(h); + if (!nm || strcmp(nm, "PPO") != 0) { printf("FAIL Ppo: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5649,6 +6273,8 @@ static int check_PpoHistogram(void) { if (!h) { printf("FAIL PpoHistogram: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_PpoHistogram", &exp); int fails = 0; + { const char *nm = wickra_ppo_histogram_name(h); + if (!nm || strcmp(nm, "PpoHistogram") != 0) { printf("FAIL PpoHistogram: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5665,6 +6291,8 @@ static int check_ProfileShape(void) { if (!h) { printf("FAIL ProfileShape: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ProfileShape", &exp); int fails = 0; + { const char *nm = wickra_profile_shape_name(h); + if (!nm || strcmp(nm, "ProfileShape") != 0) { printf("FAIL ProfileShape: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5681,6 +6309,8 @@ static int check_ProfitFactor(void) { if (!h) { printf("FAIL ProfitFactor: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ProfitFactor", &exp); int fails = 0; + { const char *nm = wickra_profit_factor_name(h); + if (!nm || strcmp(nm, "ProfitFactor") != 0) { printf("FAIL ProfitFactor: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5697,6 +6327,8 @@ static int check_ProjectionBands(void) { if (!h) { printf("FAIL ProjectionBands: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ProjectionBands", &exp); int fails = 0; + { const char *nm = wickra_projection_bands_name(h); + if (!nm || strcmp(nm, "ProjectionBands") != 0) { printf("FAIL ProjectionBands: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5720,6 +6352,8 @@ static int check_ProjectionOscillator(void) { if (!h) { printf("FAIL ProjectionOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ProjectionOscillator", &exp); int fails = 0; + { const char *nm = wickra_projection_oscillator_name(h); + if (!nm || strcmp(nm, "ProjectionOscillator") != 0) { printf("FAIL ProjectionOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5736,6 +6370,8 @@ static int check_Psar(void) { if (!h) { printf("FAIL Psar: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Psar", &exp); int fails = 0; + { const char *nm = wickra_psar_name(h); + if (!nm || strcmp(nm, "PSAR") != 0) { printf("FAIL Psar: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5752,6 +6388,8 @@ static int check_Pvi(void) { if (!h) { printf("FAIL Pvi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Pvi", &exp); int fails = 0; + { const char *nm = wickra_pvi_name(h); + if (!nm || strcmp(nm, "PVI") != 0) { printf("FAIL Pvi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5768,6 +6406,8 @@ static int check_Qqe(void) { if (!h) { printf("FAIL Qqe: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Qqe", &exp); int fails = 0; + { const char *nm = wickra_qqe_name(h); + if (!nm || strcmp(nm, "QQE") != 0) { printf("FAIL Qqe: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5790,6 +6430,8 @@ static int check_Qstick(void) { if (!h) { printf("FAIL Qstick: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Qstick", &exp); int fails = 0; + { const char *nm = wickra_qstick_name(h); + if (!nm || strcmp(nm, "Qstick") != 0) { printf("FAIL Qstick: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5806,6 +6448,8 @@ static int check_QuartileBands(void) { if (!h) { printf("FAIL QuartileBands: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_QuartileBands", &exp); int fails = 0; + { const char *nm = wickra_quartile_bands_name(h); + if (!nm || strcmp(nm, "QuartileBands") != 0) { printf("FAIL QuartileBands: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5829,6 +6473,8 @@ static int check_QuotedSpread(void) { if (!h) { printf("FAIL QuotedSpread: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_QuotedSpread", &exp); int fails = 0; + { const char *nm = wickra_quoted_spread_name(h); + if (!nm || strcmp(nm, "QuotedSpread") != 0) { printf("FAIL QuotedSpread: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5847,6 +6493,8 @@ static int check_RSquared(void) { if (!h) { printf("FAIL RSquared: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RSquared", &exp); int fails = 0; + { const char *nm = wickra_r_squared_name(h); + if (!nm || strcmp(nm, "RSquared") != 0) { printf("FAIL RSquared: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5863,6 +6511,8 @@ static int check_RangeBars(void) { if (!h) { printf("FAIL RangeBars: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RangeBars", &exp); int fails = 0; + { const char *nm = wickra_range_bars_name(h); + if (!nm || strcmp(nm, "RangeBars") != 0) { printf("FAIL RangeBars: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5885,6 +6535,8 @@ static int check_RealizedSpread(void) { if (!h) { printf("FAIL RealizedSpread: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RealizedSpread", &exp); int fails = 0; + { const char *nm = wickra_realized_spread_name(h); + if (!nm || strcmp(nm, "RealizedSpread") != 0) { printf("FAIL RealizedSpread: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5901,6 +6553,8 @@ static int check_RealizedVolatility(void) { if (!h) { printf("FAIL RealizedVolatility: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RealizedVolatility", &exp); int fails = 0; + { const char *nm = wickra_realized_volatility_name(h); + if (!nm || strcmp(nm, "RealizedVolatility") != 0) { printf("FAIL RealizedVolatility: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5917,6 +6571,8 @@ static int check_RecoveryFactor(void) { if (!h) { printf("FAIL RecoveryFactor: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RecoveryFactor", &exp); int fails = 0; + { const char *nm = wickra_recovery_factor_name(h); + if (!nm || strcmp(nm, "RecoveryFactor") != 0) { printf("FAIL RecoveryFactor: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5933,6 +6589,8 @@ static int check_RectangleRange(void) { if (!h) { printf("FAIL RectangleRange: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RectangleRange", &exp); int fails = 0; + { const char *nm = wickra_rectangle_range_name(h); + if (!nm || strcmp(nm, "RectangleRange") != 0) { printf("FAIL RectangleRange: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5949,6 +6607,8 @@ static int check_Reflex(void) { if (!h) { printf("FAIL Reflex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Reflex", &exp); int fails = 0; + { const char *nm = wickra_reflex_name(h); + if (!nm || strcmp(nm, "Reflex") != 0) { printf("FAIL Reflex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5965,6 +6625,8 @@ static int check_RegimeLabel(void) { if (!h) { printf("FAIL RegimeLabel: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RegimeLabel", &exp); int fails = 0; + { const char *nm = wickra_regime_label_name(h); + if (!nm || strcmp(nm, "RegimeLabel") != 0) { printf("FAIL RegimeLabel: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -5981,6 +6643,8 @@ static int check_RelativeStrengthAB(void) { if (!h) { printf("FAIL RelativeStrengthAB: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RelativeStrengthAB", &exp); int fails = 0; + { const char *nm = wickra_relative_strength_ab_name(h); + if (!nm || strcmp(nm, "RelativeStrengthAB") != 0) { printf("FAIL RelativeStrengthAB: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6004,6 +6668,8 @@ static int check_RenkoBars(void) { if (!h) { printf("FAIL RenkoBars: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RenkoBars", &exp); int fails = 0; + { const char *nm = wickra_renko_bars_name(h); + if (!nm || strcmp(nm, "RenkoBars") != 0) { printf("FAIL RenkoBars: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6026,6 +6692,8 @@ static int check_RenkoTrailingStop(void) { if (!h) { printf("FAIL RenkoTrailingStop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RenkoTrailingStop", &exp); int fails = 0; + { const char *nm = wickra_renko_trailing_stop_name(h); + if (!nm || strcmp(nm, "RenkoTrailingStop") != 0) { printf("FAIL RenkoTrailingStop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6042,6 +6710,8 @@ static int check_RickshawMan(void) { if (!h) { printf("FAIL RickshawMan: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RickshawMan", &exp); int fails = 0; + { const char *nm = wickra_rickshaw_man_name(h); + if (!nm || strcmp(nm, "RickshawMan") != 0) { printf("FAIL RickshawMan: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6058,6 +6728,8 @@ static int check_RisingThreeMethods(void) { if (!h) { printf("FAIL RisingThreeMethods: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RisingThreeMethods", &exp); int fails = 0; + { const char *nm = wickra_rising_three_methods_name(h); + if (!nm || strcmp(nm, "RisingThreeMethods") != 0) { printf("FAIL RisingThreeMethods: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6074,6 +6746,8 @@ static int check_Rmi(void) { if (!h) { printf("FAIL Rmi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Rmi", &exp); int fails = 0; + { const char *nm = wickra_rmi_name(h); + if (!nm || strcmp(nm, "RMI") != 0) { printf("FAIL Rmi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6090,6 +6764,8 @@ static int check_Roc(void) { if (!h) { printf("FAIL Roc: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Roc", &exp); int fails = 0; + { const char *nm = wickra_roc_name(h); + if (!nm || strcmp(nm, "ROC") != 0) { printf("FAIL Roc: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6106,6 +6782,8 @@ static int check_Rocp(void) { if (!h) { printf("FAIL Rocp: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Rocp", &exp); int fails = 0; + { const char *nm = wickra_rocp_name(h); + if (!nm || strcmp(nm, "ROCP") != 0) { printf("FAIL Rocp: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6122,6 +6800,8 @@ static int check_Rocr(void) { if (!h) { printf("FAIL Rocr: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Rocr", &exp); int fails = 0; + { const char *nm = wickra_rocr_name(h); + if (!nm || strcmp(nm, "ROCR") != 0) { printf("FAIL Rocr: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6138,6 +6818,8 @@ static int check_Rocr100(void) { if (!h) { printf("FAIL Rocr100: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Rocr100", &exp); int fails = 0; + { const char *nm = wickra_rocr100_name(h); + if (!nm || strcmp(nm, "ROCR100") != 0) { printf("FAIL Rocr100: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6154,6 +6836,8 @@ static int check_RogersSatchellVolatility(void) { if (!h) { printf("FAIL RogersSatchellVolatility: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RogersSatchellVolatility", &exp); int fails = 0; + { const char *nm = wickra_rogers_satchell_volatility_name(h); + if (!nm || strcmp(nm, "RogersSatchellVolatility") != 0) { printf("FAIL RogersSatchellVolatility: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6170,6 +6854,8 @@ static int check_RollMeasure(void) { if (!h) { printf("FAIL RollMeasure: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RollMeasure", &exp); int fails = 0; + { const char *nm = wickra_roll_measure_name(h); + if (!nm || strcmp(nm, "RollMeasure") != 0) { printf("FAIL RollMeasure: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6186,6 +6872,8 @@ static int check_RollingCorrelation(void) { if (!h) { printf("FAIL RollingCorrelation: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RollingCorrelation", &exp); int fails = 0; + { const char *nm = wickra_rolling_correlation_name(h); + if (!nm || strcmp(nm, "RollingCorrelation") != 0) { printf("FAIL RollingCorrelation: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6202,6 +6890,8 @@ static int check_RollingCovariance(void) { if (!h) { printf("FAIL RollingCovariance: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RollingCovariance", &exp); int fails = 0; + { const char *nm = wickra_rolling_covariance_name(h); + if (!nm || strcmp(nm, "RollingCovariance") != 0) { printf("FAIL RollingCovariance: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6218,6 +6908,8 @@ static int check_RollingIqr(void) { if (!h) { printf("FAIL RollingIqr: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RollingIqr", &exp); int fails = 0; + { const char *nm = wickra_rolling_iqr_name(h); + if (!nm || strcmp(nm, "RollingIqr") != 0) { printf("FAIL RollingIqr: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6234,6 +6926,8 @@ static int check_RollingMinMaxScaler(void) { if (!h) { printf("FAIL RollingMinMaxScaler: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RollingMinMaxScaler", &exp); int fails = 0; + { const char *nm = wickra_rolling_min_max_scaler_name(h); + if (!nm || strcmp(nm, "RollingMinMaxScaler") != 0) { printf("FAIL RollingMinMaxScaler: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6250,6 +6944,8 @@ static int check_RollingPercentileRank(void) { if (!h) { printf("FAIL RollingPercentileRank: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RollingPercentileRank", &exp); int fails = 0; + { const char *nm = wickra_rolling_percentile_rank_name(h); + if (!nm || strcmp(nm, "RollingPercentileRank") != 0) { printf("FAIL RollingPercentileRank: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6266,6 +6962,8 @@ static int check_RollingQuantile(void) { if (!h) { printf("FAIL RollingQuantile: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RollingQuantile", &exp); int fails = 0; + { const char *nm = wickra_rolling_quantile_name(h); + if (!nm || strcmp(nm, "RollingQuantile") != 0) { printf("FAIL RollingQuantile: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6282,6 +6980,8 @@ static int check_RollingVwap(void) { if (!h) { printf("FAIL RollingVwap: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RollingVwap", &exp); int fails = 0; + { const char *nm = wickra_rolling_vwap_name(h); + if (!nm || strcmp(nm, "RollingVWAP") != 0) { printf("FAIL RollingVwap: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6298,6 +6998,8 @@ static int check_RoofingFilter(void) { if (!h) { printf("FAIL RoofingFilter: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RoofingFilter", &exp); int fails = 0; + { const char *nm = wickra_roofing_filter_name(h); + if (!nm || strcmp(nm, "RoofingFilter") != 0) { printf("FAIL RoofingFilter: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6314,6 +7016,8 @@ static int check_Rsi(void) { if (!h) { printf("FAIL Rsi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Rsi", &exp); int fails = 0; + { const char *nm = wickra_rsi_name(h); + if (!nm || strcmp(nm, "RSI") != 0) { printf("FAIL Rsi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6330,6 +7034,8 @@ static int check_Rsx(void) { if (!h) { printf("FAIL Rsx: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Rsx", &exp); int fails = 0; + { const char *nm = wickra_rsx_name(h); + if (!nm || strcmp(nm, "RSX") != 0) { printf("FAIL Rsx: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6346,6 +7052,8 @@ static int check_RunBars(void) { if (!h) { printf("FAIL RunBars: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RunBars", &exp); int fails = 0; + { const char *nm = wickra_run_bars_name(h); + if (!nm || strcmp(nm, "RunBars") != 0) { printf("FAIL RunBars: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6371,6 +7079,8 @@ static int check_Rvi(void) { if (!h) { printf("FAIL Rvi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Rvi", &exp); int fails = 0; + { const char *nm = wickra_rvi_name(h); + if (!nm || strcmp(nm, "RVI") != 0) { printf("FAIL Rvi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6387,6 +7097,8 @@ static int check_RviVolatility(void) { if (!h) { printf("FAIL RviVolatility: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_RviVolatility", &exp); int fails = 0; + { const char *nm = wickra_rvi_volatility_name(h); + if (!nm || strcmp(nm, "RVIVolatility") != 0) { printf("FAIL RviVolatility: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6403,6 +7115,8 @@ static int check_Rwi(void) { if (!h) { printf("FAIL Rwi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Rwi", &exp); int fails = 0; + { const char *nm = wickra_rwi_name(h); + if (!nm || strcmp(nm, "RWI") != 0) { printf("FAIL Rwi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6425,6 +7139,8 @@ static int check_SampleEntropy(void) { if (!h) { printf("FAIL SampleEntropy: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SampleEntropy", &exp); int fails = 0; + { const char *nm = wickra_sample_entropy_name(h); + if (!nm || strcmp(nm, "SampleEntropy") != 0) { printf("FAIL SampleEntropy: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6441,6 +7157,8 @@ static int check_SarExt(void) { if (!h) { printf("FAIL SarExt: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SarExt", &exp); int fails = 0; + { const char *nm = wickra_sar_ext_name(h); + if (!nm || strcmp(nm, "SAREXT") != 0) { printf("FAIL SarExt: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6457,6 +7175,8 @@ static int check_SeasonalZScore(void) { if (!h) { printf("FAIL SeasonalZScore: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SeasonalZScore", &exp); int fails = 0; + { const char *nm = wickra_seasonal_z_score_name(h); + if (!nm || strcmp(nm, "SeasonalZScore") != 0) { printf("FAIL SeasonalZScore: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6473,6 +7193,8 @@ static int check_SeparatingLines(void) { if (!h) { printf("FAIL SeparatingLines: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SeparatingLines", &exp); int fails = 0; + { const char *nm = wickra_separating_lines_name(h); + if (!nm || strcmp(nm, "SeparatingLines") != 0) { printf("FAIL SeparatingLines: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6489,6 +7211,8 @@ static int check_SessionHighLow(void) { if (!h) { printf("FAIL SessionHighLow: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SessionHighLow", &exp); int fails = 0; + { const char *nm = wickra_session_high_low_name(h); + if (!nm || strcmp(nm, "SessionHighLow") != 0) { printf("FAIL SessionHighLow: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6511,6 +7235,8 @@ static int check_SessionRange(void) { if (!h) { printf("FAIL SessionRange: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SessionRange", &exp); int fails = 0; + { const char *nm = wickra_session_range_name(h); + if (!nm || strcmp(nm, "SessionRange") != 0) { printf("FAIL SessionRange: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6534,6 +7260,8 @@ static int check_SessionVwap(void) { if (!h) { printf("FAIL SessionVwap: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SessionVwap", &exp); int fails = 0; + { const char *nm = wickra_session_vwap_name(h); + if (!nm || strcmp(nm, "SessionVwap") != 0) { printf("FAIL SessionVwap: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6550,6 +7278,8 @@ static int check_ShannonEntropy(void) { if (!h) { printf("FAIL ShannonEntropy: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ShannonEntropy", &exp); int fails = 0; + { const char *nm = wickra_shannon_entropy_name(h); + if (!nm || strcmp(nm, "ShannonEntropy") != 0) { printf("FAIL ShannonEntropy: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6566,6 +7296,8 @@ static int check_Shark(void) { if (!h) { printf("FAIL Shark: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Shark", &exp); int fails = 0; + { const char *nm = wickra_shark_name(h); + if (!nm || strcmp(nm, "Shark") != 0) { printf("FAIL Shark: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6582,6 +7314,8 @@ static int check_SharpeRatio(void) { if (!h) { printf("FAIL SharpeRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SharpeRatio", &exp); int fails = 0; + { const char *nm = wickra_sharpe_ratio_name(h); + if (!nm || strcmp(nm, "SharpeRatio") != 0) { printf("FAIL SharpeRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6598,6 +7332,8 @@ static int check_ShootingStar(void) { if (!h) { printf("FAIL ShootingStar: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ShootingStar", &exp); int fails = 0; + { const char *nm = wickra_shooting_star_name(h); + if (!nm || strcmp(nm, "ShootingStar") != 0) { printf("FAIL ShootingStar: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6614,6 +7350,8 @@ static int check_ShortLine(void) { if (!h) { printf("FAIL ShortLine: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ShortLine", &exp); int fails = 0; + { const char *nm = wickra_short_line_name(h); + if (!nm || strcmp(nm, "ShortLine") != 0) { printf("FAIL ShortLine: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6630,6 +7368,8 @@ static int check_SignedVolume(void) { if (!h) { printf("FAIL SignedVolume: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SignedVolume", &exp); int fails = 0; + { const char *nm = wickra_signed_volume_name(h); + if (!nm || strcmp(nm, "SignedVolume") != 0) { printf("FAIL SignedVolume: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6646,6 +7386,8 @@ static int check_SineWave(void) { if (!h) { printf("FAIL SineWave: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SineWave", &exp); int fails = 0; + { const char *nm = wickra_sine_wave_name(h); + if (!nm || strcmp(nm, "SineWave") != 0) { printf("FAIL SineWave: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6662,6 +7404,8 @@ static int check_SineWeightedMa(void) { if (!h) { printf("FAIL SineWeightedMa: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SineWeightedMa", &exp); int fails = 0; + { const char *nm = wickra_sine_weighted_ma_name(h); + if (!nm || strcmp(nm, "SWMA") != 0) { printf("FAIL SineWeightedMa: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6678,6 +7422,8 @@ static int check_SinglePrints(void) { if (!h) { printf("FAIL SinglePrints: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SinglePrints", &exp); int fails = 0; + { const char *nm = wickra_single_prints_name(h); + if (!nm || strcmp(nm, "SinglePrints") != 0) { printf("FAIL SinglePrints: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6694,6 +7440,8 @@ static int check_Skewness(void) { if (!h) { printf("FAIL Skewness: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Skewness", &exp); int fails = 0; + { const char *nm = wickra_skewness_name(h); + if (!nm || strcmp(nm, "Skewness") != 0) { printf("FAIL Skewness: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6710,6 +7458,8 @@ static int check_Sma(void) { if (!h) { printf("FAIL Sma: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Sma", &exp); int fails = 0; + { const char *nm = wickra_sma_name(h); + if (!nm || strcmp(nm, "SMA") != 0) { printf("FAIL Sma: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6726,6 +7476,8 @@ static int check_Smi(void) { if (!h) { printf("FAIL Smi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Smi", &exp); int fails = 0; + { const char *nm = wickra_smi_name(h); + if (!nm || strcmp(nm, "SMI") != 0) { printf("FAIL Smi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6742,6 +7494,8 @@ static int check_Smma(void) { if (!h) { printf("FAIL Smma: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Smma", &exp); int fails = 0; + { const char *nm = wickra_smma_name(h); + if (!nm || strcmp(nm, "SMMA") != 0) { printf("FAIL Smma: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6758,6 +7512,8 @@ static int check_SmoothedHeikinAshi(void) { if (!h) { printf("FAIL SmoothedHeikinAshi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SmoothedHeikinAshi", &exp); int fails = 0; + { const char *nm = wickra_smoothed_heikin_ashi_name(h); + if (!nm || strcmp(nm, "SmoothedHeikinAshi") != 0) { printf("FAIL SmoothedHeikinAshi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6782,6 +7538,8 @@ static int check_SortinoRatio(void) { if (!h) { printf("FAIL SortinoRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SortinoRatio", &exp); int fails = 0; + { const char *nm = wickra_sortino_ratio_name(h); + if (!nm || strcmp(nm, "SortinoRatio") != 0) { printf("FAIL SortinoRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6798,6 +7556,8 @@ static int check_SpearmanCorrelation(void) { if (!h) { printf("FAIL SpearmanCorrelation: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SpearmanCorrelation", &exp); int fails = 0; + { const char *nm = wickra_spearman_correlation_name(h); + if (!nm || strcmp(nm, "SpearmanCorrelation") != 0) { printf("FAIL SpearmanCorrelation: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6814,6 +7574,8 @@ static int check_SpinningTop(void) { if (!h) { printf("FAIL SpinningTop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SpinningTop", &exp); int fails = 0; + { const char *nm = wickra_spinning_top_name(h); + if (!nm || strcmp(nm, "SpinningTop") != 0) { printf("FAIL SpinningTop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6830,6 +7592,8 @@ static int check_SpreadAr1Coefficient(void) { if (!h) { printf("FAIL SpreadAr1Coefficient: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SpreadAr1Coefficient", &exp); int fails = 0; + { const char *nm = wickra_spread_ar1_coefficient_name(h); + if (!nm || strcmp(nm, "SpreadAr1Coefficient") != 0) { printf("FAIL SpreadAr1Coefficient: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6846,6 +7610,8 @@ static int check_SpreadBollingerBands(void) { if (!h) { printf("FAIL SpreadBollingerBands: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SpreadBollingerBands", &exp); int fails = 0; + { const char *nm = wickra_spread_bollinger_bands_name(h); + if (!nm || strcmp(nm, "SpreadBollingerBands") != 0) { printf("FAIL SpreadBollingerBands: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6870,6 +7636,8 @@ static int check_SpreadHurst(void) { if (!h) { printf("FAIL SpreadHurst: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SpreadHurst", &exp); int fails = 0; + { const char *nm = wickra_spread_hurst_name(h); + if (!nm || strcmp(nm, "SpreadHurst") != 0) { printf("FAIL SpreadHurst: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6886,6 +7654,8 @@ static int check_StalledPattern(void) { if (!h) { printf("FAIL StalledPattern: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_StalledPattern", &exp); int fails = 0; + { const char *nm = wickra_stalled_pattern_name(h); + if (!nm || strcmp(nm, "StalledPattern") != 0) { printf("FAIL StalledPattern: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6902,6 +7672,8 @@ static int check_StandardError(void) { if (!h) { printf("FAIL StandardError: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_StandardError", &exp); int fails = 0; + { const char *nm = wickra_standard_error_name(h); + if (!nm || strcmp(nm, "StandardError") != 0) { printf("FAIL StandardError: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6918,6 +7690,8 @@ static int check_StandardErrorBands(void) { if (!h) { printf("FAIL StandardErrorBands: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_StandardErrorBands", &exp); int fails = 0; + { const char *nm = wickra_standard_error_bands_name(h); + if (!nm || strcmp(nm, "StandardErrorBands") != 0) { printf("FAIL StandardErrorBands: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6941,6 +7715,8 @@ static int check_StarcBands(void) { if (!h) { printf("FAIL StarcBands: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_StarcBands", &exp); int fails = 0; + { const char *nm = wickra_starc_bands_name(h); + if (!nm || strcmp(nm, "StarcBands") != 0) { printf("FAIL StarcBands: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6964,6 +7740,8 @@ static int check_Stc(void) { if (!h) { printf("FAIL Stc: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Stc", &exp); int fails = 0; + { const char *nm = wickra_stc_name(h); + if (!nm || strcmp(nm, "STC") != 0) { printf("FAIL Stc: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6980,6 +7758,8 @@ static int check_StdDev(void) { if (!h) { printf("FAIL StdDev: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_StdDev", &exp); int fails = 0; + { const char *nm = wickra_std_dev_name(h); + if (!nm || strcmp(nm, "StdDev") != 0) { printf("FAIL StdDev: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -6996,6 +7776,8 @@ static int check_StepTrailingStop(void) { if (!h) { printf("FAIL StepTrailingStop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_StepTrailingStop", &exp); int fails = 0; + { const char *nm = wickra_step_trailing_stop_name(h); + if (!nm || strcmp(nm, "StepTrailingStop") != 0) { printf("FAIL StepTrailingStop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7012,6 +7794,8 @@ static int check_SterlingRatio(void) { if (!h) { printf("FAIL SterlingRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SterlingRatio", &exp); int fails = 0; + { const char *nm = wickra_sterling_ratio_name(h); + if (!nm || strcmp(nm, "SterlingRatio") != 0) { printf("FAIL SterlingRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7028,6 +7812,8 @@ static int check_StickSandwich(void) { if (!h) { printf("FAIL StickSandwich: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_StickSandwich", &exp); int fails = 0; + { const char *nm = wickra_stick_sandwich_name(h); + if (!nm || strcmp(nm, "StickSandwich") != 0) { printf("FAIL StickSandwich: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7044,6 +7830,8 @@ static int check_StochRsi(void) { if (!h) { printf("FAIL StochRsi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_StochRsi", &exp); int fails = 0; + { const char *nm = wickra_stoch_rsi_name(h); + if (!nm || strcmp(nm, "StochRSI") != 0) { printf("FAIL StochRsi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7060,6 +7848,8 @@ static int check_Stochastic(void) { if (!h) { printf("FAIL Stochastic: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Stochastic", &exp); int fails = 0; + { const char *nm = wickra_stochastic_name(h); + if (!nm || strcmp(nm, "Stochastic") != 0) { printf("FAIL Stochastic: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7082,6 +7872,8 @@ static int check_StochasticCci(void) { if (!h) { printf("FAIL StochasticCci: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_StochasticCci", &exp); int fails = 0; + { const char *nm = wickra_stochastic_cci_name(h); + if (!nm || strcmp(nm, "StochasticCCI") != 0) { printf("FAIL StochasticCci: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7098,6 +7890,8 @@ static int check_SuperSmoother(void) { if (!h) { printf("FAIL SuperSmoother: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SuperSmoother", &exp); int fails = 0; + { const char *nm = wickra_super_smoother_name(h); + if (!nm || strcmp(nm, "SuperSmoother") != 0) { printf("FAIL SuperSmoother: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7114,6 +7908,8 @@ static int check_SuperTrend(void) { if (!h) { printf("FAIL SuperTrend: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_SuperTrend", &exp); int fails = 0; + { const char *nm = wickra_super_trend_name(h); + if (!nm || strcmp(nm, "SuperTrend") != 0) { printf("FAIL SuperTrend: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7136,6 +7932,8 @@ static int check_T3(void) { if (!h) { printf("FAIL T3: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_T3", &exp); int fails = 0; + { const char *nm = wickra_t3_name(h); + if (!nm || strcmp(nm, "T3") != 0) { printf("FAIL T3: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7152,6 +7950,8 @@ static int check_TailRatio(void) { if (!h) { printf("FAIL TailRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TailRatio", &exp); int fails = 0; + { const char *nm = wickra_tail_ratio_name(h); + if (!nm || strcmp(nm, "TailRatio") != 0) { printf("FAIL TailRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7168,6 +7968,8 @@ static int check_TakerBuySellRatio(void) { if (!h) { printf("FAIL TakerBuySellRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TakerBuySellRatio", &exp); int fails = 0; + { const char *nm = wickra_taker_buy_sell_ratio_name(h); + if (!nm || strcmp(nm, "TakerBuySellRatio") != 0) { printf("FAIL TakerBuySellRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7185,6 +7987,8 @@ static int check_Takuri(void) { if (!h) { printf("FAIL Takuri: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Takuri", &exp); int fails = 0; + { const char *nm = wickra_takuri_name(h); + if (!nm || strcmp(nm, "Takuri") != 0) { printf("FAIL Takuri: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7201,6 +8005,8 @@ static int check_TasukiGap(void) { if (!h) { printf("FAIL TasukiGap: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TasukiGap", &exp); int fails = 0; + { const char *nm = wickra_tasuki_gap_name(h); + if (!nm || strcmp(nm, "TasukiGap") != 0) { printf("FAIL TasukiGap: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7217,6 +8023,8 @@ static int check_TdCamouflage(void) { if (!h) { printf("FAIL TdCamouflage: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdCamouflage", &exp); int fails = 0; + { const char *nm = wickra_td_camouflage_name(h); + if (!nm || strcmp(nm, "TDCamouflage") != 0) { printf("FAIL TdCamouflage: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7233,6 +8041,8 @@ static int check_TdClop(void) { if (!h) { printf("FAIL TdClop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdClop", &exp); int fails = 0; + { const char *nm = wickra_td_clop_name(h); + if (!nm || strcmp(nm, "TDClop") != 0) { printf("FAIL TdClop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7249,6 +8059,8 @@ static int check_TdClopwin(void) { if (!h) { printf("FAIL TdClopwin: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdClopwin", &exp); int fails = 0; + { const char *nm = wickra_td_clopwin_name(h); + if (!nm || strcmp(nm, "TDClopwin") != 0) { printf("FAIL TdClopwin: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7265,6 +8077,8 @@ static int check_TdCombo(void) { if (!h) { printf("FAIL TdCombo: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdCombo", &exp); int fails = 0; + { const char *nm = wickra_td_combo_name(h); + if (!nm || strcmp(nm, "TDCombo") != 0) { printf("FAIL TdCombo: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7281,6 +8095,8 @@ static int check_TdCountdown(void) { if (!h) { printf("FAIL TdCountdown: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdCountdown", &exp); int fails = 0; + { const char *nm = wickra_td_countdown_name(h); + if (!nm || strcmp(nm, "TDCountdown") != 0) { printf("FAIL TdCountdown: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7297,6 +8113,8 @@ static int check_TdDWave(void) { if (!h) { printf("FAIL TdDWave: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdDWave", &exp); int fails = 0; + { const char *nm = wickra_td_d_wave_name(h); + if (!nm || strcmp(nm, "TDDWave") != 0) { printf("FAIL TdDWave: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7313,6 +8131,8 @@ static int check_TdDeMarker(void) { if (!h) { printf("FAIL TdDeMarker: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdDeMarker", &exp); int fails = 0; + { const char *nm = wickra_td_de_marker_name(h); + if (!nm || strcmp(nm, "TDDeMarker") != 0) { printf("FAIL TdDeMarker: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7329,6 +8149,8 @@ static int check_TdDifferential(void) { if (!h) { printf("FAIL TdDifferential: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdDifferential", &exp); int fails = 0; + { const char *nm = wickra_td_differential_name(h); + if (!nm || strcmp(nm, "TDDifferential") != 0) { printf("FAIL TdDifferential: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7345,6 +8167,8 @@ static int check_TdLines(void) { if (!h) { printf("FAIL TdLines: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdLines", &exp); int fails = 0; + { const char *nm = wickra_td_lines_name(h); + if (!nm || strcmp(nm, "TDLines") != 0) { printf("FAIL TdLines: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7367,6 +8191,8 @@ static int check_TdMovingAverage(void) { if (!h) { printf("FAIL TdMovingAverage: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdMovingAverage", &exp); int fails = 0; + { const char *nm = wickra_td_moving_average_name(h); + if (!nm || strcmp(nm, "TDMovingAverage") != 0) { printf("FAIL TdMovingAverage: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7389,6 +8215,8 @@ static int check_TdOpen(void) { if (!h) { printf("FAIL TdOpen: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdOpen", &exp); int fails = 0; + { const char *nm = wickra_td_open_name(h); + if (!nm || strcmp(nm, "TDOpen") != 0) { printf("FAIL TdOpen: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7405,6 +8233,8 @@ static int check_TdPressure(void) { if (!h) { printf("FAIL TdPressure: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdPressure", &exp); int fails = 0; + { const char *nm = wickra_td_pressure_name(h); + if (!nm || strcmp(nm, "TDPressure") != 0) { printf("FAIL TdPressure: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7421,6 +8251,8 @@ static int check_TdPropulsion(void) { if (!h) { printf("FAIL TdPropulsion: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdPropulsion", &exp); int fails = 0; + { const char *nm = wickra_td_propulsion_name(h); + if (!nm || strcmp(nm, "TDPropulsion") != 0) { printf("FAIL TdPropulsion: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7437,6 +8269,8 @@ static int check_TdRangeProjection(void) { if (!h) { printf("FAIL TdRangeProjection: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdRangeProjection", &exp); int fails = 0; + { const char *nm = wickra_td_range_projection_name(h); + if (!nm || strcmp(nm, "TDRangeProjection") != 0) { printf("FAIL TdRangeProjection: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7459,6 +8293,8 @@ static int check_TdRei(void) { if (!h) { printf("FAIL TdRei: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdRei", &exp); int fails = 0; + { const char *nm = wickra_td_rei_name(h); + if (!nm || strcmp(nm, "TDREI") != 0) { printf("FAIL TdRei: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7475,6 +8311,8 @@ static int check_TdRiskLevel(void) { if (!h) { printf("FAIL TdRiskLevel: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdRiskLevel", &exp); int fails = 0; + { const char *nm = wickra_td_risk_level_name(h); + if (!nm || strcmp(nm, "TDRiskLevel") != 0) { printf("FAIL TdRiskLevel: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7497,6 +8335,8 @@ static int check_TdSequential(void) { if (!h) { printf("FAIL TdSequential: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdSequential", &exp); int fails = 0; + { const char *nm = wickra_td_sequential_name(h); + if (!nm || strcmp(nm, "TDSequential") != 0) { printf("FAIL TdSequential: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7520,6 +8360,8 @@ static int check_TdSetup(void) { if (!h) { printf("FAIL TdSetup: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdSetup", &exp); int fails = 0; + { const char *nm = wickra_td_setup_name(h); + if (!nm || strcmp(nm, "TDSetup") != 0) { printf("FAIL TdSetup: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7536,6 +8378,8 @@ static int check_TdTrap(void) { if (!h) { printf("FAIL TdTrap: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TdTrap", &exp); int fails = 0; + { const char *nm = wickra_td_trap_name(h); + if (!nm || strcmp(nm, "TDTrap") != 0) { printf("FAIL TdTrap: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7552,6 +8396,8 @@ static int check_Tema(void) { if (!h) { printf("FAIL Tema: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Tema", &exp); int fails = 0; + { const char *nm = wickra_tema_name(h); + if (!nm || strcmp(nm, "TEMA") != 0) { printf("FAIL Tema: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7568,6 +8414,8 @@ static int check_TermStructureBasis(void) { if (!h) { printf("FAIL TermStructureBasis: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TermStructureBasis", &exp); int fails = 0; + { const char *nm = wickra_term_structure_basis_name(h); + if (!nm || strcmp(nm, "TermStructureBasis") != 0) { printf("FAIL TermStructureBasis: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7585,6 +8433,8 @@ static int check_ThreeDrives(void) { if (!h) { printf("FAIL ThreeDrives: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ThreeDrives", &exp); int fails = 0; + { const char *nm = wickra_three_drives_name(h); + if (!nm || strcmp(nm, "ThreeDrives") != 0) { printf("FAIL ThreeDrives: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7601,6 +8451,8 @@ static int check_ThreeInside(void) { if (!h) { printf("FAIL ThreeInside: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ThreeInside", &exp); int fails = 0; + { const char *nm = wickra_three_inside_name(h); + if (!nm || strcmp(nm, "ThreeInside") != 0) { printf("FAIL ThreeInside: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7617,6 +8469,8 @@ static int check_ThreeLineBreak(void) { if (!h) { printf("FAIL ThreeLineBreak: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ThreeLineBreak", &exp); int fails = 0; + { const char *nm = wickra_three_line_break_name(h); + if (!nm || strcmp(nm, "ThreeLineBreak") != 0) { printf("FAIL ThreeLineBreak: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7633,6 +8487,8 @@ static int check_ThreeLineBreakBars(void) { if (!h) { printf("FAIL ThreeLineBreakBars: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ThreeLineBreakBars", &exp); int fails = 0; + { const char *nm = wickra_three_line_break_bars_name(h); + if (!nm || strcmp(nm, "ThreeLineBreakBars") != 0) { printf("FAIL ThreeLineBreakBars: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7655,6 +8511,8 @@ static int check_ThreeLineStrike(void) { if (!h) { printf("FAIL ThreeLineStrike: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ThreeLineStrike", &exp); int fails = 0; + { const char *nm = wickra_three_line_strike_name(h); + if (!nm || strcmp(nm, "ThreeLineStrike") != 0) { printf("FAIL ThreeLineStrike: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7671,6 +8529,8 @@ static int check_ThreeOutside(void) { if (!h) { printf("FAIL ThreeOutside: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ThreeOutside", &exp); int fails = 0; + { const char *nm = wickra_three_outside_name(h); + if (!nm || strcmp(nm, "ThreeOutside") != 0) { printf("FAIL ThreeOutside: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7687,6 +8547,8 @@ static int check_ThreeSoldiersOrCrows(void) { if (!h) { printf("FAIL ThreeSoldiersOrCrows: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ThreeSoldiersOrCrows", &exp); int fails = 0; + { const char *nm = wickra_three_soldiers_or_crows_name(h); + if (!nm || strcmp(nm, "ThreeSoldiersOrCrows") != 0) { printf("FAIL ThreeSoldiersOrCrows: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7703,6 +8565,8 @@ static int check_ThreeStarsInSouth(void) { if (!h) { printf("FAIL ThreeStarsInSouth: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ThreeStarsInSouth", &exp); int fails = 0; + { const char *nm = wickra_three_stars_in_south_name(h); + if (!nm || strcmp(nm, "ThreeStarsInSouth") != 0) { printf("FAIL ThreeStarsInSouth: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7719,6 +8583,8 @@ static int check_Thrusting(void) { if (!h) { printf("FAIL Thrusting: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Thrusting", &exp); int fails = 0; + { const char *nm = wickra_thrusting_name(h); + if (!nm || strcmp(nm, "Thrusting") != 0) { printf("FAIL Thrusting: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7735,6 +8601,8 @@ static int check_TickBars(void) { if (!h) { printf("FAIL TickBars: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TickBars", &exp); int fails = 0; + { const char *nm = wickra_tick_bars_name(h); + if (!nm || strcmp(nm, "TickBars") != 0) { printf("FAIL TickBars: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7759,6 +8627,8 @@ static int check_TickIndex(void) { if (!h) { printf("FAIL TickIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TickIndex", &exp); int fails = 0; + { const char *nm = wickra_tick_index_name(h); + if (!nm || strcmp(nm, "TickIndex") != 0) { printf("FAIL TickIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7777,6 +8647,8 @@ static int check_Tii(void) { if (!h) { printf("FAIL Tii: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Tii", &exp); int fails = 0; + { const char *nm = wickra_tii_name(h); + if (!nm || strcmp(nm, "TII") != 0) { printf("FAIL Tii: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7793,6 +8665,8 @@ static int check_TimeBasedStop(void) { if (!h) { printf("FAIL TimeBasedStop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TimeBasedStop", &exp); int fails = 0; + { const char *nm = wickra_time_based_stop_name(h); + if (!nm || strcmp(nm, "TimeBasedStop") != 0) { printf("FAIL TimeBasedStop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7809,6 +8683,8 @@ static int check_TimeOfDayReturnProfile(void) { if (!h) { printf("FAIL TimeOfDayReturnProfile: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TimeOfDayReturnProfile", &exp); int fails = 0; + { const char *nm = wickra_time_of_day_return_profile_name(h); + if (!nm || strcmp(nm, "TimeOfDayReturnProfile") != 0) { printf("FAIL TimeOfDayReturnProfile: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7828,6 +8704,8 @@ static int check_TowerTopBottom(void) { if (!h) { printf("FAIL TowerTopBottom: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TowerTopBottom", &exp); int fails = 0; + { const char *nm = wickra_tower_top_bottom_name(h); + if (!nm || strcmp(nm, "TowerTopBottom") != 0) { printf("FAIL TowerTopBottom: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7844,6 +8722,8 @@ static int check_TpoProfile(void) { if (!h) { printf("FAIL TpoProfile: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TpoProfile", &exp); int fails = 0; + { const char *nm = wickra_tpo_profile_name(h); + if (!nm || strcmp(nm, "TpoProfile") != 0) { printf("FAIL TpoProfile: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7865,6 +8745,8 @@ static int check_TradeImbalance(void) { if (!h) { printf("FAIL TradeImbalance: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TradeImbalance", &exp); int fails = 0; + { const char *nm = wickra_trade_imbalance_name(h); + if (!nm || strcmp(nm, "TradeImbalance") != 0) { printf("FAIL TradeImbalance: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7881,6 +8763,8 @@ static int check_TradeSignAutocorrelation(void) { if (!h) { printf("FAIL TradeSignAutocorrelation: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TradeSignAutocorrelation", &exp); int fails = 0; + { const char *nm = wickra_trade_sign_autocorrelation_name(h); + if (!nm || strcmp(nm, "TradeSignAutocorrelation") != 0) { printf("FAIL TradeSignAutocorrelation: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7897,6 +8781,8 @@ static int check_TradeVolumeIndex(void) { if (!h) { printf("FAIL TradeVolumeIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TradeVolumeIndex", &exp); int fails = 0; + { const char *nm = wickra_trade_volume_index_name(h); + if (!nm || strcmp(nm, "TradeVolumeIndex") != 0) { printf("FAIL TradeVolumeIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7913,6 +8799,8 @@ static int check_TrendLabel(void) { if (!h) { printf("FAIL TrendLabel: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TrendLabel", &exp); int fails = 0; + { const char *nm = wickra_trend_label_name(h); + if (!nm || strcmp(nm, "TrendLabel") != 0) { printf("FAIL TrendLabel: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7929,6 +8817,8 @@ static int check_TrendStrengthIndex(void) { if (!h) { printf("FAIL TrendStrengthIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TrendStrengthIndex", &exp); int fails = 0; + { const char *nm = wickra_trend_strength_index_name(h); + if (!nm || strcmp(nm, "TrendStrengthIndex") != 0) { printf("FAIL TrendStrengthIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7945,6 +8835,8 @@ static int check_Trendflex(void) { if (!h) { printf("FAIL Trendflex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Trendflex", &exp); int fails = 0; + { const char *nm = wickra_trendflex_name(h); + if (!nm || strcmp(nm, "Trendflex") != 0) { printf("FAIL Trendflex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7961,6 +8853,8 @@ static int check_TreynorRatio(void) { if (!h) { printf("FAIL TreynorRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TreynorRatio", &exp); int fails = 0; + { const char *nm = wickra_treynor_ratio_name(h); + if (!nm || strcmp(nm, "TreynorRatio") != 0) { printf("FAIL TreynorRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7977,6 +8871,8 @@ static int check_Triangle(void) { if (!h) { printf("FAIL Triangle: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Triangle", &exp); int fails = 0; + { const char *nm = wickra_triangle_name(h); + if (!nm || strcmp(nm, "Triangle") != 0) { printf("FAIL Triangle: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -7993,6 +8889,8 @@ static int check_Trima(void) { if (!h) { printf("FAIL Trima: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Trima", &exp); int fails = 0; + { const char *nm = wickra_trima_name(h); + if (!nm || strcmp(nm, "TRIMA") != 0) { printf("FAIL Trima: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8009,6 +8907,8 @@ static int check_Trin(void) { if (!h) { printf("FAIL Trin: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Trin", &exp); int fails = 0; + { const char *nm = wickra_trin_name(h); + if (!nm || strcmp(nm, "Trin") != 0) { printf("FAIL Trin: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8027,6 +8927,8 @@ static int check_TripleTopBottom(void) { if (!h) { printf("FAIL TripleTopBottom: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TripleTopBottom", &exp); int fails = 0; + { const char *nm = wickra_triple_top_bottom_name(h); + if (!nm || strcmp(nm, "TripleTopBottom") != 0) { printf("FAIL TripleTopBottom: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8043,6 +8945,8 @@ static int check_Tristar(void) { if (!h) { printf("FAIL Tristar: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Tristar", &exp); int fails = 0; + { const char *nm = wickra_tristar_name(h); + if (!nm || strcmp(nm, "Tristar") != 0) { printf("FAIL Tristar: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8059,6 +8963,8 @@ static int check_Trix(void) { if (!h) { printf("FAIL Trix: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Trix", &exp); int fails = 0; + { const char *nm = wickra_trix_name(h); + if (!nm || strcmp(nm, "TRIX") != 0) { printf("FAIL Trix: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8075,6 +8981,8 @@ static int check_TrueRange(void) { if (!h) { printf("FAIL TrueRange: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TrueRange", &exp); int fails = 0; + { const char *nm = wickra_true_range_name(h); + if (!nm || strcmp(nm, "TrueRange") != 0) { printf("FAIL TrueRange: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8091,6 +8999,8 @@ static int check_Tsf(void) { if (!h) { printf("FAIL Tsf: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Tsf", &exp); int fails = 0; + { const char *nm = wickra_tsf_name(h); + if (!nm || strcmp(nm, "TSF") != 0) { printf("FAIL Tsf: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8107,6 +9017,8 @@ static int check_TsfOscillator(void) { if (!h) { printf("FAIL TsfOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TsfOscillator", &exp); int fails = 0; + { const char *nm = wickra_tsf_oscillator_name(h); + if (!nm || strcmp(nm, "TsfOscillator") != 0) { printf("FAIL TsfOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8123,6 +9035,8 @@ static int check_Tsi(void) { if (!h) { printf("FAIL Tsi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Tsi", &exp); int fails = 0; + { const char *nm = wickra_tsi_name(h); + if (!nm || strcmp(nm, "TSI") != 0) { printf("FAIL Tsi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8139,6 +9053,8 @@ static int check_Tsv(void) { if (!h) { printf("FAIL Tsv: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Tsv", &exp); int fails = 0; + { const char *nm = wickra_tsv_name(h); + if (!nm || strcmp(nm, "TSV") != 0) { printf("FAIL Tsv: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8155,6 +9071,8 @@ static int check_TtmSqueeze(void) { if (!h) { printf("FAIL TtmSqueeze: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TtmSqueeze", &exp); int fails = 0; + { const char *nm = wickra_ttm_squeeze_name(h); + if (!nm || strcmp(nm, "TtmSqueeze") != 0) { printf("FAIL TtmSqueeze: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8177,6 +9095,8 @@ static int check_TtmTrend(void) { if (!h) { printf("FAIL TtmTrend: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TtmTrend", &exp); int fails = 0; + { const char *nm = wickra_ttm_trend_name(h); + if (!nm || strcmp(nm, "TtmTrend") != 0) { printf("FAIL TtmTrend: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8193,6 +9113,8 @@ static int check_TurnOfMonth(void) { if (!h) { printf("FAIL TurnOfMonth: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TurnOfMonth", &exp); int fails = 0; + { const char *nm = wickra_turn_of_month_name(h); + if (!nm || strcmp(nm, "TurnOfMonth") != 0) { printf("FAIL TurnOfMonth: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8209,6 +9131,8 @@ static int check_Tweezer(void) { if (!h) { printf("FAIL Tweezer: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Tweezer", &exp); int fails = 0; + { const char *nm = wickra_tweezer_name(h); + if (!nm || strcmp(nm, "Tweezer") != 0) { printf("FAIL Tweezer: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8225,6 +9149,8 @@ static int check_TwiggsMoneyFlow(void) { if (!h) { printf("FAIL TwiggsMoneyFlow: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TwiggsMoneyFlow", &exp); int fails = 0; + { const char *nm = wickra_twiggs_money_flow_name(h); + if (!nm || strcmp(nm, "TwiggsMoneyFlow") != 0) { printf("FAIL TwiggsMoneyFlow: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8241,6 +9167,8 @@ static int check_TwoCrows(void) { if (!h) { printf("FAIL TwoCrows: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TwoCrows", &exp); int fails = 0; + { const char *nm = wickra_two_crows_name(h); + if (!nm || strcmp(nm, "TwoCrows") != 0) { printf("FAIL TwoCrows: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8257,6 +9185,8 @@ static int check_TypicalPrice(void) { if (!h) { printf("FAIL TypicalPrice: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_TypicalPrice", &exp); int fails = 0; + { const char *nm = wickra_typical_price_name(h); + if (!nm || strcmp(nm, "TypicalPrice") != 0) { printf("FAIL TypicalPrice: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8273,6 +9203,8 @@ static int check_UlcerIndex(void) { if (!h) { printf("FAIL UlcerIndex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_UlcerIndex", &exp); int fails = 0; + { const char *nm = wickra_ulcer_index_name(h); + if (!nm || strcmp(nm, "UlcerIndex") != 0) { printf("FAIL UlcerIndex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8289,6 +9221,8 @@ static int check_UltimateOscillator(void) { if (!h) { printf("FAIL UltimateOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_UltimateOscillator", &exp); int fails = 0; + { const char *nm = wickra_ultimate_oscillator_name(h); + if (!nm || strcmp(nm, "UltimateOscillator") != 0) { printf("FAIL UltimateOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8305,6 +9239,8 @@ static int check_UniqueThreeRiver(void) { if (!h) { printf("FAIL UniqueThreeRiver: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_UniqueThreeRiver", &exp); int fails = 0; + { const char *nm = wickra_unique_three_river_name(h); + if (!nm || strcmp(nm, "UniqueThreeRiver") != 0) { printf("FAIL UniqueThreeRiver: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8321,6 +9257,8 @@ static int check_UniversalOscillator(void) { if (!h) { printf("FAIL UniversalOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_UniversalOscillator", &exp); int fails = 0; + { const char *nm = wickra_universal_oscillator_name(h); + if (!nm || strcmp(nm, "UniversalOscillator") != 0) { printf("FAIL UniversalOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8337,6 +9275,8 @@ static int check_UpDownVolumeRatio(void) { if (!h) { printf("FAIL UpDownVolumeRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_UpDownVolumeRatio", &exp); int fails = 0; + { const char *nm = wickra_up_down_volume_ratio_name(h); + if (!nm || strcmp(nm, "UpDownVolumeRatio") != 0) { printf("FAIL UpDownVolumeRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8355,6 +9295,8 @@ static int check_UpsideGapThreeMethods(void) { if (!h) { printf("FAIL UpsideGapThreeMethods: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_UpsideGapThreeMethods", &exp); int fails = 0; + { const char *nm = wickra_upside_gap_three_methods_name(h); + if (!nm || strcmp(nm, "UpsideGapThreeMethods") != 0) { printf("FAIL UpsideGapThreeMethods: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8371,6 +9313,8 @@ static int check_UpsideGapTwoCrows(void) { if (!h) { printf("FAIL UpsideGapTwoCrows: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_UpsideGapTwoCrows", &exp); int fails = 0; + { const char *nm = wickra_upside_gap_two_crows_name(h); + if (!nm || strcmp(nm, "UpsideGapTwoCrows") != 0) { printf("FAIL UpsideGapTwoCrows: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8387,6 +9331,8 @@ static int check_UpsidePotentialRatio(void) { if (!h) { printf("FAIL UpsidePotentialRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_UpsidePotentialRatio", &exp); int fails = 0; + { const char *nm = wickra_upside_potential_ratio_name(h); + if (!nm || strcmp(nm, "UpsidePotentialRatio") != 0) { printf("FAIL UpsidePotentialRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8403,6 +9349,8 @@ static int check_ValueArea(void) { if (!h) { printf("FAIL ValueArea: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ValueArea", &exp); int fails = 0; + { const char *nm = wickra_value_area_name(h); + if (!nm || strcmp(nm, "ValueArea") != 0) { printf("FAIL ValueArea: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8426,6 +9374,8 @@ static int check_ValueAtRisk(void) { if (!h) { printf("FAIL ValueAtRisk: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ValueAtRisk", &exp); int fails = 0; + { const char *nm = wickra_value_at_risk_name(h); + if (!nm || strcmp(nm, "ValueAtRisk") != 0) { printf("FAIL ValueAtRisk: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8442,6 +9392,8 @@ static int check_Variance(void) { if (!h) { printf("FAIL Variance: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Variance", &exp); int fails = 0; + { const char *nm = wickra_variance_name(h); + if (!nm || strcmp(nm, "Variance") != 0) { printf("FAIL Variance: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8458,6 +9410,8 @@ static int check_VarianceRatio(void) { if (!h) { printf("FAIL VarianceRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VarianceRatio", &exp); int fails = 0; + { const char *nm = wickra_variance_ratio_name(h); + if (!nm || strcmp(nm, "VarianceRatio") != 0) { printf("FAIL VarianceRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8474,6 +9428,8 @@ static int check_VerticalHorizontalFilter(void) { if (!h) { printf("FAIL VerticalHorizontalFilter: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VerticalHorizontalFilter", &exp); int fails = 0; + { const char *nm = wickra_vertical_horizontal_filter_name(h); + if (!nm || strcmp(nm, "VerticalHorizontalFilter") != 0) { printf("FAIL VerticalHorizontalFilter: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8490,6 +9446,8 @@ static int check_Vidya(void) { if (!h) { printf("FAIL Vidya: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Vidya", &exp); int fails = 0; + { const char *nm = wickra_vidya_name(h); + if (!nm || strcmp(nm, "VIDYA") != 0) { printf("FAIL Vidya: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8506,6 +9464,8 @@ static int check_VolatilityCone(void) { if (!h) { printf("FAIL VolatilityCone: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VolatilityCone", &exp); int fails = 0; + { const char *nm = wickra_volatility_cone_name(h); + if (!nm || strcmp(nm, "VolatilityCone") != 0) { printf("FAIL VolatilityCone: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8531,6 +9491,8 @@ static int check_VolatilityOfVolatility(void) { if (!h) { printf("FAIL VolatilityOfVolatility: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VolatilityOfVolatility", &exp); int fails = 0; + { const char *nm = wickra_volatility_of_volatility_name(h); + if (!nm || strcmp(nm, "VolatilityOfVolatility") != 0) { printf("FAIL VolatilityOfVolatility: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8547,6 +9509,8 @@ static int check_VolatilityRatio(void) { if (!h) { printf("FAIL VolatilityRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VolatilityRatio", &exp); int fails = 0; + { const char *nm = wickra_volatility_ratio_name(h); + if (!nm || strcmp(nm, "VolatilityRatio") != 0) { printf("FAIL VolatilityRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8563,6 +9527,8 @@ static int check_VoltyStop(void) { if (!h) { printf("FAIL VoltyStop: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VoltyStop", &exp); int fails = 0; + { const char *nm = wickra_volty_stop_name(h); + if (!nm || strcmp(nm, "VoltyStop") != 0) { printf("FAIL VoltyStop: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8579,6 +9545,8 @@ static int check_VolumeBars(void) { if (!h) { printf("FAIL VolumeBars: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VolumeBars", &exp); int fails = 0; + { const char *nm = wickra_volume_bars_name(h); + if (!nm || strcmp(nm, "VolumeBars") != 0) { printf("FAIL VolumeBars: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8603,6 +9571,8 @@ static int check_VolumeByTimeProfile(void) { if (!h) { printf("FAIL VolumeByTimeProfile: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VolumeByTimeProfile", &exp); int fails = 0; + { const char *nm = wickra_volume_by_time_profile_name(h); + if (!nm || strcmp(nm, "VolumeByTimeProfile") != 0) { printf("FAIL VolumeByTimeProfile: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8622,6 +9592,8 @@ static int check_VolumeOscillator(void) { if (!h) { printf("FAIL VolumeOscillator: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VolumeOscillator", &exp); int fails = 0; + { const char *nm = wickra_volume_oscillator_name(h); + if (!nm || strcmp(nm, "VolumeOscillator") != 0) { printf("FAIL VolumeOscillator: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8638,6 +9610,8 @@ static int check_VolumePriceTrend(void) { if (!h) { printf("FAIL VolumePriceTrend: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VolumePriceTrend", &exp); int fails = 0; + { const char *nm = wickra_volume_price_trend_name(h); + if (!nm || strcmp(nm, "VPT") != 0) { printf("FAIL VolumePriceTrend: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8654,6 +9628,8 @@ static int check_VolumeProfile(void) { if (!h) { printf("FAIL VolumeProfile: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VolumeProfile", &exp); int fails = 0; + { const char *nm = wickra_volume_profile_name(h); + if (!nm || strcmp(nm, "VolumeProfile") != 0) { printf("FAIL VolumeProfile: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8675,6 +9651,8 @@ static int check_VolumeRsi(void) { if (!h) { printf("FAIL VolumeRsi: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VolumeRsi", &exp); int fails = 0; + { const char *nm = wickra_volume_rsi_name(h); + if (!nm || strcmp(nm, "VolumeRsi") != 0) { printf("FAIL VolumeRsi: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8691,6 +9669,8 @@ static int check_VolumeWeightedMacd(void) { if (!h) { printf("FAIL VolumeWeightedMacd: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VolumeWeightedMacd", &exp); int fails = 0; + { const char *nm = wickra_volume_weighted_macd_name(h); + if (!nm || strcmp(nm, "VolumeWeightedMacd") != 0) { printf("FAIL VolumeWeightedMacd: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8714,6 +9694,8 @@ static int check_VolumeWeightedSr(void) { if (!h) { printf("FAIL VolumeWeightedSr: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VolumeWeightedSr", &exp); int fails = 0; + { const char *nm = wickra_volume_weighted_sr_name(h); + if (!nm || strcmp(nm, "VolumeWeightedSr") != 0) { printf("FAIL VolumeWeightedSr: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8736,6 +9718,8 @@ static int check_Vortex(void) { if (!h) { printf("FAIL Vortex: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Vortex", &exp); int fails = 0; + { const char *nm = wickra_vortex_name(h); + if (!nm || strcmp(nm, "Vortex") != 0) { printf("FAIL Vortex: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8758,6 +9742,8 @@ static int check_Vpin(void) { if (!h) { printf("FAIL Vpin: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Vpin", &exp); int fails = 0; + { const char *nm = wickra_vpin_name(h); + if (!nm || strcmp(nm, "Vpin") != 0) { printf("FAIL Vpin: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8774,6 +9760,8 @@ static int check_Vwap(void) { if (!h) { printf("FAIL Vwap: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Vwap", &exp); int fails = 0; + { const char *nm = wickra_vwap_name(h); + if (!nm || strcmp(nm, "VWAP") != 0) { printf("FAIL Vwap: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8790,6 +9778,8 @@ static int check_VwapStdDevBands(void) { if (!h) { printf("FAIL VwapStdDevBands: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_VwapStdDevBands", &exp); int fails = 0; + { const char *nm = wickra_vwap_std_dev_bands_name(h); + if (!nm || strcmp(nm, "VwapStdDevBands") != 0) { printf("FAIL VwapStdDevBands: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8814,6 +9804,8 @@ static int check_Vwma(void) { if (!h) { printf("FAIL Vwma: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Vwma", &exp); int fails = 0; + { const char *nm = wickra_vwma_name(h); + if (!nm || strcmp(nm, "VWMA") != 0) { printf("FAIL Vwma: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8830,6 +9822,8 @@ static int check_Vzo(void) { if (!h) { printf("FAIL Vzo: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Vzo", &exp); int fails = 0; + { const char *nm = wickra_vzo_name(h); + if (!nm || strcmp(nm, "VZO") != 0) { printf("FAIL Vzo: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8846,6 +9840,8 @@ static int check_Wad(void) { if (!h) { printf("FAIL Wad: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Wad", &exp); int fails = 0; + { const char *nm = wickra_wad_name(h); + if (!nm || strcmp(nm, "Wad") != 0) { printf("FAIL Wad: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8862,6 +9858,8 @@ static int check_WavePm(void) { if (!h) { printf("FAIL WavePm: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_WavePm", &exp); int fails = 0; + { const char *nm = wickra_wave_pm_name(h); + if (!nm || strcmp(nm, "WavePm") != 0) { printf("FAIL WavePm: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8878,6 +9876,8 @@ static int check_WaveTrend(void) { if (!h) { printf("FAIL WaveTrend: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_WaveTrend", &exp); int fails = 0; + { const char *nm = wickra_wave_trend_name(h); + if (!nm || strcmp(nm, "WaveTrend") != 0) { printf("FAIL WaveTrend: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8900,6 +9900,8 @@ static int check_Wedge(void) { if (!h) { printf("FAIL Wedge: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Wedge", &exp); int fails = 0; + { const char *nm = wickra_wedge_name(h); + if (!nm || strcmp(nm, "Wedge") != 0) { printf("FAIL Wedge: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8916,6 +9918,8 @@ static int check_WeightedClose(void) { if (!h) { printf("FAIL WeightedClose: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_WeightedClose", &exp); int fails = 0; + { const char *nm = wickra_weighted_close_name(h); + if (!nm || strcmp(nm, "WeightedClose") != 0) { printf("FAIL WeightedClose: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8932,6 +9936,8 @@ static int check_WickRatio(void) { if (!h) { printf("FAIL WickRatio: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_WickRatio", &exp); int fails = 0; + { const char *nm = wickra_wick_ratio_name(h); + if (!nm || strcmp(nm, "WickRatio") != 0) { printf("FAIL WickRatio: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8948,6 +9954,8 @@ static int check_WilliamsFractals(void) { if (!h) { printf("FAIL WilliamsFractals: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_WilliamsFractals", &exp); int fails = 0; + { const char *nm = wickra_williams_fractals_name(h); + if (!nm || strcmp(nm, "WilliamsFractals") != 0) { printf("FAIL WilliamsFractals: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8970,6 +9978,8 @@ static int check_WilliamsR(void) { if (!h) { printf("FAIL WilliamsR: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_WilliamsR", &exp); int fails = 0; + { const char *nm = wickra_williams_r_name(h); + if (!nm || strcmp(nm, "WilliamsR") != 0) { printf("FAIL WilliamsR: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -8986,6 +9996,8 @@ static int check_WinRate(void) { if (!h) { printf("FAIL WinRate: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_WinRate", &exp); int fails = 0; + { const char *nm = wickra_win_rate_name(h); + if (!nm || strcmp(nm, "WinRate") != 0) { printf("FAIL WinRate: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -9002,6 +10014,8 @@ static int check_Wma(void) { if (!h) { printf("FAIL Wma: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Wma", &exp); int fails = 0; + { const char *nm = wickra_wma_name(h); + if (!nm || strcmp(nm, "WMA") != 0) { printf("FAIL Wma: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -9018,6 +10032,8 @@ static int check_WoodiePivots(void) { if (!h) { printf("FAIL WoodiePivots: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_WoodiePivots", &exp); int fails = 0; + { const char *nm = wickra_woodie_pivots_name(h); + if (!nm || strcmp(nm, "WoodiePivots") != 0) { printf("FAIL WoodiePivots: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -9043,6 +10059,8 @@ static int check_YangZhangVolatility(void) { if (!h) { printf("FAIL YangZhangVolatility: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_YangZhangVolatility", &exp); int fails = 0; + { const char *nm = wickra_yang_zhang_volatility_name(h); + if (!nm || strcmp(nm, "YangZhangVolatility") != 0) { printf("FAIL YangZhangVolatility: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -9059,6 +10077,8 @@ static int check_YoyoExit(void) { if (!h) { printf("FAIL YoyoExit: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_YoyoExit", &exp); int fails = 0; + { const char *nm = wickra_yoyo_exit_name(h); + if (!nm || strcmp(nm, "YoyoExit") != 0) { printf("FAIL YoyoExit: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -9075,6 +10095,8 @@ static int check_ZScore(void) { if (!h) { printf("FAIL ZScore: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ZScore", &exp); int fails = 0; + { const char *nm = wickra_z_score_name(h); + if (!nm || strcmp(nm, "ZScore") != 0) { printf("FAIL ZScore: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -9091,6 +10113,8 @@ static int check_ZeroLagMacd(void) { if (!h) { printf("FAIL ZeroLagMacd: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ZeroLagMacd", &exp); int fails = 0; + { const char *nm = wickra_zero_lag_macd_name(h); + if (!nm || strcmp(nm, "ZeroLagMACD") != 0) { printf("FAIL ZeroLagMacd: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -9114,6 +10138,8 @@ static int check_ZigZag(void) { if (!h) { printf("FAIL ZigZag: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_ZigZag", &exp); int fails = 0; + { const char *nm = wickra_zig_zag_name(h); + if (!nm || strcmp(nm, "ZigZag") != 0) { printf("FAIL ZigZag: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; @@ -9136,6 +10162,8 @@ static int check_Zlema(void) { if (!h) { printf("FAIL Zlema: new returned NULL\n"); return 1; } double **exp; int rows = read_fixture("g_Zlema", &exp); int fails = 0; + { const char *nm = wickra_zlema_name(h); + if (!nm || strcmp(nm, "ZLEMA") != 0) { printf("FAIL Zlema: name %s\n", nm ? nm : "(null)"); fails++; } } for (int i = 0; i < N_INPUT; i++) { double o = IN[i][0], hi = IN[i][1], lo = IN[i][2], c = IN[i][3], v = IN[i][4]; (void)o; (void)hi; (void)lo; (void)c; (void)v; diff --git a/testdata/golden/names.json b/testdata/golden/names.json new file mode 100644 index 00000000..5547be3f --- /dev/null +++ b/testdata/golden/names.json @@ -0,0 +1,516 @@ +{ + "AbandonedBaby": "AbandonedBaby", + "Abcd": "Abcd", + "AbsoluteBreadthIndex": "AbsoluteBreadthIndex", + "AccelerationBands": "AccelerationBands", + "AcceleratorOscillator": "AcceleratorOscillator", + "AdOscillator": "ADOSC", + "AdVolumeLine": "AdVolumeLine", + "AdaptiveCci": "AdaptiveCci", + "AdaptiveCycle": "AdaptiveCycle", + "AdaptiveLaguerreFilter": "AdaptiveLaguerre", + "AdaptiveRsi": "AdaptiveRsi", + "Adl": "ADL", + "AdvanceBlock": "AdvanceBlock", + "AdvanceDecline": "AdvanceDecline", + "AdvanceDeclineRatio": "AdvanceDeclineRatio", + "Adx": "ADX", + "Adxr": "ADXR", + "Alligator": "Alligator", + "Alma": "ALMA", + "Alpha": "Alpha", + "AmihudIlliquidity": "AmihudIlliquidity", + "AnchoredRsi": "AnchoredRSI", + "AnchoredVwap": "AnchoredVWAP", + "AndrewsPitchfork": "AndrewsPitchfork", + "Apo": "APO", + "Aroon": "Aroon", + "AroonOscillator": "AroonOscillator", + "Atr": "ATR", + "AtrBands": "AtrBands", + "AtrRatchet": "AtrRatchet", + "AtrTrailingStop": "AtrTrailingStop", + "AutoFib": "AutoFib", + "Autocorrelation": "Autocorrelation", + "AutocorrelationPeriodogram": "AutocorrelationPeriodogram", + "AverageDailyRange": "AverageDailyRange", + "AverageDrawdown": "AverageDrawdown", + "AvgPrice": "AVGPRICE", + "AwesomeOscillator": "AwesomeOscillator", + "AwesomeOscillatorHistogram": "AwesomeOscillatorHistogram", + "BalanceOfPower": "BalanceOfPower", + "BandpassFilter": "BandpassFilter", + "Bat": "Bat", + "BeltHold": "BeltHold", + "Beta": "Beta", + "BetaNeutralSpread": "BetaNeutralSpread", + "BetterVolume": "BetterVolume", + "BipowerVariation": "BipowerVariation", + "BodySizePct": "BodySizePct", + "BollingerBands": "BollingerBands", + "BollingerBandwidth": "BollingerBandwidth", + "BomarBands": "BomarBands", + "BreadthThrust": "BreadthThrust", + "Breakaway": "Breakaway", + "BullishPercentIndex": "BullishPercentIndex", + "BurkeRatio": "BurkeRatio", + "Butterfly": "Butterfly", + "CalendarSpread": "CalendarSpread", + "CalmarRatio": "CalmarRatio", + "Camarilla": "Camarilla", + "CandleVolume": "CandleVolume", + "Cci": "CCI", + "CenterOfGravity": "CenterOfGravity", + "CentralPivotRange": "CentralPivotRange", + "Cfo": "CFO", + "ChaikinMoneyFlow": "CMF", + "ChaikinOscillator": "ChaikinOscillator", + "ChaikinVolatility": "ChaikinVolatility", + "ChandeKrollStop": "ChandeKrollStop", + "ChandelierExit": "ChandelierExit", + "ChoppinessIndex": "ChoppinessIndex", + "ClassicPivots": "ClassicPivots", + "CloseVsOpen": "CloseVsOpen", + "ClosingMarubozu": "ClosingMarubozu", + "Cmo": "CMO", + "CoefficientOfVariation": "CoefficientOfVariation", + "Cointegration": "Cointegration", + "CommonSenseRatio": "CommonSenseRatio", + "CompositeProfile": "CompositeProfile", + "ConcealingBabySwallow": "ConcealingBabySwallow", + "ConditionalValueAtRisk": "ConditionalValueAtRisk", + "ConnorsRsi": "ConnorsRSI", + "Coppock": "Coppock", + "CorrelationTrendIndicator": "CorrelationTrendIndicator", + "Counterattack": "Counterattack", + "Crab": "Crab", + "CumulativeVolumeDelta": "CumulativeVolumeDelta", + "CumulativeVolumeIndex": "CumulativeVolumeIndex", + "CupAndHandle": "CupAndHandle", + "CyberneticCycle": "CyberneticCycle", + "Cypher": "Cypher", + "DayOfWeekProfile": "DayOfWeekProfile", + "Decycler": "Decycler", + "DecyclerOscillator": "DecyclerOscillator", + "Dema": "DEMA", + "DemandIndex": "DemandIndex", + "DemarkPivots": "DemarkPivots", + "DepthSlope": "DepthSlope", + "DerivativeOscillator": "DerivativeOscillator", + "DetrendedStdDev": "DetrendedStdDev", + "DisparityIndex": "DisparityIndex", + "DistanceSsd": "DistanceSsd", + "Doji": "Doji", + "DojiStar": "DojiStar", + "DollarBars": "DollarBars", + "Donchian": "DonchianChannels", + "DonchianStop": "DonchianStop", + "DoubleBollinger": "DoubleBollinger", + "DoubleTopBottom": "DoubleTopBottom", + "DownsideGapThreeMethods": "DownsideGapThreeMethods", + "Dpo": "DPO", + "DragonflyDoji": "DragonflyDoji", + "DrawdownDuration": "DrawdownDuration", + "DumplingTop": "DumplingTop", + "Dx": "DX", + "DynamicMomentumIndex": "DynamicMomentumIndex", + "EaseOfMovement": "EaseOfMovement", + "EffectiveSpread": "EffectiveSpread", + "EhlersStochastic": "EhlersStochastic", + "Ehma": "EHMA", + "ElderImpulse": "ElderImpulse", + "ElderRay": "ElderRay", + "ElderSafeZone": "ElderSafeZone", + "Ema": "EMA", + "EmpiricalModeDecomposition": "EmpiricalModeDecomposition", + "Engulfing": "Engulfing", + "Equivolume": "Equivolume", + "EstimatedLeverageRatio": "EstimatedLeverageRatio", + "EvenBetterSinewave": "EvenBetterSinewave", + "EveningDojiStar": "EveningDojiStar", + "Evwma": "EVWMA", + "EwmaVolatility": "EwmaVolatility", + "Expectancy": "Expectancy", + "FallingThreeMethods": "FallingThreeMethods", + "Fama": "FAMA", + "FibArcs": "FibArcs", + "FibChannel": "FibChannel", + "FibConfluence": "FibConfluence", + "FibExtension": "FibExtension", + "FibFan": "FibFan", + "FibProjection": "FibProjection", + "FibRetracement": "FibRetracement", + "FibTimeZones": "FibTimeZones", + "FibonacciPivots": "FibonacciPivots", + "FisherRsi": "FisherRSI", + "FisherTransform": "FisherTransform", + "FlagPennant": "FlagPennant", + "Footprint": "Footprint", + "ForceIndex": "ForceIndex", + "FractalChaosBands": "FractalChaosBands", + "Frama": "FRAMA", + "FryPanBottom": "FryPanBottom", + "FundingBasis": "FundingBasis", + "FundingImpliedApr": "FundingImpliedApr", + "FundingRate": "FundingRate", + "FundingRateMean": "FundingRateMean", + "FundingRateZScore": "FundingRateZScore", + "GainLossRatio": "GainLossRatio", + "GainToPainRatio": "GainToPainRatio", + "GapSideBySideWhite": "GapSideBySideWhite", + "Garch11": "Garch11", + "GarmanKlassVolatility": "GarmanKlassVolatility", + "Gartley": "Gartley", + "GatorOscillator": "GatorOscillator", + "GeneralizedDema": "GD", + "GeometricMa": "GMA", + "GoldenPocket": "GoldenPocket", + "GrangerCausality": "GrangerCausality", + "GravestoneDoji": "GravestoneDoji", + "Hammer": "Hammer", + "HangingMan": "HangingMan", + "Harami": "Harami", + "HaramiCross": "HaramiCross", + "HasbrouckInformationShare": "HasbrouckInformationShare", + "HeadAndShoulders": "HeadAndShoulders", + "HeikinAshi": "HeikinAshi", + "HeikinAshiOscillator": "HeikinAshiOscillator", + "HiLoActivator": "HiLoActivator", + "HighLowIndex": "HighLowIndex", + "HighLowRange": "HighLowRange", + "HighLowVolumeNodes": "HighLowVolumeNodes", + "HighWave": "HighWave", + "HighpassFilter": "HighpassFilter", + "Hikkake": "Hikkake", + "HikkakeModified": "HikkakeModified", + "HilbertDominantCycle": "HilbertDominantCycle", + "HistoricalVolatility": "HistoricalVolatility", + "Hma": "HMA", + "HoltWinters": "HoltWinters", + "HomingPigeon": "HomingPigeon", + "HtDcPhase": "HT_DCPHASE", + "HtPhasor": "HT_PHASOR", + "HtTrendMode": "HT_TRENDMODE", + "HurstChannel": "HurstChannel", + "HurstExponent": "HurstExponent", + "Ichimoku": "Ichimoku", + "IdenticalThreeCrows": "IdenticalThreeCrows", + "ImbalanceBars": "ImbalanceBars", + "InNeck": "InNeck", + "Inertia": "Inertia", + "InformationRatio": "InformationRatio", + "InitialBalance": "InitialBalance", + "InstantaneousTrendline": "InstantaneousTrendline", + "IntradayIntensity": "IntradayIntensity", + "IntradayMomentumIndex": "IMI", + "IntradayVolatilityProfile": "IntradayVolatilityProfile", + "InverseFisherTransform": "InverseFisherTransform", + "InvertedHammer": "InvertedHammer", + "JarqueBera": "JarqueBera", + "Jma": "JMA", + "JumpIndicator": "JumpIndicator", + "KRatio": "KRatio", + "KagiBars": "KagiBars", + "KalmanHedgeRatio": "KalmanHedgeRatio", + "Kama": "KAMA", + "KaseDevStop": "KaseDevStop", + "KasePermissionStochastic": "KasePermissionStochastic", + "KellyCriterion": "KellyCriterion", + "Keltner": "KeltnerChannels", + "KendallTau": "KendallTau", + "Kicking": "Kicking", + "KickingByLength": "KickingByLength", + "Kst": "KST", + "Kurtosis": "Kurtosis", + "Kvo": "KVO", + "KylesLambda": "KylesLambda", + "LadderBottom": "LadderBottom", + "LaguerreRsi": "LaguerreRSI", + "LeadLagCrossCorrelation": "LeadLagCrossCorrelation", + "LinRegAngle": "LinRegAngle", + "LinRegChannel": "LinRegChannel", + "LinRegIntercept": "LINEARREG_INTERCEPT", + "LinRegSlope": "LinRegSlope", + "LinearRegression": "LinearRegression", + "LiquidationFeatures": "LiquidationFeatures", + "LogReturn": "LogReturn", + "LongLeggedDoji": "LongLeggedDoji", + "LongLine": "LongLine", + "LongShortRatio": "LongShortRatio", + "M2Measure": "M2Measure", + "MaEnvelope": "MaEnvelope", + "MacdExt": "MACDEXT", + "MacdFix": "MACDFIX", + "MacdHistogram": "MacdHistogram", + "MacdIndicator": "MACD", + "Mama": "MAMA", + "MarketFacilitationIndex": "MarketFacilitationIndex", + "MartinRatio": "MartinRatio", + "Marubozu": "Marubozu", + "MassIndex": "MassIndex", + "MatHold": "MatHold", + "MatchingLow": "MatchingLow", + "MaxDrawdown": "MaxDrawdown", + "McClellanOscillator": "McClellanOscillator", + "McClellanSummationIndex": "McClellanSummationIndex", + "McGinleyDynamic": "McGinleyDynamic", + "MedianAbsoluteDeviation": "MedianAbsoluteDeviation", + "MedianChannel": "MedianChannel", + "MedianMa": "MedianMA", + "MedianPrice": "MedianPrice", + "Mfi": "MFI", + "Microprice": "Microprice", + "MidPoint": "MIDPOINT", + "MidPrice": "MIDPRICE", + "MinusDi": "MINUS_DI", + "MinusDm": "MINUS_DM", + "ModifiedMaStop": "ModifiedMaStop", + "Mom": "MOM", + "MorningDojiStar": "MorningDojiStar", + "MorningEveningStar": "MorningEveningStar", + "MurreyMathLines": "MurreyMathLines", + "NakedPoc": "NakedPoc", + "Natr": "NATR", + "NewHighsNewLows": "NewHighsNewLows", + "NewPriceLines": "NewPriceLines", + "Nrtr": "Nrtr", + "Nvi": "NVI", + "OIPriceDivergence": "OIPriceDivergence", + "OIWeighted": "OIWeighted", + "Obv": "OBV", + "OiToVolumeRatio": "OiToVolumeRatio", + "OmegaRatio": "OmegaRatio", + "OnNeck": "OnNeck", + "OpenInterestDelta": "OpenInterestDelta", + "OpenInterestMomentum": "OpenInterestMomentum", + "OpeningMarubozu": "OpeningMarubozu", + "OpeningRange": "OpeningRange", + "OrderBookImbalanceFull": "OrderBookImbalanceFull", + "OrderBookImbalanceTop1": "OrderBookImbalanceTop1", + "OrderBookImbalanceTopN": "OrderBookImbalanceTopN", + "OrderFlowImbalance": "OrderFlowImbalance", + "OuHalfLife": "OuHalfLife", + "OvernightGap": "OvernightGap", + "OvernightIntradayReturn": "OvernightIntradayReturn", + "PainIndex": "PainIndex", + "PairSpreadZScore": "PairSpreadZScore", + "PairwiseBeta": "PairwiseBeta", + "ParkinsonVolatility": "ParkinsonVolatility", + "PearsonCorrelation": "PearsonCorrelation", + "PercentAboveMa": "PercentAboveMa", + "PercentB": "PercentB", + "PercentageTrailingStop": "PercentageTrailingStop", + "PerpetualPremiumIndex": "PerpetualPremiumIndex", + "Pgo": "PGO", + "PiercingDarkCloud": "PiercingDarkCloud", + "Pin": "PIN", + "PivotReversal": "PivotReversal", + "PlusDi": "PLUS_DI", + "PlusDm": "PLUS_DM", + "Pmo": "PMO", + "PointAndFigureBars": "PointAndFigureBars", + "PolarizedFractalEfficiency": "PolarizedFractalEfficiency", + "Ppo": "PPO", + "PpoHistogram": "PpoHistogram", + "ProfileShape": "ProfileShape", + "ProfitFactor": "ProfitFactor", + "ProjectionBands": "ProjectionBands", + "ProjectionOscillator": "ProjectionOscillator", + "Psar": "PSAR", + "Pvi": "PVI", + "Qqe": "QQE", + "Qstick": "Qstick", + "QuartileBands": "QuartileBands", + "QuotedSpread": "QuotedSpread", + "RSquared": "RSquared", + "RangeBars": "RangeBars", + "RealizedSpread": "RealizedSpread", + "RealizedVolatility": "RealizedVolatility", + "RecoveryFactor": "RecoveryFactor", + "RectangleRange": "RectangleRange", + "Reflex": "Reflex", + "RegimeLabel": "RegimeLabel", + "RelativeStrengthAB": "RelativeStrengthAB", + "RenkoBars": "RenkoBars", + "RenkoTrailingStop": "RenkoTrailingStop", + "RickshawMan": "RickshawMan", + "RisingThreeMethods": "RisingThreeMethods", + "Rmi": "RMI", + "Roc": "ROC", + "Rocp": "ROCP", + "Rocr": "ROCR", + "Rocr100": "ROCR100", + "RogersSatchellVolatility": "RogersSatchellVolatility", + "RollMeasure": "RollMeasure", + "RollingCorrelation": "RollingCorrelation", + "RollingCovariance": "RollingCovariance", + "RollingIqr": "RollingIqr", + "RollingMinMaxScaler": "RollingMinMaxScaler", + "RollingPercentileRank": "RollingPercentileRank", + "RollingQuantile": "RollingQuantile", + "RollingVwap": "RollingVWAP", + "RoofingFilter": "RoofingFilter", + "Rsi": "RSI", + "Rsx": "RSX", + "RunBars": "RunBars", + "Rvi": "RVI", + "RviVolatility": "RVIVolatility", + "Rwi": "RWI", + "SampleEntropy": "SampleEntropy", + "SarExt": "SAREXT", + "SeasonalZScore": "SeasonalZScore", + "SeparatingLines": "SeparatingLines", + "SessionHighLow": "SessionHighLow", + "SessionRange": "SessionRange", + "SessionVwap": "SessionVwap", + "ShannonEntropy": "ShannonEntropy", + "Shark": "Shark", + "SharpeRatio": "SharpeRatio", + "ShootingStar": "ShootingStar", + "ShortLine": "ShortLine", + "SignedVolume": "SignedVolume", + "SineWave": "SineWave", + "SineWeightedMa": "SWMA", + "SinglePrints": "SinglePrints", + "Skewness": "Skewness", + "Sma": "SMA", + "Smi": "SMI", + "Smma": "SMMA", + "SmoothedHeikinAshi": "SmoothedHeikinAshi", + "SortinoRatio": "SortinoRatio", + "SpearmanCorrelation": "SpearmanCorrelation", + "SpinningTop": "SpinningTop", + "SpreadAr1Coefficient": "SpreadAr1Coefficient", + "SpreadBollingerBands": "SpreadBollingerBands", + "SpreadHurst": "SpreadHurst", + "StalledPattern": "StalledPattern", + "StandardError": "StandardError", + "StandardErrorBands": "StandardErrorBands", + "StarcBands": "StarcBands", + "Stc": "STC", + "StdDev": "StdDev", + "StepTrailingStop": "StepTrailingStop", + "SterlingRatio": "SterlingRatio", + "StickSandwich": "StickSandwich", + "StochRsi": "StochRSI", + "Stochastic": "Stochastic", + "StochasticCci": "StochasticCCI", + "SuperSmoother": "SuperSmoother", + "SuperTrend": "SuperTrend", + "T3": "T3", + "TailRatio": "TailRatio", + "TakerBuySellRatio": "TakerBuySellRatio", + "Takuri": "Takuri", + "TasukiGap": "TasukiGap", + "TdCamouflage": "TDCamouflage", + "TdClop": "TDClop", + "TdClopwin": "TDClopwin", + "TdCombo": "TDCombo", + "TdCountdown": "TDCountdown", + "TdDWave": "TDDWave", + "TdDeMarker": "TDDeMarker", + "TdDifferential": "TDDifferential", + "TdLines": "TDLines", + "TdMovingAverage": "TDMovingAverage", + "TdOpen": "TDOpen", + "TdPressure": "TDPressure", + "TdPropulsion": "TDPropulsion", + "TdRangeProjection": "TDRangeProjection", + "TdRei": "TDREI", + "TdRiskLevel": "TDRiskLevel", + "TdSequential": "TDSequential", + "TdSetup": "TDSetup", + "TdTrap": "TDTrap", + "Tema": "TEMA", + "TermStructureBasis": "TermStructureBasis", + "ThreeDrives": "ThreeDrives", + "ThreeInside": "ThreeInside", + "ThreeLineBreak": "ThreeLineBreak", + "ThreeLineBreakBars": "ThreeLineBreakBars", + "ThreeLineStrike": "ThreeLineStrike", + "ThreeOutside": "ThreeOutside", + "ThreeSoldiersOrCrows": "ThreeSoldiersOrCrows", + "ThreeStarsInSouth": "ThreeStarsInSouth", + "Thrusting": "Thrusting", + "TickBars": "TickBars", + "TickIndex": "TickIndex", + "Tii": "TII", + "TimeBasedStop": "TimeBasedStop", + "TimeOfDayReturnProfile": "TimeOfDayReturnProfile", + "TowerTopBottom": "TowerTopBottom", + "TpoProfile": "TpoProfile", + "TradeImbalance": "TradeImbalance", + "TradeSignAutocorrelation": "TradeSignAutocorrelation", + "TradeVolumeIndex": "TradeVolumeIndex", + "TrendLabel": "TrendLabel", + "TrendStrengthIndex": "TrendStrengthIndex", + "Trendflex": "Trendflex", + "TreynorRatio": "TreynorRatio", + "Triangle": "Triangle", + "Trima": "TRIMA", + "Trin": "Trin", + "TripleTopBottom": "TripleTopBottom", + "Tristar": "Tristar", + "Trix": "TRIX", + "TrueRange": "TrueRange", + "Tsf": "TSF", + "TsfOscillator": "TsfOscillator", + "Tsi": "TSI", + "Tsv": "TSV", + "TtmSqueeze": "TtmSqueeze", + "TtmTrend": "TtmTrend", + "TurnOfMonth": "TurnOfMonth", + "Tweezer": "Tweezer", + "TwiggsMoneyFlow": "TwiggsMoneyFlow", + "TwoCrows": "TwoCrows", + "TypicalPrice": "TypicalPrice", + "UlcerIndex": "UlcerIndex", + "UltimateOscillator": "UltimateOscillator", + "UniqueThreeRiver": "UniqueThreeRiver", + "UniversalOscillator": "UniversalOscillator", + "UpDownVolumeRatio": "UpDownVolumeRatio", + "UpsideGapThreeMethods": "UpsideGapThreeMethods", + "UpsideGapTwoCrows": "UpsideGapTwoCrows", + "UpsidePotentialRatio": "UpsidePotentialRatio", + "ValueArea": "ValueArea", + "ValueAtRisk": "ValueAtRisk", + "Variance": "Variance", + "VarianceRatio": "VarianceRatio", + "VerticalHorizontalFilter": "VerticalHorizontalFilter", + "Vidya": "VIDYA", + "VolatilityCone": "VolatilityCone", + "VolatilityOfVolatility": "VolatilityOfVolatility", + "VolatilityRatio": "VolatilityRatio", + "VoltyStop": "VoltyStop", + "VolumeBars": "VolumeBars", + "VolumeByTimeProfile": "VolumeByTimeProfile", + "VolumeOscillator": "VolumeOscillator", + "VolumePriceTrend": "VPT", + "VolumeProfile": "VolumeProfile", + "VolumeRsi": "VolumeRsi", + "VolumeWeightedMacd": "VolumeWeightedMacd", + "VolumeWeightedSr": "VolumeWeightedSr", + "Vortex": "Vortex", + "Vpin": "Vpin", + "Vwap": "VWAP", + "VwapStdDevBands": "VwapStdDevBands", + "Vwma": "VWMA", + "Vzo": "VZO", + "Wad": "Wad", + "WavePm": "WavePm", + "WaveTrend": "WaveTrend", + "Wedge": "Wedge", + "WeightedClose": "WeightedClose", + "WickRatio": "WickRatio", + "WilliamsFractals": "WilliamsFractals", + "WilliamsR": "WilliamsR", + "WinRate": "WinRate", + "Wma": "WMA", + "WoodiePivots": "WoodiePivots", + "YangZhangVolatility": "YangZhangVolatility", + "YoyoExit": "YoyoExit", + "ZScore": "ZScore", + "ZeroLagMacd": "ZeroLagMACD", + "ZigZag": "ZigZag", + "Zlema": "ZLEMA" +}