Getting Started
Short answer
Install pip install "quantwave[polars]", run one .ta indicator on a Polars LazyFrame, then follow a path card below (batch, streaming, or backtest).
Your first 10 minutes with QuantWave — install, run one indicator, then pick where to go next.
Evaluating vs TA-Lib or pandas-ta?
Read QuantWave vs alternatives first if you are comparing stacks.
The funnel
flowchart LR
A[Install] --> B[First indicator]
B --> C{Goal?}
C --> D[Polars batch research]
C --> E[Live streaming]
C --> F[Backtest a signal]
C --> G[ML features]
D --> H[Indicator catalog]
E --> H
F --> I[Backtest quickstart]
G --> J[ML features guide]
1 — Install (2 min)
→ Python guide — Polars .ta, streaming, TA-Lib migration, backtest hooks.
→ Rust guide — Next<T> streaming and Polars .ta() in native crates.
2 — First indicator (3 min)
import polars as pl
import quantwave # registers pl.col().ta
df = pl.DataFrame({
"high": [101, 102, 103, 102, 104],
"low": [99, 100, 101, 100, 102],
"close": [100, 101, 102, 101, 103],
})
out = (
df.lazy()
.with_columns(
pl.col("close").ta.rsi(timeperiod=14).alias("rsi"),
pl.col("close").ta.supertrend("high", "low", period=10, multiplier=3.0).alias("st"),
)
.collect()
)
print(out.tail())
use quantwave_core::indicators::supertrend::SuperTrend;
use quantwave_core::Next;
let mut st = SuperTrend::new(10, 3.0);
let v = st.next((100.0, 105.0, 95.0, 102.0));
3 — Pick your path
Polars batch research
Build feature columns on LazyFrame, then backtest.
Live / streaming
Same math as batch — streaming_class + wrap_streaming.
Python streaming section · qw.assert_parity()
Backtest a strategy
.bt namespace — sweeps, walk-forward, tear sheets.
Explore indicators
217 native tools — search, gallery, or full catalog.
ML feature pipelines
Hurst, frac-diff, build_feature_matrix(), regime gates.
4 — Conventions worth knowing early
| Topic | Where it lives |
|---|---|
| Warmup / NaN rules | qw.warmup_bars(), qw.boundary_info() — Python guide |
| Batch vs streaming parity | qw.assert_parity() — same Next<T> core |
| Indicator discovery | qw.indicators(), qw.metadata("rsi") |
| Performance claims | Benchmarks |