1use 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::EXTREME_RECLAIM_METADATA;
78use crate::indicators::market_structure::MARKET_STRUCTURE_METADATA;
79use crate::indicators::market_structure::PRICE_IMBALANCE_METADATA;
80use crate::indicators::mesa_stochastic::MESA_STOCHASTIC_METADATA;
81use crate::indicators::momentum::ADX_METADATA;
82use crate::indicators::momentum::APO_METADATA;
83use crate::indicators::momentum::AROON_METADATA;
84use crate::indicators::momentum::CCI_METADATA;
85use crate::indicators::momentum::CMO_METADATA;
86use crate::indicators::momentum::MACD_METADATA;
87use crate::indicators::momentum::MFI_METADATA;
88use crate::indicators::momentum::MOM_METADATA;
89use crate::indicators::momentum::PPO_METADATA;
90use crate::indicators::momentum::ROC_METADATA;
91use crate::indicators::momentum::RSI_METADATA;
92use crate::indicators::momentum::STOCH_METADATA;
93use crate::indicators::momentum::TRIX_METADATA;
94use crate::indicators::momentum::ULTOSC_METADATA;
95use crate::indicators::momentum::WILLR_METADATA;
96use crate::indicators::my_rsi::MY_RSI_METADATA;
97use crate::indicators::noise_elimination::NOISE_ELIMINATION_METADATA;
98use crate::indicators::oc_price_rsi::OC_PRICE_RSI_METADATA;
99use crate::indicators::one_euro_filter::ONE_EURO_FILTER_METADATA;
100use crate::indicators::overlap::BBANDS_METADATA;
101use crate::indicators::overlap::DEMA_METADATA;
102use crate::indicators::overlap::SAR_METADATA;
103use crate::indicators::overlap::T3_METADATA;
104use crate::indicators::overlap::TRIMA_METADATA;
105use crate::indicators::pairs_rotation::PAIRS_ROTATION_METADATA;
106use crate::indicators::pattern::CDL2CROWS_METADATA;
107use crate::indicators::pattern::CDL3BLACKCROWS_METADATA;
108use crate::indicators::pattern::CDL3INSIDE_METADATA;
109use crate::indicators::pattern::CDL3LINESTRIKE_METADATA;
110use crate::indicators::pattern::CDL3OUTSIDE_METADATA;
111use crate::indicators::pattern::CDL3STARSINSOUTH_METADATA;
112use crate::indicators::pattern::CDL3WHITESOLDIERS_METADATA;
113use crate::indicators::pattern::CDLABANDONEDBABY_METADATA;
114use crate::indicators::pattern::CDLADVANCEBLOCK_METADATA;
115use crate::indicators::pattern::CDLBELTHOLD_METADATA;
116use crate::indicators::pattern::CDLBREAKAWAY_METADATA;
117use crate::indicators::pattern::CDLCLOSINGMARUBOZU_METADATA;
118use crate::indicators::pattern::CDLCONCEALBABYSWALL_METADATA;
119use crate::indicators::pattern::CDLCOUNTERATTACK_METADATA;
120use crate::indicators::pattern::CDLDARKCLOUDCOVER_METADATA;
121use crate::indicators::pattern::CDLDOJI_METADATA;
122use crate::indicators::pattern::CDLDOJISTAR_METADATA;
123use crate::indicators::pattern::CDLDRAGONFLYDOJI_METADATA;
124use crate::indicators::pattern::CDLENGULFING_METADATA;
125use crate::indicators::pattern::CDLEVENINGDOJISTAR_METADATA;
126use crate::indicators::pattern::CDLEVENINGSTAR_METADATA;
127use crate::indicators::pattern::CDLGAPSIDESIDEWHITE_METADATA;
128use crate::indicators::pattern::CDLGRAVESTONEDOJI_METADATA;
129use crate::indicators::pattern::CDLHAMMER_METADATA;
130use crate::indicators::pattern::CDLHANGINGMAN_METADATA;
131use crate::indicators::pattern::CDLHARAMI_METADATA;
132use crate::indicators::pattern::CDLHARAMICROSS_METADATA;
133use crate::indicators::pattern::CDLHIGHWAVE_METADATA;
134use crate::indicators::pattern::CDLHIKKAKE_METADATA;
135use crate::indicators::pattern::CDLHIKKAKEMOD_METADATA;
136use crate::indicators::pattern::CDLHOMINGPIGEON_METADATA;
137use crate::indicators::pattern::CDLIDENTICAL3CROWS_METADATA;
138use crate::indicators::pattern::CDLINNECK_METADATA;
139use crate::indicators::pattern::CDLINVERTEDHAMMER_METADATA;
140use crate::indicators::pattern::CDLKICKING_METADATA;
141use crate::indicators::pattern::CDLKICKINGBYLENGTH_METADATA;
142use crate::indicators::pattern::CDLLADDERBOTTOM_METADATA;
143use crate::indicators::pattern::CDLLONGLEGGEDDOJI_METADATA;
144use crate::indicators::pattern::CDLLONGLINE_METADATA;
145use crate::indicators::pattern::CDLMARUBOZU_METADATA;
146use crate::indicators::pattern::CDLMATCHINGLOW_METADATA;
147use crate::indicators::pattern::CDLMATHOLD_METADATA;
148use crate::indicators::pattern::CDLMORNINGDOJISTAR_METADATA;
149use crate::indicators::pattern::CDLMORNINGSTAR_METADATA;
150use crate::indicators::pattern::CDLONNECK_METADATA;
151use crate::indicators::pattern::CDLPIERCING_METADATA;
152use crate::indicators::pattern::CDLRICKSHAWMAN_METADATA;
153use crate::indicators::pattern::CDLRISEFALL3METHODS_METADATA;
154use crate::indicators::pattern::CDLSEPARATINGLINES_METADATA;
155use crate::indicators::pattern::CDLSHOOTINGSTAR_METADATA;
156use crate::indicators::pattern::CDLSHORTLINE_METADATA;
157use crate::indicators::pattern::CDLSPINNINGTOP_METADATA;
158use crate::indicators::pattern::CDLSTALLEDPATTERN_METADATA;
159use crate::indicators::pattern::CDLSTICKSANDWICH_METADATA;
160use crate::indicators::pattern::CDLTAKURI_METADATA;
161use crate::indicators::pattern::CDLTASUKIGAP_METADATA;
162use crate::indicators::pattern::CDLTHRUSTING_METADATA;
163use crate::indicators::pattern::CDLTRISTAR_METADATA;
164use crate::indicators::pattern::CDLUNIQUE3RIVER_METADATA;
165use crate::indicators::pattern::CDLUPSIDEGAP2CROWS_METADATA;
166use crate::indicators::pattern::CDLXSIDEGAP3METHODS_METADATA;
167use crate::indicators::phasor::PHASOR_METADATA;
168use crate::indicators::pivot_points::PIVOT_POINTS_METADATA;
169use crate::indicators::pma::PROJECTED_MOVING_AVERAGE_METADATA;
170use crate::indicators::precision_trend::PRECISION_TREND_ANALYSIS_METADATA;
171use crate::indicators::price_transform::AVGPRICE_METADATA;
172use crate::indicators::price_transform::MEDPRICE_METADATA;
173use crate::indicators::price_transform::OC2_METADATA;
174use crate::indicators::price_transform::TYPPRICE_METADATA;
175use crate::indicators::price_transform::WCLPRICE_METADATA;
176use crate::indicators::recursive_median::RECURSIVE_MEDIAN_METADATA;
177use crate::indicators::recursive_median::RECURSIVE_MEDIAN_OSCILLATOR_METADATA;
178use crate::indicators::reflex::REFLEX_METADATA;
179use crate::indicators::reverse_ema::REVERSE_EMA_METADATA;
180use crate::indicators::reversion_index::REVERSION_INDEX_METADATA;
181use crate::indicators::rocket_rsi::ROCKET_RSI_METADATA;
182use crate::indicators::roofing_filter::ROOFING_FILTER_METADATA;
183use crate::indicators::rsih::RSIH_METADATA;
184use crate::indicators::sdo::SDO_METADATA;
185use crate::indicators::series_norm::PERCENT_RANK_METADATA;
186use crate::indicators::series_norm::ZSCORE_METADATA;
187use crate::indicators::simple_predictor::SIMPLE_PREDICTOR_METADATA;
188use crate::indicators::sine_wave::SINE_WAVE_METADATA;
189use crate::indicators::smoothing::EMA_METADATA;
190use crate::indicators::smoothing::SMA_METADATA;
191use crate::indicators::smoothing::WMA_METADATA;
192use crate::indicators::sr_monitor::SR_INTERACTION_MONITOR_METADATA;
193use crate::indicators::statistics::BETA_METADATA;
194use crate::indicators::statistics::CORREL_METADATA;
195use crate::indicators::statistics::LINREG_METADATA;
196use crate::indicators::statistics::STDDEV_METADATA;
197use crate::indicators::stc::STC_METADATA;
198use crate::indicators::super_smoother::SUPER_SMOOTHER_METADATA;
199use crate::indicators::supertrend::SUPERTREND_METADATA;
200use crate::indicators::swiss_army_knife::SWISS_ARMY_KNIFE_METADATA;
201use crate::indicators::synthetic_oscillator::SYNTHETIC_OSCILLATOR_METADATA;
202use crate::indicators::system_evaluator::SYSTEM_EVALUATOR_METADATA;
203use crate::indicators::tema::TEMA_METADATA;
204use crate::indicators::tema::ZLEMA_METADATA;
205use crate::indicators::tradj_ema::TRADJ_EMA_METADATA;
206use crate::indicators::trendflex::TRENDFLEX_METADATA;
207use crate::indicators::triangle::TRIANGLE_FILTER_METADATA;
208use crate::indicators::truncated_bandpass::TRUNCATED_BANDPASS_METADATA;
209use crate::indicators::ttm_squeeze::TTM_SQUEEZE_METADATA;
210use crate::indicators::ultimate_bands::ULTIMATE_BANDS_METADATA;
211use crate::indicators::ultimate_channel::ULTIMATE_CHANNEL_METADATA;
212use crate::indicators::ultimate_smoother::ULTIMATE_SMOOTHER_METADATA;
213use crate::indicators::universal_oscillator::UNIVERSAL_OSCILLATOR_METADATA;
214use crate::indicators::usi::USI_METADATA;
215use crate::indicators::volatility::ATR_METADATA;
216use crate::indicators::volatility::NATR_METADATA;
217use crate::indicators::volatility::TRUE_RANGE_METADATA;
218use crate::indicators::volume::AD_METADATA;
219use crate::indicators::volume::ADOSC_METADATA;
220use crate::indicators::volume::OBV_METADATA;
221use crate::indicators::volume_profile::VOLUME_PROFILE_METADATA;
222use crate::indicators::vortex::VORTEX_METADATA;
223use crate::indicators::voss_predictor::VOSS_PREDICTOR_METADATA;
224use crate::indicators::vpn::VPN_METADATA;
225use crate::indicators::vwap::VWAP_METADATA;
226use crate::indicators::wavetrend::WAVETREND_METADATA;
227use crate::indicators::zero_lag::ZERO_LAG_METADATA;
228use crate::regimes::gaussian_hmm::GAUSSIAN_HMM_METADATA;
229use crate::regimes::gaussian_hmm::LAMBDA_HMM_METADATA;
230use crate::regimes::hmm_forecast::HMM_FORECAST_METADATA;
231
232#[derive(Debug, Clone, Copy)]
234pub struct RegisteredMetadata {
235 pub slug: &'static str,
236 pub meta: &'static IndicatorMetadata,
237 pub struct_name: &'static str,
238 pub source_file: &'static str,
239}
240
241pub static ALL_REGISTERED: &[RegisteredMetadata] = &[
243 RegisteredMetadata {
244 slug: "adaptive_ema",
245 meta: &ADAPTIVE_EMA_METADATA,
246 struct_name: "AdaptiveEma",
247 source_file: "adaptive_ema",
248 },
249 RegisteredMetadata {
250 slug: "adosc",
251 meta: &ADOSC_METADATA,
252 struct_name: "",
253 source_file: "volume",
254 },
255 RegisteredMetadata {
256 slug: "adx",
257 meta: &ADX_METADATA,
258 struct_name: "",
259 source_file: "momentum",
260 },
261 RegisteredMetadata {
262 slug: "ad",
263 meta: &AD_METADATA,
264 struct_name: "",
265 source_file: "volume",
266 },
267 RegisteredMetadata {
268 slug: "alligator",
269 meta: &ALLIGATOR_METADATA,
270 struct_name: "Alligator",
271 source_file: "alligator",
272 },
273 RegisteredMetadata {
274 slug: "alma",
275 meta: &ALMA_METADATA,
276 struct_name: "Alma",
277 source_file: "alma",
278 },
279 RegisteredMetadata {
280 slug: "am_detector",
281 meta: &AM_DETECTOR_METADATA,
282 struct_name: "AmDetector",
283 source_file: "amfm",
284 },
285 RegisteredMetadata {
286 slug: "apo",
287 meta: &APO_METADATA,
288 struct_name: "",
289 source_file: "momentum",
290 },
291 RegisteredMetadata {
292 slug: "aroon",
293 meta: &AROON_METADATA,
294 struct_name: "",
295 source_file: "momentum",
296 },
297 RegisteredMetadata {
298 slug: "atr",
299 meta: &ATR_METADATA,
300 struct_name: "Atr",
301 source_file: "volatility",
302 },
303 RegisteredMetadata {
304 slug: "atr_ts",
305 meta: &ATR_TS_METADATA,
306 struct_name: "ATRTrailingStop",
307 source_file: "atr_ts",
308 },
309 RegisteredMetadata {
310 slug: "autotune_filter",
311 meta: &AUTOTUNE_FILTER_METADATA,
312 struct_name: "AutotuneFilter",
313 source_file: "autotune",
314 },
315 RegisteredMetadata {
316 slug: "avgprice",
317 meta: &AVGPRICE_METADATA,
318 struct_name: "OC2",
319 source_file: "price_transform",
320 },
321 RegisteredMetadata {
322 slug: "bandpass",
323 meta: &BANDPASS_METADATA,
324 struct_name: "Bandpass",
325 source_file: "bandpass",
326 },
327 RegisteredMetadata {
328 slug: "bbands",
329 meta: &BBANDS_METADATA,
330 struct_name: "",
331 source_file: "overlap",
332 },
333 RegisteredMetadata {
334 slug: "beta",
335 meta: &BETA_METADATA,
336 struct_name: "StandardDeviation",
337 source_file: "statistics",
338 },
339 RegisteredMetadata {
340 slug: "butterworth2",
341 meta: &BUTTERWORTH2_METADATA,
342 struct_name: "Butterworth2",
343 source_file: "butterworth",
344 },
345 RegisteredMetadata {
346 slug: "butterworth3",
347 meta: &BUTTERWORTH3_METADATA,
348 struct_name: "Butterworth3",
349 source_file: "butterworth",
350 },
351 RegisteredMetadata {
352 slug: "cci",
353 meta: &CCI_METADATA,
354 struct_name: "",
355 source_file: "momentum",
356 },
357 RegisteredMetadata {
358 slug: "cdl2crows",
359 meta: &CDL2CROWS_METADATA,
360 struct_name: "",
361 source_file: "pattern",
362 },
363 RegisteredMetadata {
364 slug: "cdl3blackcrows",
365 meta: &CDL3BLACKCROWS_METADATA,
366 struct_name: "",
367 source_file: "pattern",
368 },
369 RegisteredMetadata {
370 slug: "cdl3inside",
371 meta: &CDL3INSIDE_METADATA,
372 struct_name: "",
373 source_file: "pattern",
374 },
375 RegisteredMetadata {
376 slug: "cdl3linestrike",
377 meta: &CDL3LINESTRIKE_METADATA,
378 struct_name: "",
379 source_file: "pattern",
380 },
381 RegisteredMetadata {
382 slug: "cdl3outside",
383 meta: &CDL3OUTSIDE_METADATA,
384 struct_name: "",
385 source_file: "pattern",
386 },
387 RegisteredMetadata {
388 slug: "cdl3starsinsouth",
389 meta: &CDL3STARSINSOUTH_METADATA,
390 struct_name: "",
391 source_file: "pattern",
392 },
393 RegisteredMetadata {
394 slug: "cdl3whitesoldiers",
395 meta: &CDL3WHITESOLDIERS_METADATA,
396 struct_name: "",
397 source_file: "pattern",
398 },
399 RegisteredMetadata {
400 slug: "cdlabandonedbaby",
401 meta: &CDLABANDONEDBABY_METADATA,
402 struct_name: "",
403 source_file: "pattern",
404 },
405 RegisteredMetadata {
406 slug: "cdladvanceblock",
407 meta: &CDLADVANCEBLOCK_METADATA,
408 struct_name: "",
409 source_file: "pattern",
410 },
411 RegisteredMetadata {
412 slug: "cdlbelthold",
413 meta: &CDLBELTHOLD_METADATA,
414 struct_name: "",
415 source_file: "pattern",
416 },
417 RegisteredMetadata {
418 slug: "cdlbreakaway",
419 meta: &CDLBREAKAWAY_METADATA,
420 struct_name: "",
421 source_file: "pattern",
422 },
423 RegisteredMetadata {
424 slug: "cdlclosingmarubozu",
425 meta: &CDLCLOSINGMARUBOZU_METADATA,
426 struct_name: "",
427 source_file: "pattern",
428 },
429 RegisteredMetadata {
430 slug: "cdlconcealbabyswall",
431 meta: &CDLCONCEALBABYSWALL_METADATA,
432 struct_name: "",
433 source_file: "pattern",
434 },
435 RegisteredMetadata {
436 slug: "cdlcounterattack",
437 meta: &CDLCOUNTERATTACK_METADATA,
438 struct_name: "",
439 source_file: "pattern",
440 },
441 RegisteredMetadata {
442 slug: "cdldarkcloudcover",
443 meta: &CDLDARKCLOUDCOVER_METADATA,
444 struct_name: "",
445 source_file: "pattern",
446 },
447 RegisteredMetadata {
448 slug: "cdldojistar",
449 meta: &CDLDOJISTAR_METADATA,
450 struct_name: "",
451 source_file: "pattern",
452 },
453 RegisteredMetadata {
454 slug: "cdldoji",
455 meta: &CDLDOJI_METADATA,
456 struct_name: "",
457 source_file: "pattern",
458 },
459 RegisteredMetadata {
460 slug: "cdldragonflydoji",
461 meta: &CDLDRAGONFLYDOJI_METADATA,
462 struct_name: "",
463 source_file: "pattern",
464 },
465 RegisteredMetadata {
466 slug: "cdlengulfing",
467 meta: &CDLENGULFING_METADATA,
468 struct_name: "",
469 source_file: "pattern",
470 },
471 RegisteredMetadata {
472 slug: "cdleveningdojistar",
473 meta: &CDLEVENINGDOJISTAR_METADATA,
474 struct_name: "",
475 source_file: "pattern",
476 },
477 RegisteredMetadata {
478 slug: "cdleveningstar",
479 meta: &CDLEVENINGSTAR_METADATA,
480 struct_name: "",
481 source_file: "pattern",
482 },
483 RegisteredMetadata {
484 slug: "cdlgapsidesidewhite",
485 meta: &CDLGAPSIDESIDEWHITE_METADATA,
486 struct_name: "",
487 source_file: "pattern",
488 },
489 RegisteredMetadata {
490 slug: "cdlgravestonedoji",
491 meta: &CDLGRAVESTONEDOJI_METADATA,
492 struct_name: "",
493 source_file: "pattern",
494 },
495 RegisteredMetadata {
496 slug: "cdlhammer",
497 meta: &CDLHAMMER_METADATA,
498 struct_name: "",
499 source_file: "pattern",
500 },
501 RegisteredMetadata {
502 slug: "cdlhangingman",
503 meta: &CDLHANGINGMAN_METADATA,
504 struct_name: "",
505 source_file: "pattern",
506 },
507 RegisteredMetadata {
508 slug: "cdlharamicross",
509 meta: &CDLHARAMICROSS_METADATA,
510 struct_name: "",
511 source_file: "pattern",
512 },
513 RegisteredMetadata {
514 slug: "cdlharami",
515 meta: &CDLHARAMI_METADATA,
516 struct_name: "",
517 source_file: "pattern",
518 },
519 RegisteredMetadata {
520 slug: "cdlhighwave",
521 meta: &CDLHIGHWAVE_METADATA,
522 struct_name: "",
523 source_file: "pattern",
524 },
525 RegisteredMetadata {
526 slug: "cdlhikkakemod",
527 meta: &CDLHIKKAKEMOD_METADATA,
528 struct_name: "",
529 source_file: "pattern",
530 },
531 RegisteredMetadata {
532 slug: "cdlhikkake",
533 meta: &CDLHIKKAKE_METADATA,
534 struct_name: "",
535 source_file: "pattern",
536 },
537 RegisteredMetadata {
538 slug: "cdlhomingpigeon",
539 meta: &CDLHOMINGPIGEON_METADATA,
540 struct_name: "",
541 source_file: "pattern",
542 },
543 RegisteredMetadata {
544 slug: "cdlidentical3crows",
545 meta: &CDLIDENTICAL3CROWS_METADATA,
546 struct_name: "",
547 source_file: "pattern",
548 },
549 RegisteredMetadata {
550 slug: "cdlinneck",
551 meta: &CDLINNECK_METADATA,
552 struct_name: "",
553 source_file: "pattern",
554 },
555 RegisteredMetadata {
556 slug: "cdlinvertedhammer",
557 meta: &CDLINVERTEDHAMMER_METADATA,
558 struct_name: "",
559 source_file: "pattern",
560 },
561 RegisteredMetadata {
562 slug: "cdlkickingbylength",
563 meta: &CDLKICKINGBYLENGTH_METADATA,
564 struct_name: "",
565 source_file: "pattern",
566 },
567 RegisteredMetadata {
568 slug: "cdlkicking",
569 meta: &CDLKICKING_METADATA,
570 struct_name: "",
571 source_file: "pattern",
572 },
573 RegisteredMetadata {
574 slug: "cdlladderbottom",
575 meta: &CDLLADDERBOTTOM_METADATA,
576 struct_name: "",
577 source_file: "pattern",
578 },
579 RegisteredMetadata {
580 slug: "cdllongleggeddoji",
581 meta: &CDLLONGLEGGEDDOJI_METADATA,
582 struct_name: "",
583 source_file: "pattern",
584 },
585 RegisteredMetadata {
586 slug: "cdllongline",
587 meta: &CDLLONGLINE_METADATA,
588 struct_name: "",
589 source_file: "pattern",
590 },
591 RegisteredMetadata {
592 slug: "cdlmarubozu",
593 meta: &CDLMARUBOZU_METADATA,
594 struct_name: "",
595 source_file: "pattern",
596 },
597 RegisteredMetadata {
598 slug: "cdlmatchinglow",
599 meta: &CDLMATCHINGLOW_METADATA,
600 struct_name: "",
601 source_file: "pattern",
602 },
603 RegisteredMetadata {
604 slug: "cdlmathold",
605 meta: &CDLMATHOLD_METADATA,
606 struct_name: "",
607 source_file: "pattern",
608 },
609 RegisteredMetadata {
610 slug: "cdlmorningdojistar",
611 meta: &CDLMORNINGDOJISTAR_METADATA,
612 struct_name: "",
613 source_file: "pattern",
614 },
615 RegisteredMetadata {
616 slug: "cdlmorningstar",
617 meta: &CDLMORNINGSTAR_METADATA,
618 struct_name: "",
619 source_file: "pattern",
620 },
621 RegisteredMetadata {
622 slug: "cdlonneck",
623 meta: &CDLONNECK_METADATA,
624 struct_name: "",
625 source_file: "pattern",
626 },
627 RegisteredMetadata {
628 slug: "cdlpiercing",
629 meta: &CDLPIERCING_METADATA,
630 struct_name: "",
631 source_file: "pattern",
632 },
633 RegisteredMetadata {
634 slug: "cdlrickshawman",
635 meta: &CDLRICKSHAWMAN_METADATA,
636 struct_name: "",
637 source_file: "pattern",
638 },
639 RegisteredMetadata {
640 slug: "cdlrisefall3methods",
641 meta: &CDLRISEFALL3METHODS_METADATA,
642 struct_name: "",
643 source_file: "pattern",
644 },
645 RegisteredMetadata {
646 slug: "cdlseparatinglines",
647 meta: &CDLSEPARATINGLINES_METADATA,
648 struct_name: "",
649 source_file: "pattern",
650 },
651 RegisteredMetadata {
652 slug: "cdlshootingstar",
653 meta: &CDLSHOOTINGSTAR_METADATA,
654 struct_name: "",
655 source_file: "pattern",
656 },
657 RegisteredMetadata {
658 slug: "cdlshortline",
659 meta: &CDLSHORTLINE_METADATA,
660 struct_name: "",
661 source_file: "pattern",
662 },
663 RegisteredMetadata {
664 slug: "cdlspinningtop",
665 meta: &CDLSPINNINGTOP_METADATA,
666 struct_name: "",
667 source_file: "pattern",
668 },
669 RegisteredMetadata {
670 slug: "cdlstalledpattern",
671 meta: &CDLSTALLEDPATTERN_METADATA,
672 struct_name: "",
673 source_file: "pattern",
674 },
675 RegisteredMetadata {
676 slug: "cdlsticksandwich",
677 meta: &CDLSTICKSANDWICH_METADATA,
678 struct_name: "",
679 source_file: "pattern",
680 },
681 RegisteredMetadata {
682 slug: "cdltakuri",
683 meta: &CDLTAKURI_METADATA,
684 struct_name: "",
685 source_file: "pattern",
686 },
687 RegisteredMetadata {
688 slug: "cdltasukigap",
689 meta: &CDLTASUKIGAP_METADATA,
690 struct_name: "",
691 source_file: "pattern",
692 },
693 RegisteredMetadata {
694 slug: "cdlthrusting",
695 meta: &CDLTHRUSTING_METADATA,
696 struct_name: "",
697 source_file: "pattern",
698 },
699 RegisteredMetadata {
700 slug: "cdltristar",
701 meta: &CDLTRISTAR_METADATA,
702 struct_name: "",
703 source_file: "pattern",
704 },
705 RegisteredMetadata {
706 slug: "cdlunique3river",
707 meta: &CDLUNIQUE3RIVER_METADATA,
708 struct_name: "",
709 source_file: "pattern",
710 },
711 RegisteredMetadata {
712 slug: "cdlupsidegap2crows",
713 meta: &CDLUPSIDEGAP2CROWS_METADATA,
714 struct_name: "",
715 source_file: "pattern",
716 },
717 RegisteredMetadata {
718 slug: "cdlxsidegap3methods",
719 meta: &CDLXSIDEGAP3METHODS_METADATA,
720 struct_name: "",
721 source_file: "pattern",
722 },
723 RegisteredMetadata {
724 slug: "cg",
725 meta: &CG_METADATA,
726 struct_name: "CenterOfGravity",
727 source_file: "cg",
728 },
729 RegisteredMetadata {
730 slug: "channel_cycle",
731 meta: &CHANNEL_CYCLE_METADATA,
732 struct_name: "ChannelCycle",
733 source_file: "channel_cycle",
734 },
735 RegisteredMetadata {
736 slug: "choppiness_index",
737 meta: &CHOPPINESS_INDEX_METADATA,
738 struct_name: "ChoppinessIndex",
739 source_file: "choppiness_index",
740 },
741 RegisteredMetadata {
742 slug: "classic_laguerre",
743 meta: &CLASSIC_LAGUERRE_METADATA,
744 struct_name: "ClassicLaguerre",
745 source_file: "classic_laguerre",
746 },
747 RegisteredMetadata {
748 slug: "cmo",
749 meta: &CMO_METADATA,
750 struct_name: "",
751 source_file: "momentum",
752 },
753 RegisteredMetadata {
754 slug: "continuation_index",
755 meta: &CONTINUATION_INDEX_METADATA,
756 struct_name: "ContinuationIndex",
757 source_file: "continuation_index",
758 },
759 RegisteredMetadata {
760 slug: "correlation_cycle",
761 meta: &CORRELATION_CYCLE_METADATA,
762 struct_name: "CorrelationCycle",
763 source_file: "correlation_cycle",
764 },
765 RegisteredMetadata {
766 slug: "correlation_trend",
767 meta: &CORRELATION_TREND_METADATA,
768 struct_name: "CorrelationTrend",
769 source_file: "correlation_trend",
770 },
771 RegisteredMetadata {
772 slug: "correl",
773 meta: &CORREL_METADATA,
774 struct_name: "StandardDeviation",
775 source_file: "statistics",
776 },
777 RegisteredMetadata {
778 slug: "cybernetic_oscillator",
779 meta: &CYBERNETIC_OSCILLATOR_METADATA,
780 struct_name: "CyberneticOscillator",
781 source_file: "cybernetic_oscillator",
782 },
783 RegisteredMetadata {
784 slug: "cyber_cycle",
785 meta: &CYBER_CYCLE_METADATA,
786 struct_name: "CyberCycle",
787 source_file: "cyber_cycle",
788 },
789 RegisteredMetadata {
790 slug: "cycle_trend_analytics",
791 meta: &CYCLE_TREND_ANALYTICS_METADATA,
792 struct_name: "CycleTrendAnalytics",
793 source_file: "cycle_trend_analytics",
794 },
795 RegisteredMetadata {
796 slug: "dema",
797 meta: &DEMA_METADATA,
798 struct_name: "",
799 source_file: "overlap",
800 },
801 RegisteredMetadata {
802 slug: "dmh",
803 meta: &DMH_METADATA,
804 struct_name: "Dmh",
805 source_file: "dmh",
806 },
807 RegisteredMetadata {
808 slug: "donchian",
809 meta: &DONCHIAN_METADATA,
810 struct_name: "Donchian",
811 source_file: "donchian",
812 },
813 RegisteredMetadata {
814 slug: "dsma",
815 meta: &DSMA_METADATA,
816 struct_name: "Dsma",
817 source_file: "dsma",
818 },
819 RegisteredMetadata {
820 slug: "ehlers_autocorrelation",
821 meta: &EHLERS_AUTOCORRELATION_METADATA,
822 struct_name: "EhlersAutocorrelation",
823 source_file: "ehlers_autocorrelation",
824 },
825 RegisteredMetadata {
826 slug: "ehlers_filter",
827 meta: &EHLERS_FILTER_METADATA,
828 struct_name: "EhlersFilter",
829 source_file: "ehlers_filter",
830 },
831 RegisteredMetadata {
832 slug: "ehlers_loops",
833 meta: &EHLERS_LOOPS_METADATA,
834 struct_name: "EhlersLoops",
835 source_file: "ehlers_loops",
836 },
837 RegisteredMetadata {
838 slug: "ehlers_stochastic",
839 meta: &EHLERS_STOCHASTIC_METADATA,
840 struct_name: "EhlersStochastic",
841 source_file: "ehlers_stochastic",
842 },
843 RegisteredMetadata {
844 slug: "ehlers_ultimate_oscillator",
845 meta: &EHLERS_ULTIMATE_OSCILLATOR_METADATA,
846 struct_name: "EhlersUltimateOscillator",
847 source_file: "ehlers_ultimate_oscillator",
848 },
849 RegisteredMetadata {
850 slug: "ema",
851 meta: &EMA_METADATA,
852 struct_name: "Ema",
853 source_file: "smoothing",
854 },
855 RegisteredMetadata {
856 slug: "emd",
857 meta: &EMD_METADATA,
858 struct_name: "Emd",
859 source_file: "emd",
860 },
861 RegisteredMetadata {
862 slug: "extreme_reclaim",
863 meta: &EXTREME_RECLAIM_METADATA,
864 struct_name: "ExtremeReclaim",
865 source_file: "market_structure",
866 },
867 RegisteredMetadata {
868 slug: "fisher_high_pass",
869 meta: &FISHER_HIGH_PASS_METADATA,
870 struct_name: "FisherHighPass",
871 source_file: "fisher_high_pass",
872 },
873 RegisteredMetadata {
874 slug: "fisher",
875 meta: &FISHER_METADATA,
876 struct_name: "Fisher",
877 source_file: "fisher",
878 },
879 RegisteredMetadata {
880 slug: "fm_demodulator",
881 meta: &FM_DEMODULATOR_METADATA,
882 struct_name: "FmDemodulator",
883 source_file: "amfm",
884 },
885 RegisteredMetadata {
886 slug: "fourier_dominant_cycle",
887 meta: &FOURIER_DOMINANT_CYCLE_METADATA,
888 struct_name: "FourierDominantCycle",
889 source_file: "fourier_transform",
890 },
891 RegisteredMetadata {
892 slug: "fourier_series_model",
893 meta: &FOURIER_SERIES_MODEL_METADATA,
894 struct_name: "FourierSeriesModel",
895 source_file: "fourier_series",
896 },
897 RegisteredMetadata {
898 slug: "fractals",
899 meta: &FRACTALS_METADATA,
900 struct_name: "BillWilliamsFractals",
901 source_file: "fractals",
902 },
903 RegisteredMetadata {
904 slug: "frac_diff",
905 meta: &FRAC_DIFF_METADATA,
906 struct_name: "FracDiff",
907 source_file: "frac_diff",
908 },
909 RegisteredMetadata {
910 slug: "frama",
911 meta: &FRAMA_METADATA,
912 struct_name: "Frama",
913 source_file: "frama",
914 },
915 RegisteredMetadata {
916 slug: "gap_momentum",
917 meta: &GAP_MOMENTUM_METADATA,
918 struct_name: "GapMomentum",
919 source_file: "gap_momentum",
920 },
921 RegisteredMetadata {
922 slug: "gaussian_filter",
923 meta: &GAUSSIAN_FILTER_METADATA,
924 struct_name: "GaussianFilter",
925 source_file: "gaussian",
926 },
927 RegisteredMetadata {
928 slug: "gaussian_hmm",
929 meta: &GAUSSIAN_HMM_METADATA,
930 struct_name: "GaussianHmm",
931 source_file: "gaussian_hmm",
932 },
933 RegisteredMetadata {
934 slug: "generalized_laguerre",
935 meta: &GENERALIZED_LAGUERRE_METADATA,
936 struct_name: "GeneralizedLaguerre",
937 source_file: "generalized_laguerre",
938 },
939 RegisteredMetadata {
940 slug: "geometric_patterns",
941 meta: &GEOMETRIC_PATTERNS_METADATA,
942 struct_name: "GeometricPatterns",
943 source_file: "geometric_patterns",
944 },
945 RegisteredMetadata {
946 slug: "griffiths_dominant_cycle",
947 meta: &GRIFFITHS_DOMINANT_CYCLE_METADATA,
948 struct_name: "GriffithsDominantCycle",
949 source_file: "griffiths_dominant_cycle",
950 },
951 RegisteredMetadata {
952 slug: "griffiths_predictor",
953 meta: &GRIFFITHS_PREDICTOR_METADATA,
954 struct_name: "GriffithsPredictor",
955 source_file: "griffiths_predictor",
956 },
957 RegisteredMetadata {
958 slug: "griffiths_spectrum",
959 meta: &GRIFFITHS_SPECTRUM_METADATA,
960 struct_name: "GriffithsSpectrum",
961 source_file: "griffiths_spectrum",
962 },
963 RegisteredMetadata {
964 slug: "hamming_filter",
965 meta: &HAMMING_FILTER_METADATA,
966 struct_name: "HammingFilter",
967 source_file: "hamming",
968 },
969 RegisteredMetadata {
970 slug: "hann_filter",
971 meta: &HANN_FILTER_METADATA,
972 struct_name: "HannFilter",
973 source_file: "hann",
974 },
975 RegisteredMetadata {
976 slug: "harrington_adx",
977 meta: &HARRINGTON_ADX_METADATA,
978 struct_name: "HarringtonAdx",
979 source_file: "harrington_adx",
980 },
981 RegisteredMetadata {
982 slug: "heikin_ashi",
983 meta: &HEIKIN_ASHI_METADATA,
984 struct_name: "HeikinAshi",
985 source_file: "heikin_ashi",
986 },
987 RegisteredMetadata {
988 slug: "high_pass",
989 meta: &HIGH_PASS_METADATA,
990 struct_name: "HighPass",
991 source_file: "high_pass",
992 },
993 RegisteredMetadata {
994 slug: "hma",
995 meta: &HMA_METADATA,
996 struct_name: "Hma",
997 source_file: "hma",
998 },
999 RegisteredMetadata {
1000 slug: "hmm_forecast",
1001 meta: &HMM_FORECAST_METADATA,
1002 struct_name: "HmmDecodeStatsRow",
1003 source_file: "hmm_forecast",
1004 },
1005 RegisteredMetadata {
1006 slug: "homodyne_discriminator",
1007 meta: &HOMODYNE_DISCRIMINATOR_METADATA,
1008 struct_name: "HomodyneDiscriminator",
1009 source_file: "homodyne_discriminator",
1010 },
1011 RegisteredMetadata {
1012 slug: "ht_dcperiod",
1013 meta: &HT_DCPERIOD_METADATA,
1014 struct_name: "",
1015 source_file: "cycle",
1016 },
1017 RegisteredMetadata {
1018 slug: "ht_dcphase",
1019 meta: &HT_DCPHASE_METADATA,
1020 struct_name: "",
1021 source_file: "cycle",
1022 },
1023 RegisteredMetadata {
1024 slug: "ht_phasor",
1025 meta: &HT_PHASOR_METADATA,
1026 struct_name: "",
1027 source_file: "cycle",
1028 },
1029 RegisteredMetadata {
1030 slug: "ht_sine",
1031 meta: &HT_SINE_METADATA,
1032 struct_name: "",
1033 source_file: "cycle",
1034 },
1035 RegisteredMetadata {
1036 slug: "ht_trendmode",
1037 meta: &HT_TRENDMODE_METADATA,
1038 struct_name: "",
1039 source_file: "cycle",
1040 },
1041 RegisteredMetadata {
1042 slug: "hurst_exponent",
1043 meta: &HURST_EXPONENT_METADATA,
1044 struct_name: "HurstExponent",
1045 source_file: "hurst",
1046 },
1047 RegisteredMetadata {
1048 slug: "ichimoku",
1049 meta: &ICHIMOKU_METADATA,
1050 struct_name: "Ichimoku",
1051 source_file: "ichimoku",
1052 },
1053 RegisteredMetadata {
1054 slug: "instantaneous_trendline",
1055 meta: &INSTANTANEOUS_TRENDLINE_METADATA,
1056 struct_name: "InstantaneousTrendline",
1057 source_file: "instantaneous_trendline",
1058 },
1059 RegisteredMetadata {
1060 slug: "inverse_fisher",
1061 meta: &INVERSE_FISHER_METADATA,
1062 struct_name: "InverseFisher",
1063 source_file: "inverse_fisher",
1064 },
1065 RegisteredMetadata {
1066 slug: "kalman_filter",
1067 meta: &KALMAN_FILTER_METADATA,
1068 struct_name: "KalmanFilter",
1069 source_file: "kalman",
1070 },
1071 RegisteredMetadata {
1072 slug: "kama",
1073 meta: &KAMA_METADATA,
1074 struct_name: "Kama",
1075 source_file: "kama",
1076 },
1077 RegisteredMetadata {
1078 slug: "keltner",
1079 meta: &KELTNER_METADATA,
1080 struct_name: "Keltner",
1081 source_file: "keltner",
1082 },
1083 RegisteredMetadata {
1084 slug: "kinematic_kalman",
1085 meta: &KINEMATIC_KALMAN_METADATA,
1086 struct_name: "KinematicKalman",
1087 source_file: "kinematic_kalman",
1088 },
1089 RegisteredMetadata {
1090 slug: "laguerre_filter",
1091 meta: &LAGUERRE_FILTER_METADATA,
1092 struct_name: "LaguerreFilter",
1093 source_file: "laguerre_filter",
1094 },
1095 RegisteredMetadata {
1096 slug: "laguerre_oscillator",
1097 meta: &LAGUERRE_OSCILLATOR_METADATA,
1098 struct_name: "LaguerreOscillator",
1099 source_file: "laguerre_oscillator",
1100 },
1101 RegisteredMetadata {
1102 slug: "laguerre_rsi",
1103 meta: &LAGUERRE_RSI_METADATA,
1104 struct_name: "LaguerreRsi",
1105 source_file: "laguerre_rsi",
1106 },
1107 RegisteredMetadata {
1108 slug: "lambda_hmm",
1109 meta: &LAMBDA_HMM_METADATA,
1110 struct_name: "GaussianHmmParams",
1111 source_file: "gaussian_hmm",
1112 },
1113 RegisteredMetadata {
1114 slug: "linreg",
1115 meta: &LINREG_METADATA,
1116 struct_name: "StandardDeviation",
1117 source_file: "statistics",
1118 },
1119 RegisteredMetadata {
1120 slug: "macd",
1121 meta: &MACD_METADATA,
1122 struct_name: "",
1123 source_file: "momentum",
1124 },
1125 RegisteredMetadata {
1126 slug: "madh",
1127 meta: &MADH_METADATA,
1128 struct_name: "Madh",
1129 source_file: "madh",
1130 },
1131 RegisteredMetadata {
1132 slug: "mad",
1133 meta: &MAD_METADATA,
1134 struct_name: "Mad",
1135 source_file: "mad",
1136 },
1137 RegisteredMetadata {
1138 slug: "mama",
1139 meta: &MAMA_METADATA,
1140 struct_name: "Mama",
1141 source_file: "mama",
1142 },
1143 RegisteredMetadata {
1144 slug: "market_state",
1145 meta: &MARKET_STATE_METADATA,
1146 struct_name: "MarketState",
1147 source_file: "market_state",
1148 },
1149 RegisteredMetadata {
1150 slug: "market_structure",
1151 meta: &MARKET_STRUCTURE_METADATA,
1152 struct_name: "MarketStructure",
1153 source_file: "market_structure",
1154 },
1155 RegisteredMetadata {
1156 slug: "medprice",
1157 meta: &MEDPRICE_METADATA,
1158 struct_name: "OC2",
1159 source_file: "price_transform",
1160 },
1161 RegisteredMetadata {
1162 slug: "mesa_stochastic",
1163 meta: &MESA_STOCHASTIC_METADATA,
1164 struct_name: "MesaStochastic",
1165 source_file: "mesa_stochastic",
1166 },
1167 RegisteredMetadata {
1168 slug: "mfi",
1169 meta: &MFI_METADATA,
1170 struct_name: "",
1171 source_file: "momentum",
1172 },
1173 RegisteredMetadata {
1174 slug: "mom",
1175 meta: &MOM_METADATA,
1176 struct_name: "",
1177 source_file: "momentum",
1178 },
1179 RegisteredMetadata {
1180 slug: "my_rsi",
1181 meta: &MY_RSI_METADATA,
1182 struct_name: "MyRsi",
1183 source_file: "my_rsi",
1184 },
1185 RegisteredMetadata {
1186 slug: "natr",
1187 meta: &NATR_METADATA,
1188 struct_name: "TrueRange",
1189 source_file: "volatility",
1190 },
1191 RegisteredMetadata {
1192 slug: "noise_elimination",
1193 meta: &NOISE_ELIMINATION_METADATA,
1194 struct_name: "NoiseElimination",
1195 source_file: "noise_elimination",
1196 },
1197 RegisteredMetadata {
1198 slug: "obv",
1199 meta: &OBV_METADATA,
1200 struct_name: "",
1201 source_file: "volume",
1202 },
1203 RegisteredMetadata {
1204 slug: "oc2",
1205 meta: &OC2_METADATA,
1206 struct_name: "Oc2",
1207 source_file: "price_transform",
1208 },
1209 RegisteredMetadata {
1210 slug: "oc_price_rsi",
1211 meta: &OC_PRICE_RSI_METADATA,
1212 struct_name: "OcPriceRsi",
1213 source_file: "oc_price_rsi",
1214 },
1215 RegisteredMetadata {
1216 slug: "one_euro_filter",
1217 meta: &ONE_EURO_FILTER_METADATA,
1218 struct_name: "OneEuroFilter",
1219 source_file: "one_euro_filter",
1220 },
1221 RegisteredMetadata {
1222 slug: "pairs_rotation",
1223 meta: &PAIRS_ROTATION_METADATA,
1224 struct_name: "PairsRotation",
1225 source_file: "pairs_rotation",
1226 },
1227 RegisteredMetadata {
1228 slug: "percent_rank",
1229 meta: &PERCENT_RANK_METADATA,
1230 struct_name: "PercentRank",
1231 source_file: "series_norm",
1232 },
1233 RegisteredMetadata {
1234 slug: "phasor",
1235 meta: &PHASOR_METADATA,
1236 struct_name: "Phasor",
1237 source_file: "phasor",
1238 },
1239 RegisteredMetadata {
1240 slug: "pivot_points",
1241 meta: &PIVOT_POINTS_METADATA,
1242 struct_name: "PivotPoints",
1243 source_file: "pivot_points",
1244 },
1245 RegisteredMetadata {
1246 slug: "ppo",
1247 meta: &PPO_METADATA,
1248 struct_name: "",
1249 source_file: "momentum",
1250 },
1251 RegisteredMetadata {
1252 slug: "precision_trend_analysis",
1253 meta: &PRECISION_TREND_ANALYSIS_METADATA,
1254 struct_name: "PrecisionTrendAnalysis",
1255 source_file: "precision_trend",
1256 },
1257 RegisteredMetadata {
1258 slug: "price_imbalance",
1259 meta: &PRICE_IMBALANCE_METADATA,
1260 struct_name: "PriceImbalance",
1261 source_file: "market_structure",
1262 },
1263 RegisteredMetadata {
1264 slug: "projected_moving_average",
1265 meta: &PROJECTED_MOVING_AVERAGE_METADATA,
1266 struct_name: "ProjectedMovingAverage",
1267 source_file: "pma",
1268 },
1269 RegisteredMetadata {
1270 slug: "recursive_median",
1271 meta: &RECURSIVE_MEDIAN_METADATA,
1272 struct_name: "RecursiveMedian",
1273 source_file: "recursive_median",
1274 },
1275 RegisteredMetadata {
1276 slug: "recursive_median_oscillator",
1277 meta: &RECURSIVE_MEDIAN_OSCILLATOR_METADATA,
1278 struct_name: "RecursiveMedianOscillator",
1279 source_file: "recursive_median",
1280 },
1281 RegisteredMetadata {
1282 slug: "reflex",
1283 meta: &REFLEX_METADATA,
1284 struct_name: "Reflex",
1285 source_file: "reflex",
1286 },
1287 RegisteredMetadata {
1288 slug: "reverse_ema",
1289 meta: &REVERSE_EMA_METADATA,
1290 struct_name: "ReverseEma",
1291 source_file: "reverse_ema",
1292 },
1293 RegisteredMetadata {
1294 slug: "reversion_index",
1295 meta: &REVERSION_INDEX_METADATA,
1296 struct_name: "ReversionIndex",
1297 source_file: "reversion_index",
1298 },
1299 RegisteredMetadata {
1300 slug: "rocket_rsi",
1301 meta: &ROCKET_RSI_METADATA,
1302 struct_name: "RocketRsi",
1303 source_file: "rocket_rsi",
1304 },
1305 RegisteredMetadata {
1306 slug: "roc",
1307 meta: &ROC_METADATA,
1308 struct_name: "",
1309 source_file: "momentum",
1310 },
1311 RegisteredMetadata {
1312 slug: "roofing_filter",
1313 meta: &ROOFING_FILTER_METADATA,
1314 struct_name: "RoofingFilter",
1315 source_file: "roofing_filter",
1316 },
1317 RegisteredMetadata {
1318 slug: "rsih",
1319 meta: &RSIH_METADATA,
1320 struct_name: "Rsih",
1321 source_file: "rsih",
1322 },
1323 RegisteredMetadata {
1324 slug: "rsi",
1325 meta: &RSI_METADATA,
1326 struct_name: "",
1327 source_file: "momentum",
1328 },
1329 RegisteredMetadata {
1330 slug: "sar",
1331 meta: &SAR_METADATA,
1332 struct_name: "",
1333 source_file: "overlap",
1334 },
1335 RegisteredMetadata {
1336 slug: "sdo",
1337 meta: &SDO_METADATA,
1338 struct_name: "Sdo",
1339 source_file: "sdo",
1340 },
1341 RegisteredMetadata {
1342 slug: "simple_predictor",
1343 meta: &SIMPLE_PREDICTOR_METADATA,
1344 struct_name: "SimplePredictor",
1345 source_file: "simple_predictor",
1346 },
1347 RegisteredMetadata {
1348 slug: "sine_wave",
1349 meta: &SINE_WAVE_METADATA,
1350 struct_name: "SineWave",
1351 source_file: "sine_wave",
1352 },
1353 RegisteredMetadata {
1354 slug: "sma",
1355 meta: &SMA_METADATA,
1356 struct_name: "Sma",
1357 source_file: "smoothing",
1358 },
1359 RegisteredMetadata {
1360 slug: "sr_interaction_monitor",
1361 meta: &SR_INTERACTION_MONITOR_METADATA,
1362 struct_name: "SrInteractionMonitor",
1363 source_file: "sr_monitor",
1364 },
1365 RegisteredMetadata {
1366 slug: "stc",
1367 meta: &STC_METADATA,
1368 struct_name: "SchaffTrendCycle",
1369 source_file: "stc",
1370 },
1371 RegisteredMetadata {
1372 slug: "stddev",
1373 meta: &STDDEV_METADATA,
1374 struct_name: "StandardDeviation",
1375 source_file: "statistics",
1376 },
1377 RegisteredMetadata {
1378 slug: "stoch",
1379 meta: &STOCH_METADATA,
1380 struct_name: "",
1381 source_file: "momentum",
1382 },
1383 RegisteredMetadata {
1384 slug: "supertrend",
1385 meta: &SUPERTREND_METADATA,
1386 struct_name: "Supertrend",
1387 source_file: "supertrend",
1388 },
1389 RegisteredMetadata {
1390 slug: "super_smoother",
1391 meta: &SUPER_SMOOTHER_METADATA,
1392 struct_name: "SuperSmoother",
1393 source_file: "super_smoother",
1394 },
1395 RegisteredMetadata {
1396 slug: "swiss_army_knife",
1397 meta: &SWISS_ARMY_KNIFE_METADATA,
1398 struct_name: "SwissArmyKnife",
1399 source_file: "swiss_army_knife",
1400 },
1401 RegisteredMetadata {
1402 slug: "synthetic_oscillator",
1403 meta: &SYNTHETIC_OSCILLATOR_METADATA,
1404 struct_name: "SyntheticOscillator",
1405 source_file: "synthetic_oscillator",
1406 },
1407 RegisteredMetadata {
1408 slug: "system_evaluator",
1409 meta: &SYSTEM_EVALUATOR_METADATA,
1410 struct_name: "SystemEvaluator",
1411 source_file: "system_evaluator",
1412 },
1413 RegisteredMetadata {
1414 slug: "t3",
1415 meta: &T3_METADATA,
1416 struct_name: "",
1417 source_file: "overlap",
1418 },
1419 RegisteredMetadata {
1420 slug: "tema",
1421 meta: &TEMA_METADATA,
1422 struct_name: "Tema",
1423 source_file: "tema",
1424 },
1425 RegisteredMetadata {
1426 slug: "tradj_ema",
1427 meta: &TRADJ_EMA_METADATA,
1428 struct_name: "TradjEma",
1429 source_file: "tradj_ema",
1430 },
1431 RegisteredMetadata {
1432 slug: "trendflex",
1433 meta: &TRENDFLEX_METADATA,
1434 struct_name: "Trendflex",
1435 source_file: "trendflex",
1436 },
1437 RegisteredMetadata {
1438 slug: "triangle_filter",
1439 meta: &TRIANGLE_FILTER_METADATA,
1440 struct_name: "TriangleFilter",
1441 source_file: "triangle",
1442 },
1443 RegisteredMetadata {
1444 slug: "trima",
1445 meta: &TRIMA_METADATA,
1446 struct_name: "",
1447 source_file: "overlap",
1448 },
1449 RegisteredMetadata {
1450 slug: "trix",
1451 meta: &TRIX_METADATA,
1452 struct_name: "",
1453 source_file: "momentum",
1454 },
1455 RegisteredMetadata {
1456 slug: "true_range",
1457 meta: &TRUE_RANGE_METADATA,
1458 struct_name: "TrueRange",
1459 source_file: "volatility",
1460 },
1461 RegisteredMetadata {
1462 slug: "truncated_bandpass",
1463 meta: &TRUNCATED_BANDPASS_METADATA,
1464 struct_name: "TruncatedBandpass",
1465 source_file: "truncated_bandpass",
1466 },
1467 RegisteredMetadata {
1468 slug: "ttm_squeeze",
1469 meta: &TTM_SQUEEZE_METADATA,
1470 struct_name: "TtmSqueeze",
1471 source_file: "ttm_squeeze",
1472 },
1473 RegisteredMetadata {
1474 slug: "typprice",
1475 meta: &TYPPRICE_METADATA,
1476 struct_name: "OC2",
1477 source_file: "price_transform",
1478 },
1479 RegisteredMetadata {
1480 slug: "ultimate_bands",
1481 meta: &ULTIMATE_BANDS_METADATA,
1482 struct_name: "UltimateBands",
1483 source_file: "ultimate_bands",
1484 },
1485 RegisteredMetadata {
1486 slug: "ultimate_channel",
1487 meta: &ULTIMATE_CHANNEL_METADATA,
1488 struct_name: "UltimateChannel",
1489 source_file: "ultimate_channel",
1490 },
1491 RegisteredMetadata {
1492 slug: "ultimate_smoother",
1493 meta: &ULTIMATE_SMOOTHER_METADATA,
1494 struct_name: "UltimateSmoother",
1495 source_file: "ultimate_smoother",
1496 },
1497 RegisteredMetadata {
1498 slug: "ultosc",
1499 meta: &ULTOSC_METADATA,
1500 struct_name: "",
1501 source_file: "momentum",
1502 },
1503 RegisteredMetadata {
1504 slug: "undersampled_double_ma",
1505 meta: &UNDERSAMPLED_DOUBLE_MA_METADATA,
1506 struct_name: "UndersampledDoubleMa",
1507 source_file: "just_ignore_them",
1508 },
1509 RegisteredMetadata {
1510 slug: "universal_oscillator",
1511 meta: &UNIVERSAL_OSCILLATOR_METADATA,
1512 struct_name: "UniversalOscillator",
1513 source_file: "universal_oscillator",
1514 },
1515 RegisteredMetadata {
1516 slug: "usi",
1517 meta: &USI_METADATA,
1518 struct_name: "Usi",
1519 source_file: "usi",
1520 },
1521 RegisteredMetadata {
1522 slug: "volume_profile",
1523 meta: &VOLUME_PROFILE_METADATA,
1524 struct_name: "VolumeProfile",
1525 source_file: "volume_profile",
1526 },
1527 RegisteredMetadata {
1528 slug: "vortex",
1529 meta: &VORTEX_METADATA,
1530 struct_name: "Vortex",
1531 source_file: "vortex",
1532 },
1533 RegisteredMetadata {
1534 slug: "voss_predictor",
1535 meta: &VOSS_PREDICTOR_METADATA,
1536 struct_name: "VossPredictor",
1537 source_file: "voss_predictor",
1538 },
1539 RegisteredMetadata {
1540 slug: "vpn",
1541 meta: &VPN_METADATA,
1542 struct_name: "Vpn",
1543 source_file: "vpn",
1544 },
1545 RegisteredMetadata {
1546 slug: "vwap",
1547 meta: &VWAP_METADATA,
1548 struct_name: "AnchoredVWAP",
1549 source_file: "vwap",
1550 },
1551 RegisteredMetadata {
1552 slug: "wavetrend",
1553 meta: &WAVETREND_METADATA,
1554 struct_name: "Wavetrend",
1555 source_file: "wavetrend",
1556 },
1557 RegisteredMetadata {
1558 slug: "wclprice",
1559 meta: &WCLPRICE_METADATA,
1560 struct_name: "OC2",
1561 source_file: "price_transform",
1562 },
1563 RegisteredMetadata {
1564 slug: "willr",
1565 meta: &WILLR_METADATA,
1566 struct_name: "",
1567 source_file: "momentum",
1568 },
1569 RegisteredMetadata {
1570 slug: "wma",
1571 meta: &WMA_METADATA,
1572 struct_name: "Wma",
1573 source_file: "smoothing",
1574 },
1575 RegisteredMetadata {
1576 slug: "zero_lag",
1577 meta: &ZERO_LAG_METADATA,
1578 struct_name: "ZeroLag",
1579 source_file: "zero_lag",
1580 },
1581 RegisteredMetadata {
1582 slug: "zlema",
1583 meta: &ZLEMA_METADATA,
1584 struct_name: "Zlema",
1585 source_file: "tema",
1586 },
1587 RegisteredMetadata {
1588 slug: "zscore",
1589 meta: &ZSCORE_METADATA,
1590 struct_name: "Zscore",
1591 source_file: "series_norm",
1592 },
1593];
1594
1595pub static ALL_INDICATOR_METADATA: &[&IndicatorMetadata] = &[
1597 &ADAPTIVE_EMA_METADATA,
1598 &ADOSC_METADATA,
1599 &ADX_METADATA,
1600 &AD_METADATA,
1601 &ALLIGATOR_METADATA,
1602 &ALMA_METADATA,
1603 &AM_DETECTOR_METADATA,
1604 &APO_METADATA,
1605 &AROON_METADATA,
1606 &ATR_METADATA,
1607 &ATR_TS_METADATA,
1608 &AUTOTUNE_FILTER_METADATA,
1609 &AVGPRICE_METADATA,
1610 &BANDPASS_METADATA,
1611 &BBANDS_METADATA,
1612 &BETA_METADATA,
1613 &BUTTERWORTH2_METADATA,
1614 &BUTTERWORTH3_METADATA,
1615 &CCI_METADATA,
1616 &CDL2CROWS_METADATA,
1617 &CDL3BLACKCROWS_METADATA,
1618 &CDL3INSIDE_METADATA,
1619 &CDL3LINESTRIKE_METADATA,
1620 &CDL3OUTSIDE_METADATA,
1621 &CDL3STARSINSOUTH_METADATA,
1622 &CDL3WHITESOLDIERS_METADATA,
1623 &CDLABANDONEDBABY_METADATA,
1624 &CDLADVANCEBLOCK_METADATA,
1625 &CDLBELTHOLD_METADATA,
1626 &CDLBREAKAWAY_METADATA,
1627 &CDLCLOSINGMARUBOZU_METADATA,
1628 &CDLCONCEALBABYSWALL_METADATA,
1629 &CDLCOUNTERATTACK_METADATA,
1630 &CDLDARKCLOUDCOVER_METADATA,
1631 &CDLDOJISTAR_METADATA,
1632 &CDLDOJI_METADATA,
1633 &CDLDRAGONFLYDOJI_METADATA,
1634 &CDLENGULFING_METADATA,
1635 &CDLEVENINGDOJISTAR_METADATA,
1636 &CDLEVENINGSTAR_METADATA,
1637 &CDLGAPSIDESIDEWHITE_METADATA,
1638 &CDLGRAVESTONEDOJI_METADATA,
1639 &CDLHAMMER_METADATA,
1640 &CDLHANGINGMAN_METADATA,
1641 &CDLHARAMICROSS_METADATA,
1642 &CDLHARAMI_METADATA,
1643 &CDLHIGHWAVE_METADATA,
1644 &CDLHIKKAKEMOD_METADATA,
1645 &CDLHIKKAKE_METADATA,
1646 &CDLHOMINGPIGEON_METADATA,
1647 &CDLIDENTICAL3CROWS_METADATA,
1648 &CDLINNECK_METADATA,
1649 &CDLINVERTEDHAMMER_METADATA,
1650 &CDLKICKINGBYLENGTH_METADATA,
1651 &CDLKICKING_METADATA,
1652 &CDLLADDERBOTTOM_METADATA,
1653 &CDLLONGLEGGEDDOJI_METADATA,
1654 &CDLLONGLINE_METADATA,
1655 &CDLMARUBOZU_METADATA,
1656 &CDLMATCHINGLOW_METADATA,
1657 &CDLMATHOLD_METADATA,
1658 &CDLMORNINGDOJISTAR_METADATA,
1659 &CDLMORNINGSTAR_METADATA,
1660 &CDLONNECK_METADATA,
1661 &CDLPIERCING_METADATA,
1662 &CDLRICKSHAWMAN_METADATA,
1663 &CDLRISEFALL3METHODS_METADATA,
1664 &CDLSEPARATINGLINES_METADATA,
1665 &CDLSHOOTINGSTAR_METADATA,
1666 &CDLSHORTLINE_METADATA,
1667 &CDLSPINNINGTOP_METADATA,
1668 &CDLSTALLEDPATTERN_METADATA,
1669 &CDLSTICKSANDWICH_METADATA,
1670 &CDLTAKURI_METADATA,
1671 &CDLTASUKIGAP_METADATA,
1672 &CDLTHRUSTING_METADATA,
1673 &CDLTRISTAR_METADATA,
1674 &CDLUNIQUE3RIVER_METADATA,
1675 &CDLUPSIDEGAP2CROWS_METADATA,
1676 &CDLXSIDEGAP3METHODS_METADATA,
1677 &CG_METADATA,
1678 &CHANNEL_CYCLE_METADATA,
1679 &CHOPPINESS_INDEX_METADATA,
1680 &CLASSIC_LAGUERRE_METADATA,
1681 &CMO_METADATA,
1682 &CONTINUATION_INDEX_METADATA,
1683 &CORRELATION_CYCLE_METADATA,
1684 &CORRELATION_TREND_METADATA,
1685 &CORREL_METADATA,
1686 &CYBERNETIC_OSCILLATOR_METADATA,
1687 &CYBER_CYCLE_METADATA,
1688 &CYCLE_TREND_ANALYTICS_METADATA,
1689 &DEMA_METADATA,
1690 &DMH_METADATA,
1691 &DONCHIAN_METADATA,
1692 &DSMA_METADATA,
1693 &EHLERS_AUTOCORRELATION_METADATA,
1694 &EHLERS_FILTER_METADATA,
1695 &EHLERS_LOOPS_METADATA,
1696 &EHLERS_STOCHASTIC_METADATA,
1697 &EHLERS_ULTIMATE_OSCILLATOR_METADATA,
1698 &EMA_METADATA,
1699 &EMD_METADATA,
1700 &EXTREME_RECLAIM_METADATA,
1701 &FISHER_HIGH_PASS_METADATA,
1702 &FISHER_METADATA,
1703 &FM_DEMODULATOR_METADATA,
1704 &FOURIER_DOMINANT_CYCLE_METADATA,
1705 &FOURIER_SERIES_MODEL_METADATA,
1706 &FRACTALS_METADATA,
1707 &FRAC_DIFF_METADATA,
1708 &FRAMA_METADATA,
1709 &GAP_MOMENTUM_METADATA,
1710 &GAUSSIAN_FILTER_METADATA,
1711 &GAUSSIAN_HMM_METADATA,
1712 &GENERALIZED_LAGUERRE_METADATA,
1713 &GEOMETRIC_PATTERNS_METADATA,
1714 &GRIFFITHS_DOMINANT_CYCLE_METADATA,
1715 &GRIFFITHS_PREDICTOR_METADATA,
1716 &GRIFFITHS_SPECTRUM_METADATA,
1717 &HAMMING_FILTER_METADATA,
1718 &HANN_FILTER_METADATA,
1719 &HARRINGTON_ADX_METADATA,
1720 &HEIKIN_ASHI_METADATA,
1721 &HIGH_PASS_METADATA,
1722 &HMA_METADATA,
1723 &HMM_FORECAST_METADATA,
1724 &HOMODYNE_DISCRIMINATOR_METADATA,
1725 &HT_DCPERIOD_METADATA,
1726 &HT_DCPHASE_METADATA,
1727 &HT_PHASOR_METADATA,
1728 &HT_SINE_METADATA,
1729 &HT_TRENDMODE_METADATA,
1730 &HURST_EXPONENT_METADATA,
1731 &ICHIMOKU_METADATA,
1732 &INSTANTANEOUS_TRENDLINE_METADATA,
1733 &INVERSE_FISHER_METADATA,
1734 &KALMAN_FILTER_METADATA,
1735 &KAMA_METADATA,
1736 &KELTNER_METADATA,
1737 &KINEMATIC_KALMAN_METADATA,
1738 &LAGUERRE_FILTER_METADATA,
1739 &LAGUERRE_OSCILLATOR_METADATA,
1740 &LAGUERRE_RSI_METADATA,
1741 &LAMBDA_HMM_METADATA,
1742 &LINREG_METADATA,
1743 &MACD_METADATA,
1744 &MADH_METADATA,
1745 &MAD_METADATA,
1746 &MAMA_METADATA,
1747 &MARKET_STATE_METADATA,
1748 &MARKET_STRUCTURE_METADATA,
1749 &MEDPRICE_METADATA,
1750 &MESA_STOCHASTIC_METADATA,
1751 &MFI_METADATA,
1752 &MOM_METADATA,
1753 &MY_RSI_METADATA,
1754 &NATR_METADATA,
1755 &NOISE_ELIMINATION_METADATA,
1756 &OBV_METADATA,
1757 &OC2_METADATA,
1758 &OC_PRICE_RSI_METADATA,
1759 &ONE_EURO_FILTER_METADATA,
1760 &PAIRS_ROTATION_METADATA,
1761 &PERCENT_RANK_METADATA,
1762 &PHASOR_METADATA,
1763 &PIVOT_POINTS_METADATA,
1764 &PPO_METADATA,
1765 &PRECISION_TREND_ANALYSIS_METADATA,
1766 &PRICE_IMBALANCE_METADATA,
1767 &PROJECTED_MOVING_AVERAGE_METADATA,
1768 &RECURSIVE_MEDIAN_METADATA,
1769 &RECURSIVE_MEDIAN_OSCILLATOR_METADATA,
1770 &REFLEX_METADATA,
1771 &REVERSE_EMA_METADATA,
1772 &REVERSION_INDEX_METADATA,
1773 &ROCKET_RSI_METADATA,
1774 &ROC_METADATA,
1775 &ROOFING_FILTER_METADATA,
1776 &RSIH_METADATA,
1777 &RSI_METADATA,
1778 &SAR_METADATA,
1779 &SDO_METADATA,
1780 &SIMPLE_PREDICTOR_METADATA,
1781 &SINE_WAVE_METADATA,
1782 &SMA_METADATA,
1783 &SR_INTERACTION_MONITOR_METADATA,
1784 &STC_METADATA,
1785 &STDDEV_METADATA,
1786 &STOCH_METADATA,
1787 &SUPERTREND_METADATA,
1788 &SUPER_SMOOTHER_METADATA,
1789 &SWISS_ARMY_KNIFE_METADATA,
1790 &SYNTHETIC_OSCILLATOR_METADATA,
1791 &SYSTEM_EVALUATOR_METADATA,
1792 &T3_METADATA,
1793 &TEMA_METADATA,
1794 &TRADJ_EMA_METADATA,
1795 &TRENDFLEX_METADATA,
1796 &TRIANGLE_FILTER_METADATA,
1797 &TRIMA_METADATA,
1798 &TRIX_METADATA,
1799 &TRUE_RANGE_METADATA,
1800 &TRUNCATED_BANDPASS_METADATA,
1801 &TTM_SQUEEZE_METADATA,
1802 &TYPPRICE_METADATA,
1803 &ULTIMATE_BANDS_METADATA,
1804 &ULTIMATE_CHANNEL_METADATA,
1805 &ULTIMATE_SMOOTHER_METADATA,
1806 &ULTOSC_METADATA,
1807 &UNDERSAMPLED_DOUBLE_MA_METADATA,
1808 &UNIVERSAL_OSCILLATOR_METADATA,
1809 &USI_METADATA,
1810 &VOLUME_PROFILE_METADATA,
1811 &VORTEX_METADATA,
1812 &VOSS_PREDICTOR_METADATA,
1813 &VPN_METADATA,
1814 &VWAP_METADATA,
1815 &WAVETREND_METADATA,
1816 &WCLPRICE_METADATA,
1817 &WILLR_METADATA,
1818 &WMA_METADATA,
1819 &ZERO_LAG_METADATA,
1820 &ZLEMA_METADATA,
1821 &ZSCORE_METADATA,
1822];
1823
1824pub const METADATA_COUNT: usize = 225;