Skip to main content

quantwave_core/indicators/
metadata_registry.rs

1//! AUTO-GENERATED by scripts/regenerate_metadata_registry.py — do not edit by hand.
2//! Re-run: `python scripts/regenerate_metadata_registry.py`
3
4use super::metadata::IndicatorMetadata;
5
6use crate::indicators::adaptive_ema::ADAPTIVE_EMA_METADATA;
7use crate::indicators::alligator::ALLIGATOR_METADATA;
8use crate::indicators::alma::ALMA_METADATA;
9use crate::indicators::amfm::AM_DETECTOR_METADATA;
10use crate::indicators::amfm::FM_DEMODULATOR_METADATA;
11use crate::indicators::atr_ts::ATR_TS_METADATA;
12use crate::indicators::autotune::AUTOTUNE_FILTER_METADATA;
13use crate::indicators::bandpass::BANDPASS_METADATA;
14use crate::indicators::butterworth::BUTTERWORTH2_METADATA;
15use crate::indicators::butterworth::BUTTERWORTH3_METADATA;
16use crate::indicators::cg::CG_METADATA;
17use crate::indicators::channel_cycle::CHANNEL_CYCLE_METADATA;
18use crate::indicators::choppiness_index::CHOPPINESS_INDEX_METADATA;
19use crate::indicators::classic_laguerre::CLASSIC_LAGUERRE_METADATA;
20use crate::indicators::continuation_index::CONTINUATION_INDEX_METADATA;
21use crate::indicators::correlation_cycle::CORRELATION_CYCLE_METADATA;
22use crate::indicators::correlation_trend::CORRELATION_TREND_METADATA;
23use crate::indicators::cyber_cycle::CYBER_CYCLE_METADATA;
24use crate::indicators::cybernetic_oscillator::CYBERNETIC_OSCILLATOR_METADATA;
25use crate::indicators::cycle::HT_DCPERIOD_METADATA;
26use crate::indicators::cycle::HT_DCPHASE_METADATA;
27use crate::indicators::cycle::HT_PHASOR_METADATA;
28use crate::indicators::cycle::HT_SINE_METADATA;
29use crate::indicators::cycle::HT_TRENDMODE_METADATA;
30use crate::indicators::cycle_trend_analytics::CYCLE_TREND_ANALYTICS_METADATA;
31use crate::indicators::dmh::DMH_METADATA;
32use crate::indicators::donchian::DONCHIAN_METADATA;
33use crate::indicators::dsma::DSMA_METADATA;
34use crate::indicators::ehlers_autocorrelation::EHLERS_AUTOCORRELATION_METADATA;
35use crate::indicators::ehlers_filter::EHLERS_FILTER_METADATA;
36use crate::indicators::ehlers_loops::EHLERS_LOOPS_METADATA;
37use crate::indicators::ehlers_stochastic::EHLERS_STOCHASTIC_METADATA;
38use crate::indicators::ehlers_ultimate_oscillator::EHLERS_ULTIMATE_OSCILLATOR_METADATA;
39use crate::indicators::emd::EMD_METADATA;
40use crate::indicators::fisher::FISHER_METADATA;
41use crate::indicators::fisher_high_pass::FISHER_HIGH_PASS_METADATA;
42use crate::indicators::fourier_series::FOURIER_SERIES_MODEL_METADATA;
43use crate::indicators::fourier_transform::FOURIER_DOMINANT_CYCLE_METADATA;
44use crate::indicators::frac_diff::FRAC_DIFF_METADATA;
45use crate::indicators::fractals::FRACTALS_METADATA;
46use crate::indicators::frama::FRAMA_METADATA;
47use crate::indicators::gap_momentum::GAP_MOMENTUM_METADATA;
48use crate::indicators::gaussian::GAUSSIAN_FILTER_METADATA;
49use crate::indicators::generalized_laguerre::GENERALIZED_LAGUERRE_METADATA;
50use crate::indicators::geometric_patterns::GEOMETRIC_PATTERNS_METADATA;
51use crate::indicators::griffiths_dominant_cycle::GRIFFITHS_DOMINANT_CYCLE_METADATA;
52use crate::indicators::griffiths_predictor::GRIFFITHS_PREDICTOR_METADATA;
53use crate::indicators::griffiths_spectrum::GRIFFITHS_SPECTRUM_METADATA;
54use crate::indicators::hamming::HAMMING_FILTER_METADATA;
55use crate::indicators::hann::HANN_FILTER_METADATA;
56use crate::indicators::harrington_adx::HARRINGTON_ADX_METADATA;
57use crate::indicators::heikin_ashi::HEIKIN_ASHI_METADATA;
58use crate::indicators::high_pass::HIGH_PASS_METADATA;
59use crate::indicators::hma::HMA_METADATA;
60use crate::indicators::homodyne_discriminator::HOMODYNE_DISCRIMINATOR_METADATA;
61use crate::indicators::hurst::HURST_EXPONENT_METADATA;
62use crate::indicators::ichimoku::ICHIMOKU_METADATA;
63use crate::indicators::instantaneous_trendline::INSTANTANEOUS_TRENDLINE_METADATA;
64use crate::indicators::inverse_fisher::INVERSE_FISHER_METADATA;
65use crate::indicators::just_ignore_them::UNDERSAMPLED_DOUBLE_MA_METADATA;
66use crate::indicators::kalman::KALMAN_FILTER_METADATA;
67use crate::indicators::kama::KAMA_METADATA;
68use crate::indicators::keltner::KELTNER_METADATA;
69use crate::indicators::kinematic_kalman::KINEMATIC_KALMAN_METADATA;
70use crate::indicators::laguerre_filter::LAGUERRE_FILTER_METADATA;
71use crate::indicators::laguerre_oscillator::LAGUERRE_OSCILLATOR_METADATA;
72use crate::indicators::laguerre_rsi::LAGUERRE_RSI_METADATA;
73use crate::indicators::mad::MAD_METADATA;
74use crate::indicators::madh::MADH_METADATA;
75use crate::indicators::mama::MAMA_METADATA;
76use crate::indicators::market_state::MARKET_STATE_METADATA;
77use crate::indicators::market_structure::MARKET_STRUCTURE_METADATA;
78use crate::indicators::mesa_stochastic::MESA_STOCHASTIC_METADATA;
79use crate::indicators::momentum::ADX_METADATA;
80use crate::indicators::momentum::APO_METADATA;
81use crate::indicators::momentum::AROON_METADATA;
82use crate::indicators::momentum::CCI_METADATA;
83use crate::indicators::momentum::CMO_METADATA;
84use crate::indicators::momentum::MACD_METADATA;
85use crate::indicators::momentum::MFI_METADATA;
86use crate::indicators::momentum::MOM_METADATA;
87use crate::indicators::momentum::PPO_METADATA;
88use crate::indicators::momentum::ROC_METADATA;
89use crate::indicators::momentum::RSI_METADATA;
90use crate::indicators::momentum::STOCH_METADATA;
91use crate::indicators::momentum::TRIX_METADATA;
92use crate::indicators::momentum::ULTOSC_METADATA;
93use crate::indicators::momentum::WILLR_METADATA;
94use crate::indicators::my_rsi::MY_RSI_METADATA;
95use crate::indicators::noise_elimination::NOISE_ELIMINATION_METADATA;
96use crate::indicators::oc_price_rsi::OC_PRICE_RSI_METADATA;
97use crate::indicators::one_euro_filter::ONE_EURO_FILTER_METADATA;
98use crate::indicators::overlap::BBANDS_METADATA;
99use crate::indicators::overlap::DEMA_METADATA;
100use crate::indicators::overlap::SAR_METADATA;
101use crate::indicators::overlap::T3_METADATA;
102use crate::indicators::overlap::TRIMA_METADATA;
103use crate::indicators::pairs_rotation::PAIRS_ROTATION_METADATA;
104use crate::indicators::pattern::CDL2CROWS_METADATA;
105use crate::indicators::pattern::CDL3BLACKCROWS_METADATA;
106use crate::indicators::pattern::CDL3INSIDE_METADATA;
107use crate::indicators::pattern::CDL3LINESTRIKE_METADATA;
108use crate::indicators::pattern::CDL3OUTSIDE_METADATA;
109use crate::indicators::pattern::CDL3STARSINSOUTH_METADATA;
110use crate::indicators::pattern::CDL3WHITESOLDIERS_METADATA;
111use crate::indicators::pattern::CDLABANDONEDBABY_METADATA;
112use crate::indicators::pattern::CDLADVANCEBLOCK_METADATA;
113use crate::indicators::pattern::CDLBELTHOLD_METADATA;
114use crate::indicators::pattern::CDLBREAKAWAY_METADATA;
115use crate::indicators::pattern::CDLCLOSINGMARUBOZU_METADATA;
116use crate::indicators::pattern::CDLCONCEALBABYSWALL_METADATA;
117use crate::indicators::pattern::CDLCOUNTERATTACK_METADATA;
118use crate::indicators::pattern::CDLDARKCLOUDCOVER_METADATA;
119use crate::indicators::pattern::CDLDOJISTAR_METADATA;
120use crate::indicators::pattern::CDLDOJI_METADATA;
121use crate::indicators::pattern::CDLDRAGONFLYDOJI_METADATA;
122use crate::indicators::pattern::CDLENGULFING_METADATA;
123use crate::indicators::pattern::CDLEVENINGDOJISTAR_METADATA;
124use crate::indicators::pattern::CDLEVENINGSTAR_METADATA;
125use crate::indicators::pattern::CDLGAPSIDESIDEWHITE_METADATA;
126use crate::indicators::pattern::CDLGRAVESTONEDOJI_METADATA;
127use crate::indicators::pattern::CDLHAMMER_METADATA;
128use crate::indicators::pattern::CDLHANGINGMAN_METADATA;
129use crate::indicators::pattern::CDLHARAMICROSS_METADATA;
130use crate::indicators::pattern::CDLHARAMI_METADATA;
131use crate::indicators::pattern::CDLHIGHWAVE_METADATA;
132use crate::indicators::pattern::CDLHIKKAKEMOD_METADATA;
133use crate::indicators::pattern::CDLHIKKAKE_METADATA;
134use crate::indicators::pattern::CDLHOMINGPIGEON_METADATA;
135use crate::indicators::pattern::CDLIDENTICAL3CROWS_METADATA;
136use crate::indicators::pattern::CDLINNECK_METADATA;
137use crate::indicators::pattern::CDLINVERTEDHAMMER_METADATA;
138use crate::indicators::pattern::CDLKICKINGBYLENGTH_METADATA;
139use crate::indicators::pattern::CDLKICKING_METADATA;
140use crate::indicators::pattern::CDLLADDERBOTTOM_METADATA;
141use crate::indicators::pattern::CDLLONGLEGGEDDOJI_METADATA;
142use crate::indicators::pattern::CDLLONGLINE_METADATA;
143use crate::indicators::pattern::CDLMARUBOZU_METADATA;
144use crate::indicators::pattern::CDLMATCHINGLOW_METADATA;
145use crate::indicators::pattern::CDLMATHOLD_METADATA;
146use crate::indicators::pattern::CDLMORNINGDOJISTAR_METADATA;
147use crate::indicators::pattern::CDLMORNINGSTAR_METADATA;
148use crate::indicators::pattern::CDLONNECK_METADATA;
149use crate::indicators::pattern::CDLPIERCING_METADATA;
150use crate::indicators::pattern::CDLRICKSHAWMAN_METADATA;
151use crate::indicators::pattern::CDLRISEFALL3METHODS_METADATA;
152use crate::indicators::pattern::CDLSEPARATINGLINES_METADATA;
153use crate::indicators::pattern::CDLSHOOTINGSTAR_METADATA;
154use crate::indicators::pattern::CDLSHORTLINE_METADATA;
155use crate::indicators::pattern::CDLSPINNINGTOP_METADATA;
156use crate::indicators::pattern::CDLSTALLEDPATTERN_METADATA;
157use crate::indicators::pattern::CDLSTICKSANDWICH_METADATA;
158use crate::indicators::pattern::CDLTAKURI_METADATA;
159use crate::indicators::pattern::CDLTASUKIGAP_METADATA;
160use crate::indicators::pattern::CDLTHRUSTING_METADATA;
161use crate::indicators::pattern::CDLTRISTAR_METADATA;
162use crate::indicators::pattern::CDLUNIQUE3RIVER_METADATA;
163use crate::indicators::pattern::CDLUPSIDEGAP2CROWS_METADATA;
164use crate::indicators::pattern::CDLXSIDEGAP3METHODS_METADATA;
165use crate::indicators::phasor::PHASOR_METADATA;
166use crate::indicators::pivot_points::PIVOT_POINTS_METADATA;
167use crate::indicators::pma::PROJECTED_MOVING_AVERAGE_METADATA;
168use crate::indicators::precision_trend::PRECISION_TREND_ANALYSIS_METADATA;
169use crate::indicators::price_transform::AVGPRICE_METADATA;
170use crate::indicators::price_transform::MEDPRICE_METADATA;
171use crate::indicators::price_transform::OC2_METADATA;
172use crate::indicators::price_transform::TYPPRICE_METADATA;
173use crate::indicators::price_transform::WCLPRICE_METADATA;
174use crate::indicators::recursive_median::RECURSIVE_MEDIAN_METADATA;
175use crate::indicators::recursive_median::RECURSIVE_MEDIAN_OSCILLATOR_METADATA;
176use crate::indicators::reflex::REFLEX_METADATA;
177use crate::indicators::reverse_ema::REVERSE_EMA_METADATA;
178use crate::indicators::reversion_index::REVERSION_INDEX_METADATA;
179use crate::indicators::rocket_rsi::ROCKET_RSI_METADATA;
180use crate::indicators::roofing_filter::ROOFING_FILTER_METADATA;
181use crate::indicators::rsih::RSIH_METADATA;
182use crate::indicators::sdo::SDO_METADATA;
183use crate::indicators::simple_predictor::SIMPLE_PREDICTOR_METADATA;
184use crate::indicators::sine_wave::SINE_WAVE_METADATA;
185use crate::indicators::smoothing::EMA_METADATA;
186use crate::indicators::smoothing::SMA_METADATA;
187use crate::indicators::smoothing::WMA_METADATA;
188use crate::indicators::sr_monitor::SR_INTERACTION_MONITOR_METADATA;
189use crate::indicators::statistics::BETA_METADATA;
190use crate::indicators::statistics::CORREL_METADATA;
191use crate::indicators::statistics::LINREG_METADATA;
192use crate::indicators::statistics::STDDEV_METADATA;
193use crate::indicators::stc::STC_METADATA;
194use crate::indicators::super_smoother::SUPER_SMOOTHER_METADATA;
195use crate::indicators::swiss_army_knife::SWISS_ARMY_KNIFE_METADATA;
196use crate::indicators::synthetic_oscillator::SYNTHETIC_OSCILLATOR_METADATA;
197use crate::indicators::system_evaluator::SYSTEM_EVALUATOR_METADATA;
198use crate::indicators::tema::TEMA_METADATA;
199use crate::indicators::tema::ZLEMA_METADATA;
200use crate::indicators::tradj_ema::TRADJ_EMA_METADATA;
201use crate::indicators::trendflex::TRENDFLEX_METADATA;
202use crate::indicators::triangle::TRIANGLE_FILTER_METADATA;
203use crate::indicators::truncated_bandpass::TRUNCATED_BANDPASS_METADATA;
204use crate::indicators::ttm_squeeze::TTM_SQUEEZE_METADATA;
205use crate::indicators::ultimate_bands::ULTIMATE_BANDS_METADATA;
206use crate::indicators::ultimate_channel::ULTIMATE_CHANNEL_METADATA;
207use crate::indicators::ultimate_smoother::ULTIMATE_SMOOTHER_METADATA;
208use crate::indicators::universal_oscillator::UNIVERSAL_OSCILLATOR_METADATA;
209use crate::indicators::usi::USI_METADATA;
210use crate::indicators::volatility::ATR_METADATA;
211use crate::indicators::volatility::NATR_METADATA;
212use crate::indicators::volatility::TRUE_RANGE_METADATA;
213use crate::indicators::volume::ADOSC_METADATA;
214use crate::indicators::volume::AD_METADATA;
215use crate::indicators::volume::OBV_METADATA;
216use crate::indicators::volume_profile::VOLUME_PROFILE_METADATA;
217use crate::indicators::vortex::VORTEX_METADATA;
218use crate::indicators::voss_predictor::VOSS_PREDICTOR_METADATA;
219use crate::indicators::vpn::VPN_METADATA;
220use crate::indicators::vwap::VWAP_METADATA;
221use crate::indicators::wavetrend::WAVETREND_METADATA;
222use crate::indicators::zero_lag::ZERO_LAG_METADATA;
223
224/// Slug + metadata pair for codegen and discovery.
225#[derive(Debug, Clone, Copy)]
226pub struct RegisteredMetadata {
227    pub slug: &'static str,
228    pub meta: &'static IndicatorMetadata,
229    pub struct_name: &'static str,
230    pub source_file: &'static str,
231}
232
233/// All registered indicator metadata (slug is Python/API key derived from const name).
234pub static ALL_REGISTERED: &[RegisteredMetadata] = &[
235    RegisteredMetadata { slug: "adaptive_ema", meta: &ADAPTIVE_EMA_METADATA, struct_name: "AdaptiveEma", source_file: "adaptive_ema" },
236    RegisteredMetadata { slug: "adosc", meta: &ADOSC_METADATA, struct_name: "", source_file: "volume" },
237    RegisteredMetadata { slug: "adx", meta: &ADX_METADATA, struct_name: "", source_file: "momentum" },
238    RegisteredMetadata { slug: "ad", meta: &AD_METADATA, struct_name: "", source_file: "volume" },
239    RegisteredMetadata { slug: "alligator", meta: &ALLIGATOR_METADATA, struct_name: "Alligator", source_file: "alligator" },
240    RegisteredMetadata { slug: "alma", meta: &ALMA_METADATA, struct_name: "Alma", source_file: "alma" },
241    RegisteredMetadata { slug: "am_detector", meta: &AM_DETECTOR_METADATA, struct_name: "AmDetector", source_file: "amfm" },
242    RegisteredMetadata { slug: "apo", meta: &APO_METADATA, struct_name: "", source_file: "momentum" },
243    RegisteredMetadata { slug: "aroon", meta: &AROON_METADATA, struct_name: "", source_file: "momentum" },
244    RegisteredMetadata { slug: "atr", meta: &ATR_METADATA, struct_name: "Atr", source_file: "volatility" },
245    RegisteredMetadata { slug: "atr_ts", meta: &ATR_TS_METADATA, struct_name: "ATRTrailingStop", source_file: "atr_ts" },
246    RegisteredMetadata { slug: "autotune_filter", meta: &AUTOTUNE_FILTER_METADATA, struct_name: "AutotuneFilter", source_file: "autotune" },
247    RegisteredMetadata { slug: "avgprice", meta: &AVGPRICE_METADATA, struct_name: "OC2", source_file: "price_transform" },
248    RegisteredMetadata { slug: "bandpass", meta: &BANDPASS_METADATA, struct_name: "Bandpass", source_file: "bandpass" },
249    RegisteredMetadata { slug: "bbands", meta: &BBANDS_METADATA, struct_name: "", source_file: "overlap" },
250    RegisteredMetadata { slug: "beta", meta: &BETA_METADATA, struct_name: "StandardDeviation", source_file: "statistics" },
251    RegisteredMetadata { slug: "butterworth2", meta: &BUTTERWORTH2_METADATA, struct_name: "Butterworth2", source_file: "butterworth" },
252    RegisteredMetadata { slug: "butterworth3", meta: &BUTTERWORTH3_METADATA, struct_name: "Butterworth3", source_file: "butterworth" },
253    RegisteredMetadata { slug: "cci", meta: &CCI_METADATA, struct_name: "", source_file: "momentum" },
254    RegisteredMetadata { slug: "cdl2crows", meta: &CDL2CROWS_METADATA, struct_name: "", source_file: "pattern" },
255    RegisteredMetadata { slug: "cdl3blackcrows", meta: &CDL3BLACKCROWS_METADATA, struct_name: "", source_file: "pattern" },
256    RegisteredMetadata { slug: "cdl3inside", meta: &CDL3INSIDE_METADATA, struct_name: "", source_file: "pattern" },
257    RegisteredMetadata { slug: "cdl3linestrike", meta: &CDL3LINESTRIKE_METADATA, struct_name: "", source_file: "pattern" },
258    RegisteredMetadata { slug: "cdl3outside", meta: &CDL3OUTSIDE_METADATA, struct_name: "", source_file: "pattern" },
259    RegisteredMetadata { slug: "cdl3starsinsouth", meta: &CDL3STARSINSOUTH_METADATA, struct_name: "", source_file: "pattern" },
260    RegisteredMetadata { slug: "cdl3whitesoldiers", meta: &CDL3WHITESOLDIERS_METADATA, struct_name: "", source_file: "pattern" },
261    RegisteredMetadata { slug: "cdlabandonedbaby", meta: &CDLABANDONEDBABY_METADATA, struct_name: "", source_file: "pattern" },
262    RegisteredMetadata { slug: "cdladvanceblock", meta: &CDLADVANCEBLOCK_METADATA, struct_name: "", source_file: "pattern" },
263    RegisteredMetadata { slug: "cdlbelthold", meta: &CDLBELTHOLD_METADATA, struct_name: "", source_file: "pattern" },
264    RegisteredMetadata { slug: "cdlbreakaway", meta: &CDLBREAKAWAY_METADATA, struct_name: "", source_file: "pattern" },
265    RegisteredMetadata { slug: "cdlclosingmarubozu", meta: &CDLCLOSINGMARUBOZU_METADATA, struct_name: "", source_file: "pattern" },
266    RegisteredMetadata { slug: "cdlconcealbabyswall", meta: &CDLCONCEALBABYSWALL_METADATA, struct_name: "", source_file: "pattern" },
267    RegisteredMetadata { slug: "cdlcounterattack", meta: &CDLCOUNTERATTACK_METADATA, struct_name: "", source_file: "pattern" },
268    RegisteredMetadata { slug: "cdldarkcloudcover", meta: &CDLDARKCLOUDCOVER_METADATA, struct_name: "", source_file: "pattern" },
269    RegisteredMetadata { slug: "cdldojistar", meta: &CDLDOJISTAR_METADATA, struct_name: "", source_file: "pattern" },
270    RegisteredMetadata { slug: "cdldoji", meta: &CDLDOJI_METADATA, struct_name: "", source_file: "pattern" },
271    RegisteredMetadata { slug: "cdldragonflydoji", meta: &CDLDRAGONFLYDOJI_METADATA, struct_name: "", source_file: "pattern" },
272    RegisteredMetadata { slug: "cdlengulfing", meta: &CDLENGULFING_METADATA, struct_name: "", source_file: "pattern" },
273    RegisteredMetadata { slug: "cdleveningdojistar", meta: &CDLEVENINGDOJISTAR_METADATA, struct_name: "", source_file: "pattern" },
274    RegisteredMetadata { slug: "cdleveningstar", meta: &CDLEVENINGSTAR_METADATA, struct_name: "", source_file: "pattern" },
275    RegisteredMetadata { slug: "cdlgapsidesidewhite", meta: &CDLGAPSIDESIDEWHITE_METADATA, struct_name: "", source_file: "pattern" },
276    RegisteredMetadata { slug: "cdlgravestonedoji", meta: &CDLGRAVESTONEDOJI_METADATA, struct_name: "", source_file: "pattern" },
277    RegisteredMetadata { slug: "cdlhammer", meta: &CDLHAMMER_METADATA, struct_name: "", source_file: "pattern" },
278    RegisteredMetadata { slug: "cdlhangingman", meta: &CDLHANGINGMAN_METADATA, struct_name: "", source_file: "pattern" },
279    RegisteredMetadata { slug: "cdlharamicross", meta: &CDLHARAMICROSS_METADATA, struct_name: "", source_file: "pattern" },
280    RegisteredMetadata { slug: "cdlharami", meta: &CDLHARAMI_METADATA, struct_name: "", source_file: "pattern" },
281    RegisteredMetadata { slug: "cdlhighwave", meta: &CDLHIGHWAVE_METADATA, struct_name: "", source_file: "pattern" },
282    RegisteredMetadata { slug: "cdlhikkakemod", meta: &CDLHIKKAKEMOD_METADATA, struct_name: "", source_file: "pattern" },
283    RegisteredMetadata { slug: "cdlhikkake", meta: &CDLHIKKAKE_METADATA, struct_name: "", source_file: "pattern" },
284    RegisteredMetadata { slug: "cdlhomingpigeon", meta: &CDLHOMINGPIGEON_METADATA, struct_name: "", source_file: "pattern" },
285    RegisteredMetadata { slug: "cdlidentical3crows", meta: &CDLIDENTICAL3CROWS_METADATA, struct_name: "", source_file: "pattern" },
286    RegisteredMetadata { slug: "cdlinneck", meta: &CDLINNECK_METADATA, struct_name: "", source_file: "pattern" },
287    RegisteredMetadata { slug: "cdlinvertedhammer", meta: &CDLINVERTEDHAMMER_METADATA, struct_name: "", source_file: "pattern" },
288    RegisteredMetadata { slug: "cdlkickingbylength", meta: &CDLKICKINGBYLENGTH_METADATA, struct_name: "", source_file: "pattern" },
289    RegisteredMetadata { slug: "cdlkicking", meta: &CDLKICKING_METADATA, struct_name: "", source_file: "pattern" },
290    RegisteredMetadata { slug: "cdlladderbottom", meta: &CDLLADDERBOTTOM_METADATA, struct_name: "", source_file: "pattern" },
291    RegisteredMetadata { slug: "cdllongleggeddoji", meta: &CDLLONGLEGGEDDOJI_METADATA, struct_name: "", source_file: "pattern" },
292    RegisteredMetadata { slug: "cdllongline", meta: &CDLLONGLINE_METADATA, struct_name: "", source_file: "pattern" },
293    RegisteredMetadata { slug: "cdlmarubozu", meta: &CDLMARUBOZU_METADATA, struct_name: "", source_file: "pattern" },
294    RegisteredMetadata { slug: "cdlmatchinglow", meta: &CDLMATCHINGLOW_METADATA, struct_name: "", source_file: "pattern" },
295    RegisteredMetadata { slug: "cdlmathold", meta: &CDLMATHOLD_METADATA, struct_name: "", source_file: "pattern" },
296    RegisteredMetadata { slug: "cdlmorningdojistar", meta: &CDLMORNINGDOJISTAR_METADATA, struct_name: "", source_file: "pattern" },
297    RegisteredMetadata { slug: "cdlmorningstar", meta: &CDLMORNINGSTAR_METADATA, struct_name: "", source_file: "pattern" },
298    RegisteredMetadata { slug: "cdlonneck", meta: &CDLONNECK_METADATA, struct_name: "", source_file: "pattern" },
299    RegisteredMetadata { slug: "cdlpiercing", meta: &CDLPIERCING_METADATA, struct_name: "", source_file: "pattern" },
300    RegisteredMetadata { slug: "cdlrickshawman", meta: &CDLRICKSHAWMAN_METADATA, struct_name: "", source_file: "pattern" },
301    RegisteredMetadata { slug: "cdlrisefall3methods", meta: &CDLRISEFALL3METHODS_METADATA, struct_name: "", source_file: "pattern" },
302    RegisteredMetadata { slug: "cdlseparatinglines", meta: &CDLSEPARATINGLINES_METADATA, struct_name: "", source_file: "pattern" },
303    RegisteredMetadata { slug: "cdlshootingstar", meta: &CDLSHOOTINGSTAR_METADATA, struct_name: "", source_file: "pattern" },
304    RegisteredMetadata { slug: "cdlshortline", meta: &CDLSHORTLINE_METADATA, struct_name: "", source_file: "pattern" },
305    RegisteredMetadata { slug: "cdlspinningtop", meta: &CDLSPINNINGTOP_METADATA, struct_name: "", source_file: "pattern" },
306    RegisteredMetadata { slug: "cdlstalledpattern", meta: &CDLSTALLEDPATTERN_METADATA, struct_name: "", source_file: "pattern" },
307    RegisteredMetadata { slug: "cdlsticksandwich", meta: &CDLSTICKSANDWICH_METADATA, struct_name: "", source_file: "pattern" },
308    RegisteredMetadata { slug: "cdltakuri", meta: &CDLTAKURI_METADATA, struct_name: "", source_file: "pattern" },
309    RegisteredMetadata { slug: "cdltasukigap", meta: &CDLTASUKIGAP_METADATA, struct_name: "", source_file: "pattern" },
310    RegisteredMetadata { slug: "cdlthrusting", meta: &CDLTHRUSTING_METADATA, struct_name: "", source_file: "pattern" },
311    RegisteredMetadata { slug: "cdltristar", meta: &CDLTRISTAR_METADATA, struct_name: "", source_file: "pattern" },
312    RegisteredMetadata { slug: "cdlunique3river", meta: &CDLUNIQUE3RIVER_METADATA, struct_name: "", source_file: "pattern" },
313    RegisteredMetadata { slug: "cdlupsidegap2crows", meta: &CDLUPSIDEGAP2CROWS_METADATA, struct_name: "", source_file: "pattern" },
314    RegisteredMetadata { slug: "cdlxsidegap3methods", meta: &CDLXSIDEGAP3METHODS_METADATA, struct_name: "", source_file: "pattern" },
315    RegisteredMetadata { slug: "cg", meta: &CG_METADATA, struct_name: "CenterOfGravity", source_file: "cg" },
316    RegisteredMetadata { slug: "channel_cycle", meta: &CHANNEL_CYCLE_METADATA, struct_name: "ChannelCycle", source_file: "channel_cycle" },
317    RegisteredMetadata { slug: "choppiness_index", meta: &CHOPPINESS_INDEX_METADATA, struct_name: "ChoppinessIndex", source_file: "choppiness_index" },
318    RegisteredMetadata { slug: "classic_laguerre", meta: &CLASSIC_LAGUERRE_METADATA, struct_name: "ClassicLaguerre", source_file: "classic_laguerre" },
319    RegisteredMetadata { slug: "cmo", meta: &CMO_METADATA, struct_name: "", source_file: "momentum" },
320    RegisteredMetadata { slug: "continuation_index", meta: &CONTINUATION_INDEX_METADATA, struct_name: "ContinuationIndex", source_file: "continuation_index" },
321    RegisteredMetadata { slug: "correlation_cycle", meta: &CORRELATION_CYCLE_METADATA, struct_name: "CorrelationCycle", source_file: "correlation_cycle" },
322    RegisteredMetadata { slug: "correlation_trend", meta: &CORRELATION_TREND_METADATA, struct_name: "CorrelationTrend", source_file: "correlation_trend" },
323    RegisteredMetadata { slug: "correl", meta: &CORREL_METADATA, struct_name: "StandardDeviation", source_file: "statistics" },
324    RegisteredMetadata { slug: "cybernetic_oscillator", meta: &CYBERNETIC_OSCILLATOR_METADATA, struct_name: "CyberneticOscillator", source_file: "cybernetic_oscillator" },
325    RegisteredMetadata { slug: "cyber_cycle", meta: &CYBER_CYCLE_METADATA, struct_name: "CyberCycle", source_file: "cyber_cycle" },
326    RegisteredMetadata { slug: "cycle_trend_analytics", meta: &CYCLE_TREND_ANALYTICS_METADATA, struct_name: "CycleTrendAnalytics", source_file: "cycle_trend_analytics" },
327    RegisteredMetadata { slug: "dema", meta: &DEMA_METADATA, struct_name: "", source_file: "overlap" },
328    RegisteredMetadata { slug: "dmh", meta: &DMH_METADATA, struct_name: "Dmh", source_file: "dmh" },
329    RegisteredMetadata { slug: "donchian", meta: &DONCHIAN_METADATA, struct_name: "Donchian", source_file: "donchian" },
330    RegisteredMetadata { slug: "dsma", meta: &DSMA_METADATA, struct_name: "Dsma", source_file: "dsma" },
331    RegisteredMetadata { slug: "ehlers_autocorrelation", meta: &EHLERS_AUTOCORRELATION_METADATA, struct_name: "EhlersAutocorrelation", source_file: "ehlers_autocorrelation" },
332    RegisteredMetadata { slug: "ehlers_filter", meta: &EHLERS_FILTER_METADATA, struct_name: "EhlersFilter", source_file: "ehlers_filter" },
333    RegisteredMetadata { slug: "ehlers_loops", meta: &EHLERS_LOOPS_METADATA, struct_name: "EhlersLoops", source_file: "ehlers_loops" },
334    RegisteredMetadata { slug: "ehlers_stochastic", meta: &EHLERS_STOCHASTIC_METADATA, struct_name: "EhlersStochastic", source_file: "ehlers_stochastic" },
335    RegisteredMetadata { slug: "ehlers_ultimate_oscillator", meta: &EHLERS_ULTIMATE_OSCILLATOR_METADATA, struct_name: "EhlersUltimateOscillator", source_file: "ehlers_ultimate_oscillator" },
336    RegisteredMetadata { slug: "ema", meta: &EMA_METADATA, struct_name: "Ema", source_file: "smoothing" },
337    RegisteredMetadata { slug: "emd", meta: &EMD_METADATA, struct_name: "Emd", source_file: "emd" },
338    RegisteredMetadata { slug: "fisher_high_pass", meta: &FISHER_HIGH_PASS_METADATA, struct_name: "FisherHighPass", source_file: "fisher_high_pass" },
339    RegisteredMetadata { slug: "fisher", meta: &FISHER_METADATA, struct_name: "Fisher", source_file: "fisher" },
340    RegisteredMetadata { slug: "fm_demodulator", meta: &FM_DEMODULATOR_METADATA, struct_name: "FmDemodulator", source_file: "amfm" },
341    RegisteredMetadata { slug: "fourier_dominant_cycle", meta: &FOURIER_DOMINANT_CYCLE_METADATA, struct_name: "FourierDominantCycle", source_file: "fourier_transform" },
342    RegisteredMetadata { slug: "fourier_series_model", meta: &FOURIER_SERIES_MODEL_METADATA, struct_name: "FourierSeriesModel", source_file: "fourier_series" },
343    RegisteredMetadata { slug: "fractals", meta: &FRACTALS_METADATA, struct_name: "BillWilliamsFractals", source_file: "fractals" },
344    RegisteredMetadata { slug: "frac_diff", meta: &FRAC_DIFF_METADATA, struct_name: "FracDiff", source_file: "frac_diff" },
345    RegisteredMetadata { slug: "frama", meta: &FRAMA_METADATA, struct_name: "Frama", source_file: "frama" },
346    RegisteredMetadata { slug: "gap_momentum", meta: &GAP_MOMENTUM_METADATA, struct_name: "GapMomentum", source_file: "gap_momentum" },
347    RegisteredMetadata { slug: "gaussian_filter", meta: &GAUSSIAN_FILTER_METADATA, struct_name: "GaussianFilter", source_file: "gaussian" },
348    RegisteredMetadata { slug: "generalized_laguerre", meta: &GENERALIZED_LAGUERRE_METADATA, struct_name: "GeneralizedLaguerre", source_file: "generalized_laguerre" },
349    RegisteredMetadata { slug: "geometric_patterns", meta: &GEOMETRIC_PATTERNS_METADATA, struct_name: "GeometricPatterns", source_file: "geometric_patterns" },
350    RegisteredMetadata { slug: "griffiths_dominant_cycle", meta: &GRIFFITHS_DOMINANT_CYCLE_METADATA, struct_name: "GriffithsDominantCycle", source_file: "griffiths_dominant_cycle" },
351    RegisteredMetadata { slug: "griffiths_predictor", meta: &GRIFFITHS_PREDICTOR_METADATA, struct_name: "GriffithsPredictor", source_file: "griffiths_predictor" },
352    RegisteredMetadata { slug: "griffiths_spectrum", meta: &GRIFFITHS_SPECTRUM_METADATA, struct_name: "GriffithsSpectrum", source_file: "griffiths_spectrum" },
353    RegisteredMetadata { slug: "hamming_filter", meta: &HAMMING_FILTER_METADATA, struct_name: "HammingFilter", source_file: "hamming" },
354    RegisteredMetadata { slug: "hann_filter", meta: &HANN_FILTER_METADATA, struct_name: "HannFilter", source_file: "hann" },
355    RegisteredMetadata { slug: "harrington_adx", meta: &HARRINGTON_ADX_METADATA, struct_name: "HarringtonAdx", source_file: "harrington_adx" },
356    RegisteredMetadata { slug: "heikin_ashi", meta: &HEIKIN_ASHI_METADATA, struct_name: "HeikinAshi", source_file: "heikin_ashi" },
357    RegisteredMetadata { slug: "high_pass", meta: &HIGH_PASS_METADATA, struct_name: "HighPass", source_file: "high_pass" },
358    RegisteredMetadata { slug: "hma", meta: &HMA_METADATA, struct_name: "Hma", source_file: "hma" },
359    RegisteredMetadata { slug: "homodyne_discriminator", meta: &HOMODYNE_DISCRIMINATOR_METADATA, struct_name: "HomodyneDiscriminator", source_file: "homodyne_discriminator" },
360    RegisteredMetadata { slug: "ht_dcperiod", meta: &HT_DCPERIOD_METADATA, struct_name: "", source_file: "cycle" },
361    RegisteredMetadata { slug: "ht_dcphase", meta: &HT_DCPHASE_METADATA, struct_name: "", source_file: "cycle" },
362    RegisteredMetadata { slug: "ht_phasor", meta: &HT_PHASOR_METADATA, struct_name: "", source_file: "cycle" },
363    RegisteredMetadata { slug: "ht_sine", meta: &HT_SINE_METADATA, struct_name: "", source_file: "cycle" },
364    RegisteredMetadata { slug: "ht_trendmode", meta: &HT_TRENDMODE_METADATA, struct_name: "", source_file: "cycle" },
365    RegisteredMetadata { slug: "hurst_exponent", meta: &HURST_EXPONENT_METADATA, struct_name: "HurstExponent", source_file: "hurst" },
366    RegisteredMetadata { slug: "ichimoku", meta: &ICHIMOKU_METADATA, struct_name: "Ichimoku", source_file: "ichimoku" },
367    RegisteredMetadata { slug: "instantaneous_trendline", meta: &INSTANTANEOUS_TRENDLINE_METADATA, struct_name: "InstantaneousTrendline", source_file: "instantaneous_trendline" },
368    RegisteredMetadata { slug: "inverse_fisher", meta: &INVERSE_FISHER_METADATA, struct_name: "InverseFisher", source_file: "inverse_fisher" },
369    RegisteredMetadata { slug: "kalman_filter", meta: &KALMAN_FILTER_METADATA, struct_name: "KalmanFilter", source_file: "kalman" },
370    RegisteredMetadata { slug: "kama", meta: &KAMA_METADATA, struct_name: "Kama", source_file: "kama" },
371    RegisteredMetadata { slug: "keltner", meta: &KELTNER_METADATA, struct_name: "Keltner", source_file: "keltner" },
372    RegisteredMetadata { slug: "kinematic_kalman", meta: &KINEMATIC_KALMAN_METADATA, struct_name: "KinematicKalman", source_file: "kinematic_kalman" },
373    RegisteredMetadata { slug: "laguerre_filter", meta: &LAGUERRE_FILTER_METADATA, struct_name: "LaguerreFilter", source_file: "laguerre_filter" },
374    RegisteredMetadata { slug: "laguerre_oscillator", meta: &LAGUERRE_OSCILLATOR_METADATA, struct_name: "LaguerreOscillator", source_file: "laguerre_oscillator" },
375    RegisteredMetadata { slug: "laguerre_rsi", meta: &LAGUERRE_RSI_METADATA, struct_name: "LaguerreRsi", source_file: "laguerre_rsi" },
376    RegisteredMetadata { slug: "linreg", meta: &LINREG_METADATA, struct_name: "StandardDeviation", source_file: "statistics" },
377    RegisteredMetadata { slug: "macd", meta: &MACD_METADATA, struct_name: "", source_file: "momentum" },
378    RegisteredMetadata { slug: "madh", meta: &MADH_METADATA, struct_name: "Madh", source_file: "madh" },
379    RegisteredMetadata { slug: "mad", meta: &MAD_METADATA, struct_name: "Mad", source_file: "mad" },
380    RegisteredMetadata { slug: "mama", meta: &MAMA_METADATA, struct_name: "Mama", source_file: "mama" },
381    RegisteredMetadata { slug: "market_state", meta: &MARKET_STATE_METADATA, struct_name: "MarketState", source_file: "market_state" },
382    RegisteredMetadata { slug: "market_structure", meta: &MARKET_STRUCTURE_METADATA, struct_name: "MarketStructure", source_file: "market_structure" },
383    RegisteredMetadata { slug: "medprice", meta: &MEDPRICE_METADATA, struct_name: "OC2", source_file: "price_transform" },
384    RegisteredMetadata { slug: "mesa_stochastic", meta: &MESA_STOCHASTIC_METADATA, struct_name: "MesaStochastic", source_file: "mesa_stochastic" },
385    RegisteredMetadata { slug: "mfi", meta: &MFI_METADATA, struct_name: "", source_file: "momentum" },
386    RegisteredMetadata { slug: "mom", meta: &MOM_METADATA, struct_name: "", source_file: "momentum" },
387    RegisteredMetadata { slug: "my_rsi", meta: &MY_RSI_METADATA, struct_name: "MyRsi", source_file: "my_rsi" },
388    RegisteredMetadata { slug: "natr", meta: &NATR_METADATA, struct_name: "TrueRange", source_file: "volatility" },
389    RegisteredMetadata { slug: "noise_elimination", meta: &NOISE_ELIMINATION_METADATA, struct_name: "NoiseElimination", source_file: "noise_elimination" },
390    RegisteredMetadata { slug: "obv", meta: &OBV_METADATA, struct_name: "", source_file: "volume" },
391    RegisteredMetadata { slug: "oc2", meta: &OC2_METADATA, struct_name: "Oc2", source_file: "price_transform" },
392    RegisteredMetadata { slug: "oc_price_rsi", meta: &OC_PRICE_RSI_METADATA, struct_name: "OcPriceRsi", source_file: "oc_price_rsi" },
393    RegisteredMetadata { slug: "one_euro_filter", meta: &ONE_EURO_FILTER_METADATA, struct_name: "OneEuroFilter", source_file: "one_euro_filter" },
394    RegisteredMetadata { slug: "pairs_rotation", meta: &PAIRS_ROTATION_METADATA, struct_name: "PairsRotation", source_file: "pairs_rotation" },
395    RegisteredMetadata { slug: "phasor", meta: &PHASOR_METADATA, struct_name: "Phasor", source_file: "phasor" },
396    RegisteredMetadata { slug: "pivot_points", meta: &PIVOT_POINTS_METADATA, struct_name: "PivotPoints", source_file: "pivot_points" },
397    RegisteredMetadata { slug: "ppo", meta: &PPO_METADATA, struct_name: "", source_file: "momentum" },
398    RegisteredMetadata { slug: "precision_trend_analysis", meta: &PRECISION_TREND_ANALYSIS_METADATA, struct_name: "PrecisionTrendAnalysis", source_file: "precision_trend" },
399    RegisteredMetadata { slug: "projected_moving_average", meta: &PROJECTED_MOVING_AVERAGE_METADATA, struct_name: "ProjectedMovingAverage", source_file: "pma" },
400    RegisteredMetadata { slug: "recursive_median", meta: &RECURSIVE_MEDIAN_METADATA, struct_name: "RecursiveMedian", source_file: "recursive_median" },
401    RegisteredMetadata { slug: "recursive_median_oscillator", meta: &RECURSIVE_MEDIAN_OSCILLATOR_METADATA, struct_name: "RecursiveMedianOscillator", source_file: "recursive_median" },
402    RegisteredMetadata { slug: "reflex", meta: &REFLEX_METADATA, struct_name: "Reflex", source_file: "reflex" },
403    RegisteredMetadata { slug: "reverse_ema", meta: &REVERSE_EMA_METADATA, struct_name: "ReverseEma", source_file: "reverse_ema" },
404    RegisteredMetadata { slug: "reversion_index", meta: &REVERSION_INDEX_METADATA, struct_name: "ReversionIndex", source_file: "reversion_index" },
405    RegisteredMetadata { slug: "rocket_rsi", meta: &ROCKET_RSI_METADATA, struct_name: "RocketRsi", source_file: "rocket_rsi" },
406    RegisteredMetadata { slug: "roc", meta: &ROC_METADATA, struct_name: "", source_file: "momentum" },
407    RegisteredMetadata { slug: "roofing_filter", meta: &ROOFING_FILTER_METADATA, struct_name: "RoofingFilter", source_file: "roofing_filter" },
408    RegisteredMetadata { slug: "rsih", meta: &RSIH_METADATA, struct_name: "Rsih", source_file: "rsih" },
409    RegisteredMetadata { slug: "rsi", meta: &RSI_METADATA, struct_name: "", source_file: "momentum" },
410    RegisteredMetadata { slug: "sar", meta: &SAR_METADATA, struct_name: "", source_file: "overlap" },
411    RegisteredMetadata { slug: "sdo", meta: &SDO_METADATA, struct_name: "Sdo", source_file: "sdo" },
412    RegisteredMetadata { slug: "simple_predictor", meta: &SIMPLE_PREDICTOR_METADATA, struct_name: "SimplePredictor", source_file: "simple_predictor" },
413    RegisteredMetadata { slug: "sine_wave", meta: &SINE_WAVE_METADATA, struct_name: "SineWave", source_file: "sine_wave" },
414    RegisteredMetadata { slug: "sma", meta: &SMA_METADATA, struct_name: "Sma", source_file: "smoothing" },
415    RegisteredMetadata { slug: "sr_interaction_monitor", meta: &SR_INTERACTION_MONITOR_METADATA, struct_name: "SrInteractionMonitor", source_file: "sr_monitor" },
416    RegisteredMetadata { slug: "stc", meta: &STC_METADATA, struct_name: "SchaffTrendCycle", source_file: "stc" },
417    RegisteredMetadata { slug: "stddev", meta: &STDDEV_METADATA, struct_name: "StandardDeviation", source_file: "statistics" },
418    RegisteredMetadata { slug: "stoch", meta: &STOCH_METADATA, struct_name: "", source_file: "momentum" },
419    RegisteredMetadata { slug: "super_smoother", meta: &SUPER_SMOOTHER_METADATA, struct_name: "SuperSmoother", source_file: "super_smoother" },
420    RegisteredMetadata { slug: "swiss_army_knife", meta: &SWISS_ARMY_KNIFE_METADATA, struct_name: "SwissArmyKnife", source_file: "swiss_army_knife" },
421    RegisteredMetadata { slug: "synthetic_oscillator", meta: &SYNTHETIC_OSCILLATOR_METADATA, struct_name: "SyntheticOscillator", source_file: "synthetic_oscillator" },
422    RegisteredMetadata { slug: "system_evaluator", meta: &SYSTEM_EVALUATOR_METADATA, struct_name: "SystemEvaluator", source_file: "system_evaluator" },
423    RegisteredMetadata { slug: "t3", meta: &T3_METADATA, struct_name: "", source_file: "overlap" },
424    RegisteredMetadata { slug: "tema", meta: &TEMA_METADATA, struct_name: "Tema", source_file: "tema" },
425    RegisteredMetadata { slug: "tradj_ema", meta: &TRADJ_EMA_METADATA, struct_name: "TradjEma", source_file: "tradj_ema" },
426    RegisteredMetadata { slug: "trendflex", meta: &TRENDFLEX_METADATA, struct_name: "Trendflex", source_file: "trendflex" },
427    RegisteredMetadata { slug: "triangle_filter", meta: &TRIANGLE_FILTER_METADATA, struct_name: "TriangleFilter", source_file: "triangle" },
428    RegisteredMetadata { slug: "trima", meta: &TRIMA_METADATA, struct_name: "", source_file: "overlap" },
429    RegisteredMetadata { slug: "trix", meta: &TRIX_METADATA, struct_name: "", source_file: "momentum" },
430    RegisteredMetadata { slug: "true_range", meta: &TRUE_RANGE_METADATA, struct_name: "TrueRange", source_file: "volatility" },
431    RegisteredMetadata { slug: "truncated_bandpass", meta: &TRUNCATED_BANDPASS_METADATA, struct_name: "TruncatedBandpass", source_file: "truncated_bandpass" },
432    RegisteredMetadata { slug: "ttm_squeeze", meta: &TTM_SQUEEZE_METADATA, struct_name: "TtmSqueeze", source_file: "ttm_squeeze" },
433    RegisteredMetadata { slug: "typprice", meta: &TYPPRICE_METADATA, struct_name: "OC2", source_file: "price_transform" },
434    RegisteredMetadata { slug: "ultimate_bands", meta: &ULTIMATE_BANDS_METADATA, struct_name: "UltimateBands", source_file: "ultimate_bands" },
435    RegisteredMetadata { slug: "ultimate_channel", meta: &ULTIMATE_CHANNEL_METADATA, struct_name: "UltimateChannel", source_file: "ultimate_channel" },
436    RegisteredMetadata { slug: "ultimate_smoother", meta: &ULTIMATE_SMOOTHER_METADATA, struct_name: "UltimateSmoother", source_file: "ultimate_smoother" },
437    RegisteredMetadata { slug: "ultosc", meta: &ULTOSC_METADATA, struct_name: "", source_file: "momentum" },
438    RegisteredMetadata { slug: "undersampled_double_ma", meta: &UNDERSAMPLED_DOUBLE_MA_METADATA, struct_name: "UndersampledDoubleMa", source_file: "just_ignore_them" },
439    RegisteredMetadata { slug: "universal_oscillator", meta: &UNIVERSAL_OSCILLATOR_METADATA, struct_name: "UniversalOscillator", source_file: "universal_oscillator" },
440    RegisteredMetadata { slug: "usi", meta: &USI_METADATA, struct_name: "Usi", source_file: "usi" },
441    RegisteredMetadata { slug: "volume_profile", meta: &VOLUME_PROFILE_METADATA, struct_name: "VolumeProfile", source_file: "volume_profile" },
442    RegisteredMetadata { slug: "vortex", meta: &VORTEX_METADATA, struct_name: "Vortex", source_file: "vortex" },
443    RegisteredMetadata { slug: "voss_predictor", meta: &VOSS_PREDICTOR_METADATA, struct_name: "VossPredictor", source_file: "voss_predictor" },
444    RegisteredMetadata { slug: "vpn", meta: &VPN_METADATA, struct_name: "Vpn", source_file: "vpn" },
445    RegisteredMetadata { slug: "vwap", meta: &VWAP_METADATA, struct_name: "AnchoredVWAP", source_file: "vwap" },
446    RegisteredMetadata { slug: "wavetrend", meta: &WAVETREND_METADATA, struct_name: "Wavetrend", source_file: "wavetrend" },
447    RegisteredMetadata { slug: "wclprice", meta: &WCLPRICE_METADATA, struct_name: "OC2", source_file: "price_transform" },
448    RegisteredMetadata { slug: "willr", meta: &WILLR_METADATA, struct_name: "", source_file: "momentum" },
449    RegisteredMetadata { slug: "wma", meta: &WMA_METADATA, struct_name: "Wma", source_file: "smoothing" },
450    RegisteredMetadata { slug: "zero_lag", meta: &ZERO_LAG_METADATA, struct_name: "ZeroLag", source_file: "zero_lag" },
451    RegisteredMetadata { slug: "zlema", meta: &ZLEMA_METADATA, struct_name: "Zlema", source_file: "tema" },
452];
453
454/// Flat view of metadata pointers (legacy / export).
455pub static ALL_INDICATOR_METADATA: &[&IndicatorMetadata] = &[
456    &ADAPTIVE_EMA_METADATA,
457    &ADOSC_METADATA,
458    &ADX_METADATA,
459    &AD_METADATA,
460    &ALLIGATOR_METADATA,
461    &ALMA_METADATA,
462    &AM_DETECTOR_METADATA,
463    &APO_METADATA,
464    &AROON_METADATA,
465    &ATR_METADATA,
466    &ATR_TS_METADATA,
467    &AUTOTUNE_FILTER_METADATA,
468    &AVGPRICE_METADATA,
469    &BANDPASS_METADATA,
470    &BBANDS_METADATA,
471    &BETA_METADATA,
472    &BUTTERWORTH2_METADATA,
473    &BUTTERWORTH3_METADATA,
474    &CCI_METADATA,
475    &CDL2CROWS_METADATA,
476    &CDL3BLACKCROWS_METADATA,
477    &CDL3INSIDE_METADATA,
478    &CDL3LINESTRIKE_METADATA,
479    &CDL3OUTSIDE_METADATA,
480    &CDL3STARSINSOUTH_METADATA,
481    &CDL3WHITESOLDIERS_METADATA,
482    &CDLABANDONEDBABY_METADATA,
483    &CDLADVANCEBLOCK_METADATA,
484    &CDLBELTHOLD_METADATA,
485    &CDLBREAKAWAY_METADATA,
486    &CDLCLOSINGMARUBOZU_METADATA,
487    &CDLCONCEALBABYSWALL_METADATA,
488    &CDLCOUNTERATTACK_METADATA,
489    &CDLDARKCLOUDCOVER_METADATA,
490    &CDLDOJISTAR_METADATA,
491    &CDLDOJI_METADATA,
492    &CDLDRAGONFLYDOJI_METADATA,
493    &CDLENGULFING_METADATA,
494    &CDLEVENINGDOJISTAR_METADATA,
495    &CDLEVENINGSTAR_METADATA,
496    &CDLGAPSIDESIDEWHITE_METADATA,
497    &CDLGRAVESTONEDOJI_METADATA,
498    &CDLHAMMER_METADATA,
499    &CDLHANGINGMAN_METADATA,
500    &CDLHARAMICROSS_METADATA,
501    &CDLHARAMI_METADATA,
502    &CDLHIGHWAVE_METADATA,
503    &CDLHIKKAKEMOD_METADATA,
504    &CDLHIKKAKE_METADATA,
505    &CDLHOMINGPIGEON_METADATA,
506    &CDLIDENTICAL3CROWS_METADATA,
507    &CDLINNECK_METADATA,
508    &CDLINVERTEDHAMMER_METADATA,
509    &CDLKICKINGBYLENGTH_METADATA,
510    &CDLKICKING_METADATA,
511    &CDLLADDERBOTTOM_METADATA,
512    &CDLLONGLEGGEDDOJI_METADATA,
513    &CDLLONGLINE_METADATA,
514    &CDLMARUBOZU_METADATA,
515    &CDLMATCHINGLOW_METADATA,
516    &CDLMATHOLD_METADATA,
517    &CDLMORNINGDOJISTAR_METADATA,
518    &CDLMORNINGSTAR_METADATA,
519    &CDLONNECK_METADATA,
520    &CDLPIERCING_METADATA,
521    &CDLRICKSHAWMAN_METADATA,
522    &CDLRISEFALL3METHODS_METADATA,
523    &CDLSEPARATINGLINES_METADATA,
524    &CDLSHOOTINGSTAR_METADATA,
525    &CDLSHORTLINE_METADATA,
526    &CDLSPINNINGTOP_METADATA,
527    &CDLSTALLEDPATTERN_METADATA,
528    &CDLSTICKSANDWICH_METADATA,
529    &CDLTAKURI_METADATA,
530    &CDLTASUKIGAP_METADATA,
531    &CDLTHRUSTING_METADATA,
532    &CDLTRISTAR_METADATA,
533    &CDLUNIQUE3RIVER_METADATA,
534    &CDLUPSIDEGAP2CROWS_METADATA,
535    &CDLXSIDEGAP3METHODS_METADATA,
536    &CG_METADATA,
537    &CHANNEL_CYCLE_METADATA,
538    &CHOPPINESS_INDEX_METADATA,
539    &CLASSIC_LAGUERRE_METADATA,
540    &CMO_METADATA,
541    &CONTINUATION_INDEX_METADATA,
542    &CORRELATION_CYCLE_METADATA,
543    &CORRELATION_TREND_METADATA,
544    &CORREL_METADATA,
545    &CYBERNETIC_OSCILLATOR_METADATA,
546    &CYBER_CYCLE_METADATA,
547    &CYCLE_TREND_ANALYTICS_METADATA,
548    &DEMA_METADATA,
549    &DMH_METADATA,
550    &DONCHIAN_METADATA,
551    &DSMA_METADATA,
552    &EHLERS_AUTOCORRELATION_METADATA,
553    &EHLERS_FILTER_METADATA,
554    &EHLERS_LOOPS_METADATA,
555    &EHLERS_STOCHASTIC_METADATA,
556    &EHLERS_ULTIMATE_OSCILLATOR_METADATA,
557    &EMA_METADATA,
558    &EMD_METADATA,
559    &FISHER_HIGH_PASS_METADATA,
560    &FISHER_METADATA,
561    &FM_DEMODULATOR_METADATA,
562    &FOURIER_DOMINANT_CYCLE_METADATA,
563    &FOURIER_SERIES_MODEL_METADATA,
564    &FRACTALS_METADATA,
565    &FRAC_DIFF_METADATA,
566    &FRAMA_METADATA,
567    &GAP_MOMENTUM_METADATA,
568    &GAUSSIAN_FILTER_METADATA,
569    &GENERALIZED_LAGUERRE_METADATA,
570    &GEOMETRIC_PATTERNS_METADATA,
571    &GRIFFITHS_DOMINANT_CYCLE_METADATA,
572    &GRIFFITHS_PREDICTOR_METADATA,
573    &GRIFFITHS_SPECTRUM_METADATA,
574    &HAMMING_FILTER_METADATA,
575    &HANN_FILTER_METADATA,
576    &HARRINGTON_ADX_METADATA,
577    &HEIKIN_ASHI_METADATA,
578    &HIGH_PASS_METADATA,
579    &HMA_METADATA,
580    &HOMODYNE_DISCRIMINATOR_METADATA,
581    &HT_DCPERIOD_METADATA,
582    &HT_DCPHASE_METADATA,
583    &HT_PHASOR_METADATA,
584    &HT_SINE_METADATA,
585    &HT_TRENDMODE_METADATA,
586    &HURST_EXPONENT_METADATA,
587    &ICHIMOKU_METADATA,
588    &INSTANTANEOUS_TRENDLINE_METADATA,
589    &INVERSE_FISHER_METADATA,
590    &KALMAN_FILTER_METADATA,
591    &KAMA_METADATA,
592    &KELTNER_METADATA,
593    &KINEMATIC_KALMAN_METADATA,
594    &LAGUERRE_FILTER_METADATA,
595    &LAGUERRE_OSCILLATOR_METADATA,
596    &LAGUERRE_RSI_METADATA,
597    &LINREG_METADATA,
598    &MACD_METADATA,
599    &MADH_METADATA,
600    &MAD_METADATA,
601    &MAMA_METADATA,
602    &MARKET_STATE_METADATA,
603    &MARKET_STRUCTURE_METADATA,
604    &MEDPRICE_METADATA,
605    &MESA_STOCHASTIC_METADATA,
606    &MFI_METADATA,
607    &MOM_METADATA,
608    &MY_RSI_METADATA,
609    &NATR_METADATA,
610    &NOISE_ELIMINATION_METADATA,
611    &OBV_METADATA,
612    &OC2_METADATA,
613    &OC_PRICE_RSI_METADATA,
614    &ONE_EURO_FILTER_METADATA,
615    &PAIRS_ROTATION_METADATA,
616    &PHASOR_METADATA,
617    &PIVOT_POINTS_METADATA,
618    &PPO_METADATA,
619    &PRECISION_TREND_ANALYSIS_METADATA,
620    &PROJECTED_MOVING_AVERAGE_METADATA,
621    &RECURSIVE_MEDIAN_METADATA,
622    &RECURSIVE_MEDIAN_OSCILLATOR_METADATA,
623    &REFLEX_METADATA,
624    &REVERSE_EMA_METADATA,
625    &REVERSION_INDEX_METADATA,
626    &ROCKET_RSI_METADATA,
627    &ROC_METADATA,
628    &ROOFING_FILTER_METADATA,
629    &RSIH_METADATA,
630    &RSI_METADATA,
631    &SAR_METADATA,
632    &SDO_METADATA,
633    &SIMPLE_PREDICTOR_METADATA,
634    &SINE_WAVE_METADATA,
635    &SMA_METADATA,
636    &SR_INTERACTION_MONITOR_METADATA,
637    &STC_METADATA,
638    &STDDEV_METADATA,
639    &STOCH_METADATA,
640    &SUPER_SMOOTHER_METADATA,
641    &SWISS_ARMY_KNIFE_METADATA,
642    &SYNTHETIC_OSCILLATOR_METADATA,
643    &SYSTEM_EVALUATOR_METADATA,
644    &T3_METADATA,
645    &TEMA_METADATA,
646    &TRADJ_EMA_METADATA,
647    &TRENDFLEX_METADATA,
648    &TRIANGLE_FILTER_METADATA,
649    &TRIMA_METADATA,
650    &TRIX_METADATA,
651    &TRUE_RANGE_METADATA,
652    &TRUNCATED_BANDPASS_METADATA,
653    &TTM_SQUEEZE_METADATA,
654    &TYPPRICE_METADATA,
655    &ULTIMATE_BANDS_METADATA,
656    &ULTIMATE_CHANNEL_METADATA,
657    &ULTIMATE_SMOOTHER_METADATA,
658    &ULTOSC_METADATA,
659    &UNDERSAMPLED_DOUBLE_MA_METADATA,
660    &UNIVERSAL_OSCILLATOR_METADATA,
661    &USI_METADATA,
662    &VOLUME_PROFILE_METADATA,
663    &VORTEX_METADATA,
664    &VOSS_PREDICTOR_METADATA,
665    &VPN_METADATA,
666    &VWAP_METADATA,
667    &WAVETREND_METADATA,
668    &WCLPRICE_METADATA,
669    &WILLR_METADATA,
670    &WMA_METADATA,
671    &ZERO_LAG_METADATA,
672    &ZLEMA_METADATA,
673];
674
675pub const METADATA_COUNT: usize = 217;