//! Built-in indicators. Every indicator implements [`crate::Indicator`]. //! //! Modules are organised internally by category (trend, momentum, volatility, //! volume) but every public name is also re-exported flat from this module and //! from the crate root for convenience. mod acceleration_bands; mod accelerator_oscillator; mod ad_oscillator; mod adl; mod adx; mod adxr; mod alligator; mod alma; mod anchored_vwap; mod apo; mod aroon; mod aroon_oscillator; mod atr; mod atr_bands; mod atr_trailing_stop; mod awesome_oscillator; mod awesome_oscillator_histogram; mod balance_of_power; mod bollinger; mod bollinger_bandwidth; mod camarilla_pivots; mod cci; mod cfo; mod chaikin_oscillator; mod chaikin_volatility; mod chande_kroll_stop; mod chandelier_exit; mod choppiness_index; mod classic_pivots; mod cmf; mod cmo; mod connors_rsi; mod coppock; mod dema; mod demand_index; mod demark_pivots; mod donchian; mod donchian_stop; mod double_bollinger; mod dpo; mod ease_of_movement; mod elder_impulse; mod ema; mod evwma; mod fibonacci_pivots; mod force_index; mod fractal_chaos_bands; mod frama; mod garman_klass; mod hilo_activator; mod historical_volatility; mod hma; mod hurst_channel; mod inertia; mod jma; mod kama; mod keltner; mod kst; mod kvo; mod laguerre_rsi; mod linreg; mod linreg_angle; mod linreg_channel; mod linreg_slope; mod ma_envelope; mod macd; mod market_facilitation_index; mod mass_index; mod mcginley_dynamic; mod median_price; mod mfi; mod mom; mod natr; mod nvi; mod obv; mod parkinson; mod percent_b; mod percentage_trailing_stop; mod pgo; mod pmo; mod ppo; mod psar; mod pvi; mod renko_trailing_stop; mod roc; mod rogers_satchell; mod rsi; mod rvi; mod rvi_volatility; mod rwi; mod sma; mod smi; mod smma; mod standard_error_bands; mod starc_bands; mod stc; mod std_dev; mod step_trailing_stop; mod stoch_rsi; mod stochastic; mod super_trend; mod t3; mod tema; mod tii; mod trima; mod trix; mod true_range; mod tsi; mod tsv; mod ttm_squeeze; mod typical_price; mod ulcer_index; mod ultimate_oscillator; mod vertical_horizontal_filter; mod vidya; mod volty_stop; mod volume_oscillator; mod vortex; mod vpt; mod vwap; mod vwap_stddev_bands; mod vwma; mod vzo; mod wave_trend; mod weighted_close; mod williams_fractals; mod williams_r; mod wma; mod woodie_pivots; mod yang_zhang; mod yoyo_exit; mod z_score; mod zero_lag_macd; mod zig_zag; mod zlema; pub use acceleration_bands::{AccelerationBands, AccelerationBandsOutput}; pub use accelerator_oscillator::AcceleratorOscillator; pub use ad_oscillator::AdOscillator; pub use adl::Adl; pub use adx::{Adx, AdxOutput}; pub use adxr::Adxr; pub use alligator::{Alligator, AlligatorOutput}; pub use alma::Alma; pub use anchored_vwap::AnchoredVwap; pub use apo::Apo; pub use aroon::{Aroon, AroonOutput}; pub use aroon_oscillator::AroonOscillator; pub use atr::Atr; pub use atr_bands::{AtrBands, AtrBandsOutput}; pub use atr_trailing_stop::AtrTrailingStop; pub use awesome_oscillator::AwesomeOscillator; pub use awesome_oscillator_histogram::AwesomeOscillatorHistogram; pub use balance_of_power::BalanceOfPower; pub use bollinger::{BollingerBands, BollingerOutput}; pub use bollinger_bandwidth::BollingerBandwidth; pub use camarilla_pivots::{Camarilla, CamarillaPivotsOutput}; pub use cci::Cci; pub use cfo::Cfo; pub use chaikin_oscillator::ChaikinOscillator; pub use chaikin_volatility::ChaikinVolatility; pub use chande_kroll_stop::{ChandeKrollStop, ChandeKrollStopOutput}; pub use chandelier_exit::{ChandelierExit, ChandelierExitOutput}; pub use choppiness_index::ChoppinessIndex; pub use classic_pivots::{ClassicPivots, ClassicPivotsOutput}; pub use cmf::ChaikinMoneyFlow; pub use cmo::Cmo; pub use connors_rsi::ConnorsRsi; pub use coppock::Coppock; pub use dema::Dema; pub use demand_index::DemandIndex; pub use demark_pivots::{DemarkPivots, DemarkPivotsOutput}; pub use donchian::{Donchian, DonchianOutput}; pub use donchian_stop::{DonchianStop, DonchianStopOutput}; pub use double_bollinger::{DoubleBollinger, DoubleBollingerOutput}; pub use dpo::Dpo; pub use ease_of_movement::EaseOfMovement; pub use elder_impulse::ElderImpulse; pub use ema::Ema; pub use evwma::Evwma; pub use fibonacci_pivots::{FibonacciPivots, FibonacciPivotsOutput}; pub use force_index::ForceIndex; pub use fractal_chaos_bands::{FractalChaosBands, FractalChaosBandsOutput}; pub use frama::Frama; pub use garman_klass::GarmanKlassVolatility; pub use hilo_activator::HiLoActivator; pub use historical_volatility::HistoricalVolatility; pub use hma::Hma; pub use hurst_channel::{HurstChannel, HurstChannelOutput}; pub use inertia::Inertia; pub use jma::Jma; pub use kama::Kama; pub use keltner::{Keltner, KeltnerOutput}; pub use kst::{Kst, KstOutput}; pub use kvo::Kvo; pub use laguerre_rsi::LaguerreRsi; pub use linreg::LinearRegression; pub use linreg_angle::LinRegAngle; pub use linreg_channel::{LinRegChannel, LinRegChannelOutput}; pub use linreg_slope::LinRegSlope; pub use ma_envelope::{MaEnvelope, MaEnvelopeOutput}; pub use macd::{MacdIndicator, MacdOutput}; pub use market_facilitation_index::MarketFacilitationIndex; pub use mass_index::MassIndex; pub use mcginley_dynamic::McGinleyDynamic; pub use median_price::MedianPrice; pub use mfi::Mfi; pub use mom::Mom; pub use natr::Natr; pub use nvi::Nvi; pub use obv::Obv; pub use parkinson::ParkinsonVolatility; pub use percent_b::PercentB; pub use percentage_trailing_stop::PercentageTrailingStop; pub use pgo::Pgo; pub use pmo::Pmo; pub use ppo::Ppo; pub use psar::Psar; pub use pvi::Pvi; pub use renko_trailing_stop::RenkoTrailingStop; pub use roc::Roc; pub use rogers_satchell::RogersSatchellVolatility; pub use rsi::Rsi; pub use rvi::Rvi; pub use rvi_volatility::RviVolatility; pub use rwi::{Rwi, RwiOutput}; pub use sma::Sma; pub use smi::Smi; pub use smma::Smma; pub use standard_error_bands::{StandardErrorBands, StandardErrorBandsOutput}; pub use starc_bands::{StarcBands, StarcBandsOutput}; pub use stc::Stc; pub use std_dev::StdDev; pub use step_trailing_stop::StepTrailingStop; pub use stoch_rsi::StochRsi; pub use stochastic::{Stochastic, StochasticOutput}; pub use super_trend::{SuperTrend, SuperTrendOutput}; pub use t3::T3; pub use tema::Tema; pub use tii::Tii; pub use trima::Trima; pub use trix::Trix; pub use true_range::TrueRange; pub use tsi::Tsi; pub use tsv::Tsv; pub use ttm_squeeze::{TtmSqueeze, TtmSqueezeOutput}; pub use typical_price::TypicalPrice; pub use ulcer_index::UlcerIndex; pub use ultimate_oscillator::UltimateOscillator; pub use vertical_horizontal_filter::VerticalHorizontalFilter; pub use vidya::Vidya; pub use volty_stop::VoltyStop; pub use volume_oscillator::VolumeOscillator; pub use vortex::{Vortex, VortexOutput}; pub use vpt::VolumePriceTrend; pub use vwap::{RollingVwap, Vwap}; pub use vwap_stddev_bands::{VwapStdDevBands, VwapStdDevBandsOutput}; pub use vwma::Vwma; pub use vzo::Vzo; pub use wave_trend::{WaveTrend, WaveTrendOutput}; pub use weighted_close::WeightedClose; pub use williams_fractals::{WilliamsFractals, WilliamsFractalsOutput}; pub use williams_r::WilliamsR; pub use wma::Wma; pub use woodie_pivots::{WoodiePivots, WoodiePivotsOutput}; pub use yang_zhang::YangZhangVolatility; pub use yoyo_exit::YoyoExit; pub use z_score::ZScore; pub use zero_lag_macd::{ZeroLagMacd, ZeroLagMacdOutput}; pub use zig_zag::{ZigZag, ZigZagOutput}; pub use zlema::Zlema;