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" +}