Module emd

Module emd 

Expand description

Empirical Mode Decomposition (EMD) for non-stationary signal analysis

EMD is a data-driven method for decomposing signals into Intrinsic Mode Functions (IMFs). Unlike wavelet transforms, EMD doesn’t require predefined basis functions and adapts to the local characteristics of the signal.

§Financial Applications

  • Trend extraction: Separate long-term trends from short-term fluctuations
  • Volatility decomposition: Multi-scale volatility analysis
  • Cycle detection: Identify market cycles without assuming periodicity
  • Noise removal: Extract market microstructure noise
  • Regime identification: Detect changes in market dynamics

§EEMD Random Seed Configuration

The Ensemble EMD (EEMD) implementation supports configurable random seeds:

  • Production use: Set random_seed: None for true randomness (default)
  • Testing/Research: Use with_seed(seed) or set random_seed: Some(seed) for reproducibility
use ferro_wave::transform::EEMD;

// For production - uses random seed
let eemd = EEMD::default();

// For testing/research - reproducible results
let eemd_reproducible = EEMD::default().with_seed(42);

Structs§

EEMD
Ensemble Empirical Mode Decomposition (EEMD) for improved robustness
EMDConfig
Configuration for EMD decomposition
EMDResult
EMD result containing all IMFs and the residue
IMF
Intrinsic Mode Function (IMF) - a single component from EMD

Enums§

EndEffectStrategy
Strategy used to mitigate envelope end effects during EMD sifting.

Functions§

emd
Perform Empirical Mode Decomposition
hilbert_transform
Compute the Hilbert transform of a real signal via FFT.