Skip to main content

Crate quantwave_core

Crate quantwave_core 

Source
Expand description

§quantwave-core

Core technical-analysis engine for QuantWave: 230 native indicators, Ehlers DSP, price-action detectors, regime features, and the Next<Input> streaming trait that powers batch/streaming parity.

§Quick start (streaming)

use quantwave_core::indicators::incremental::rsi::RSI;
use quantwave_core::traits::Next;

let mut rsi = RSI::new(14);
let value = rsi.next(44.5);

§Architecture

  • Indicators — indicators module; each implements Next for scalar streaming
  • Batch — consumed by quantwave-polars / quantwave-plugins expression plugins
  • Features / regimes — ML-oriented transforms in features and regimes

User guides: https://lavs9.github.io/quantwave/guides/rust/ Full API: https://docs.rs/quantwave-core

Re-exports§

pub use indicators::adaptive_ema::AdaptiveEMA;
pub use indicators::alma::ALMA;
pub use indicators::atr_ts::ATRTrailingStop;
pub use indicators::autotune::AutoTuneFilter;
pub use indicators::donchian::DonchianChannels;
pub use indicators::exp_dev_bands::ExpDevBands;
pub use indicators::exp_dev_bands::ExpDevBaseline;
pub use indicators::frac_diff::FracDiff;
pub use indicators::fractals::BillWilliamsFractals;
pub use indicators::gap_momentum::GapMomentum;
pub use indicators::geometric_patterns::FlagPattern;
pub use indicators::geometric_patterns::GeometricPatternScanner;
pub use indicators::geometric_patterns::HsPattern;
pub use indicators::harmonic::HarmonicConfig;
pub use indicators::harmonic::HarmonicKind;
pub use indicators::harmonic::HarmonicPattern;
pub use indicators::harmonic::HarmonicPatternScanner;
pub use indicators::harmonic::harmonic_patterns_batch;
pub use indicators::harrington_adx::HarringtonADXOscillator;
pub use indicators::heikin_ashi::HeikinAshi;
pub use indicators::hma::HMA;
pub use indicators::ichimoku::IchimokuCloud;
pub use indicators::kagi::KagiBuilder;
pub use indicators::kagi::KagiLine;
pub use indicators::kagi::kagi_atr_batch;
pub use indicators::kagi::kagi_batch;
pub use indicators::keltner::KeltnerChannels;
pub use indicators::ma_type::InvalidMaType;
pub use indicators::ma_type::MaType;
pub use indicators::market_structure::Bias;
pub use indicators::market_structure::ExtremeReclaim;
pub use indicators::market_structure::ExtremeReclaimState;
pub use indicators::market_structure::FlipEvent;
pub use indicators::market_structure::MarketStructure;
pub use indicators::market_structure::MarketStructureState;
pub use indicators::market_structure::PAEvent;
pub use indicators::market_structure::PAEventKind;
pub use indicators::market_structure::PriceImbalance;
pub use indicators::market_structure::PriceImbalanceState;
pub use indicators::market_structure::SwingPoint;
pub use indicators::market_structure::extract_all_pa_events;
pub use indicators::market_structure::extract_pa_events;
pub use indicators::obvm::Obvm;
pub use indicators::pa_confluence::ConfluenceContext;
pub use indicators::pa_confluence::enrich_pa_event;
pub use indicators::pa_confluence::filter_confluent_events;
pub use indicators::pa_confluence::passes_confluence_filter;
pub use indicators::pa_confluence::regime_to_label;
pub use indicators::pa_confluence::score_pa_event;
pub use indicators::pivot_points::PivotPoints;
pub use indicators::point_figure::PointFigureBuilder;
pub use indicators::point_figure::PointFigureColumn;
pub use indicators::point_figure::point_figure_atr_batch;
pub use indicators::point_figure::point_figure_batch;
pub use indicators::range_bars::RangeBar;
pub use indicators::range_bars::RangeBarBuilder;
pub use indicators::range_bars::range_bars_atr_batch;
pub use indicators::range_bars::range_bars_batch;
pub use indicators::renko::RenkoBrick;
pub use indicators::renko::RenkoBuilder;
pub use indicators::renko::renko_atr_batch;
pub use indicators::renko::renko_batch;
pub use indicators::reverse_ema::ReverseEMA;
pub use indicators::rodc::RODC;
pub use indicators::rsmk::RSMK;
pub use indicators::sdo::SDO;
pub use indicators::series_norm::PercentRank;
pub use indicators::series_norm::Zscore;
pub use indicators::session_levels::OpeningRangeBreakout;
pub use indicators::session_levels::OrbBreakout;
pub use indicators::session_levels::OrbInput;
pub use indicators::session_levels::OrbPhase;
pub use indicators::session_levels::OrbState;
pub use indicators::session_levels::SessionVwap;
pub use indicators::session_levels::SessionVwapBand;
pub use indicators::session_levels::SessionVwapInput;
pub use indicators::session_levels::SessionVwapState;
pub use indicators::smc::Choch;
pub use indicators::smc::ChochState;
pub use indicators::smc::FairValueGap;
pub use indicators::smc::FairValueGapZone;
pub use indicators::smc::FvgDirection;
pub use indicators::smc::FvgState;
pub use indicators::smc::MitigationStatus;
pub use indicators::smc::OrderBlock;
pub use indicators::smc::OrderBlockConfig;
pub use indicators::smc::OrderBlockState;
pub use indicators::smc::OrderBlockType;
pub use indicators::smc::OrderBlockZone;
pub use indicators::smc::OrderBlockZoneMode;
pub use indicators::smc::StructureBreakDirection;
pub use indicators::smc::StructureBreakEvent;
pub use indicators::smc::StructureBreakType;
pub use indicators::smc::StructureTrend;
pub use indicators::smc::SwingType;
pub use indicators::smc::choch_batch;
pub use indicators::smc::fair_value_gap_batch;
pub use indicators::smc::order_block_batch;
pub use indicators::smoothing::EMA;
pub use indicators::smoothing::SMA;
pub use indicators::smoothing::WMA;
pub use indicators::sr_monitor::LevelSource;
pub use indicators::sr_monitor::SR_INTERACTION_MONITOR_METADATA;
pub use indicators::sr_monitor::SRInteraction;
pub use indicators::sr_monitor::SRInteractionMonitor;
pub use indicators::sr_monitor::SRInteractionType;
pub use indicators::sr_monitor::SRMonitorOutput;
pub use indicators::statistics::LinearRegression;
pub use indicators::statistics::StandardDeviation;
pub use indicators::statistics::TaBETA;
pub use indicators::statistics::TaCORREL;
pub use indicators::statistics::TaLINEARREG;
pub use indicators::statistics::TaLINEARREG_ANGLE;
pub use indicators::statistics::TaLINEARREG_INTERCEPT;
pub use indicators::statistics::TaLINEARREG_SLOPE;
pub use indicators::statistics::TaSTDDEV;
pub use indicators::statistics::TaTSF;
pub use indicators::statistics::TaVAR;
pub use indicators::supertrend::SuperTrend;
pub use indicators::sve_volatility_bands::SVEVolatilityBands;
pub use indicators::tema::TEMA;
pub use indicators::tema::ZLEMA;
pub use indicators::tradj_ema::TRAdjEMA;
pub use indicators::ttm_squeeze::TTMSqueeze;
pub use indicators::vfi::Vfi;
pub use indicators::volatility::ATR;
pub use indicators::volatility::TaATR;
pub use indicators::volatility::TaNATR;
pub use indicators::volatility::TaTRANGE;
pub use indicators::volatility::TrueRange;
pub use indicators::volume_profile::BarData;
pub use indicators::volume_profile::PriceBin;
pub use indicators::volume_profile::ValueAreaMethod;
pub use indicators::volume_profile::VolumeAllocationMethod;
pub use indicators::volume_profile::VolumeProfile;
pub use indicators::volume_profile::VolumeProfileState;
pub use indicators::vortex::VortexIndicator;
pub use indicators::vpn::VPNIndicator;
pub use indicators::vwap::AnchoredVWAP;
pub use indicators::wavetrend::WaveTrend;
pub use streaming::StreamingReadiness;
pub use streaming::TrackedNext;
pub use streaming::track;
pub use streaming::warmup_from_params;
pub use traits::IndicatorConfig;
pub use traits::Next;
pub use traits::SmoothingAlgorithm;
pub use options_india::OptionType;
pub use regimes::analytics::*;
pub use indicators::cycle::*;
pub use indicators::math::*;
pub use indicators::momentum::*;
pub use indicators::overlap::*;
pub use indicators::pattern::*;
pub use indicators::price_transform::*;
pub use indicators::volume::*;

Modules§

features
ML Feature Engineering Toolkit (ta.features.*)
indicators
options_india
portfolio
Portfolio optimization engine (Rust/nalgebra port, quantwave-a465).
regimes
Regime Detection and Market State Tools
streaming
Streaming readiness tracking for any Next<T> indicator.
traits
utils

Macros§

native_binary_2
O(1) binary element-wise operator.
native_pointwise_1
O(1) unary pointwise transform — no history buffer.