Skip to main content

Wavelet Families Guide

This guide summarizes the wavelet families implemented in IronWave, what they are good for, and when you might choose each one.

It complements the API-level docs (wavelets module) by focusing on behavior and use cases rather than function signatures.


1. Overview

Wavelets in IronWave are grouped into a few main families:

  • Haar
  • Daubechies
  • Symlets
  • Coiflets
  • Biorthogonal CDF (5/3, 9/7)

All are available through the iron_wave::wavelets module and implement the common Wavelet trait.


2. Haar

Characteristics

  • Shortest possible support (length 2).
  • Piecewise-constant basis; exactly captures step functions and jumps.
  • 1 vanishing moment.
  • Orthogonal and very fast.

Good for

  • Jump detection and microstructure noise in financial tick data.
  • Coarse, piecewise-constant approximations.
  • Very low-latency or embedded scenarios where speed dominates.

Less suitable for

  • Smooth signals where you care about frequency localization.
  • Applications demanding high-order vanishing moments and smoothness.
  • Transform: DWT or MODWT depending on shift-invariance needs.
  • Boundary: Periodic for finance; Symmetric if you want less wrap-around at boundaries.

3. Daubechies (Db2, Db4, Db6, Db8)

Daubechies wavelets are compactly supported orthogonal wavelets with increasing vanishing moments as the order increases.

Characteristics

  • Db2: 2 vanishing moments; short support; reasonably fast.
  • Db4: 4 vanishing moments; standard default; good time–frequency balance.
  • Db6/Db8: more vanishing moments and smoother, but longer filters and more edge effects.
  • Well-established defaults in many wavelet texts and libraries.

Good for

  • Db2 / Db4
    • Financial volatility estimation.
    • General-purpose multi-scale analysis.
    • Use as a default when you’re unsure what to pick.
  • Db6 / Db8
    • Smoother signals, offline analysis.
    • Cases where improved frequency localization is worth extra computation.

Less suitable for

  • Very short signals (especially Db6/Db8).
  • Situations where a nearly symmetric impulse response is critical (see Symlets).
  • Finance:
    • Db4 + MODWT is a strong default for volatility, regime detection, and multiscale correlation.
    • Db2 can be used when latency is tight or signals are short.
  • General signals:
    • Start with Db4; experiment with Db2 or Db6 depending on roughness vs smoothness.

4. Symlets (Sym2, Sym4, Sym6)

Symlets are “least asymmetric” versions of Daubechies wavelets: they maintain similar vanishing moments but with improved symmetry.

Characteristics

  • More symmetric impulse responses; reduced phase distortion.
  • Still compactly supported and (near-)orthogonal.
  • Similar regularity and vanishing moments to comparable Daubechies orders.

Good for

  • Phase-sensitive analysis where relative timing is important.
  • Smoother trend and envelope analysis.
  • Situations where Daubechies’ asymmetry causes visible artifacts.

Less suitable for

  • Extremely short signals (higher-order Symlets have longer support).
  • Ultra-low-latency pipelines where Haar/Db2 suffice.
  • Trend and regime analysis:
    • Sym4 with MODWT or SWT works well for smoother volatility or macro-trend signals.
  • When DWT edge effects are problematic, switching from Db4 to Sym4 can help.

5. Coiflets (Coif1, Coif2)

Coiflets have both the scaling and wavelet functions with vanishing moments, making them good at removing polynomial trends.

Characteristics

  • Dual vanishing moments: good at capturing both smooth trends and fluctuations.
  • More symmetric than pure Daubechies, though less so than idealized symmetric wavelets.
  • Slightly longer support than comparable Daubechies.

Good for

  • Polynomial detrending and baseline removal.
  • Long-horizon trend analysis where you expect smooth, low-order trends.

Less suitable for

  • Very noisy, highly irregular data dominated by jumps (Haar or Db2 may work better).
  • Extreme real-time constraints.
  • Use Coif1 or Coif2 with MODWT/SWT to separate smooth trend components from residual fluctuations.

6. Biorthogonal CDF (5/3, 9/7)

These are the standard Cohen–Daubechies–Feauveau biorthogonal wavelets, implemented via lifting.

Characteristics

  • CDF 5/3:
    • Integer-to-integer transform via lifting.
    • Used in lossless compression (e.g. JPEG2000).
  • CDF 9/7:
    • Higher-order, smoother; used in high-quality lossy compression.
  • Biorthogonal (not strictly orthogonal); reconstruction uses dual filters.

Good for

  • Scenarios inspired by image/compression workflows.
  • Applications needing reversible transforms or compatibility with JPEG2000-like pipelines.

Less suitable for

  • Most pure financial time-series tasks (Db/Sym wavelets typically suffice).
  • Use when you explicitly need CDF behavior or when exploring compression-oriented transforms.

7. Practical Tips

  • Start simple:
    • For finance: Db4 or Sym4 + MODWT.
    • For irregular, jump-heavy series: Haar + MODWT or DWT.
  • Check sensitivity:
    • Try one heavier and one lighter wavelet (e.g., Db2 vs Db4 vs Db6) and see if results qualitatively agree.
  • Boundary modes matter:
    • If edge artifacts are problematic, experiment with Symmetric vs Periodic and prefer MODWT when possible.

For more on how these families behave under each transform, see docs/TRANSFORMS_GUIDE.md.