Predictive utility on high-frequency IBM and S&P 500 sequential data
Signature (depth 3)
Lead-lag signature
GBM-MLE
OU-MLE
ARMA(2,2)
01 — Methodology
Two views of the same path
Both methodologies aim to encode the geometry of a price path, but they part ways at the
first principle. Stochastic calculus posits a generative SDE — Brownian-driven GBM,
mean-reverting Ornstein–Uhlenbeck, stochastic-volatility Heston — and fits parameters via
quadratic variation, MLE, or moment matching. The path signature, in contrast, is
non-parametric: it encodes every iterated integral of the path up to a truncation
level, producing a universal feature basis for linear functionals of streamed data
(Gyurkó, Lyons et al., 2013).
For a path X : [s,t] → ℝd, the depth-N signature is a tensor
with 1 + d + d² + ⋯ + dN entries. By Chen’s theorem (1957) this object is
unique up to tree-like equivalence and constitutes a basis under which any
continuous functional of the path can be approximated by a linear combination.
The lead-lag transform embeds a 1-D stream into ℝ² so that its level-2
signature recovers the path’s quadratic variation — a fact stochastic calculus needs
Itô’s lemma to even discuss.
Stochastic calculus baseline
dXt = μ(Xt, t) dt + σ(Xt, t) dWt
The classical SDE view. We benchmark two members of the family:
GBM-MLE: μ and σ estimated from log-return moments inside the window.
ARMA(2,2): direct one-step return forecast as the standard linear baseline.
All three are nested inside the rough-path picture: stochastic calculus is exactly the
level-2 signature theory of semimartingales
(Abi Jaber & Gérard, 2025).
02 — Data
IBM & S&P 500, 1-minute bars (Jun 9–11, 2026)
True trade-by-trade tick data is not exposed by the connected market-data API. The highest
granularity available is 1-minute OHLCV, which we treat as the price stream.
Mid = (high + low)/2; log-returns rt = log(midt/midt-1).
All conclusions about computational complexity and feature geometry transfer to true tick
data — only the noise level differs.
IBM bars—
IBM realised vol (ann.)—
IBM lag-1 ρ—
IBM kurtosis—
SPY bars—
SPY realised vol (ann.)—
SPY lag-1 ρ—
SPY kurtosis—
Mid-price & return series
03 — Predictive accuracy
Walk-forward 1-step & 5-step return forecasts
Walk-forward: 60% train / 40% test on rolling 30-bar windows. Ridge regression on each
feature family; ARMA fit anew per window. Targets are h-step log-returns. R²
on minute-bar returns is famously close to zero or negative — markets are nearly a
random walk at this granularity. The interesting question is not “does anything work”
but “which features lose least?”
Out-of-sample R²
higher is better — zero is the constant-mean baseline
Directional accuracy
sign-of-return hit rate — 50% is the coin flip
Full results table
All metrics, all (symbol, horizon, method) cells.
Symbol
Horizon
Method
R²
RMSE
Dir. acc.
Feature dim
Build (ms/win)
04 — Feature extraction
What lives inside the signature?
A depth-3 signature on a 2-D path produces 15 features (1 + 2 + 4 + 8). The first level
is the increment, the second contains quadratic variation and Lévy area, the third
captures asymmetric path bending. Stochastic-calculus features (μ, σ, κ, θ) are scalar
summaries of the same window. The chart below contrasts how many independent features
each method exposes versus how many actually carry signal (here proxied by feature
dimension and the Ridge model’s implicit shrinkage).
Level 1 — drift
Δ in time and price. Same information stochastic calculus uses to estimate μ.
Level 2 — variation & area
Quadratic variation (≡ realised volatility) and Lévy area (signed cross-variation). The
latter captures lead-lag without a regression.
Level 3+ — path bending
Third-order moments that distinguish accelerating from decelerating moves — invisible
to GBM, partially captured by Heston, fully encoded by signatures.
Higher-order cross-effects (Lévy area, skew of skew)
Yes — depth ≥ 2
Only with extra factors (Heston ρ)
No
Universal approximator of path functionals
Yes (Hambly–Lyons 2010)
Only inside the assumed SDE family
No — linear in lags
Robust to irregular sampling / missing ticks
Yes — piecewise-linear interpolation suffices
Needs careful filtering or jump terms
Breaks without resampling
Closed-form pricing/hedging
Semi-analytic via Fourier inversion (Abi Jaber)
Yes — Black-Scholes, Heston char. function
No
06 — Lead-lag & Lévy area
Embedding 1-D streams into ℝ²
The lead-lag transform pairs each price with its predecessor:
X̂2i = (Si, Si); X̂2i+1 = (Si+1, Si).
The level-2 signature of this 2-D path contains the quadratic variation on the
diagonal, with the off-diagonal capturing local lead-lag. On our benchmark the lead-lag
features hurt R² — the 1-minute IBM stream is dominated by microstructure noise, and the
transform amplifies it before the Ridge can regularise. With longer windows or
denoised mid-quotes the signal/noise balance flips
(Pérez Arribas, QuantStart).
Lead-lag of last 60 IBM log-prices
2-D path that the depth-3 signature consumes
Rolling Lévy area — IBM × SPY (30-bar window)
positive ⇒ SPY leads IBM; negative ⇒ IBM leads
07 — Computational complexity
Real-time cost per window
Signature cost is O(N · (dN+1−1)/(d−1)) per window of length L,
multiplied by L for Chen’s product chain. With d=2 and depth 3 we sit at ~0.7 ms per
30-bar window on a single CPU — i.e. ~1,400 windows/sec — easily real-time.
ARMA refitting is ~70× more expensive because the MLE optimiser dominates each call.
Build time vs. depth (window L=30, d=2)
log-scale exposes the dN growth
Build time vs. window length (depth 3)
linear in L; total dim is constant
Production note. Naïve Python implementations like the one used here are
~20–100× slower than vendor C++ kernels
(Signatory,
iisignature). For a depth-3,
d=2 signature on a 30-tick window, Signatory on GPU is sub-100 µs — comfortable inside a
microsecond-budget pricing loop.
Any task where the shape of the path matters, not just its lagged values:
microstructure prediction, signature-based portfolio control, deep-BSDE solvers
(Sig-RDE BSDE, 2025).
Linear in lags; no quadratic variation; no order-of-events sensitivity;
forecast power collapses on near-random-walk data.
Macroeconomic series, low-frequency factor regressions, stationary signal denoising.
—
Use case — LOB micro-prediction
On the FI-2010 NASDAQ benchmark, a depth-4 signature beats hand-crafted OBI/VPIN
microstructure features by 35–56% in Information Coefficient at 100–500 ms horizons
(LOB Signatures, 2024).
Use case — Rough Bergomi calibration
Signature-based pricing replicates Heston accuracy and extends to non-Markov
volatility processes where asymptotic expansions break down
(Abi Jaber 2025).
Use case — Pairs trading on tick data
Tick-level OU MLE captures heavy-tailed residuals that 1-minute OU misses, lifting
Sharpe by ~0.4 in simulated pairs strategies
(Holý & Tomanová, 2018).
09 — Caveats & sources
Read before drawing conclusions
What the benchmark does not show
True ticks would expose richer microstructure that 1-minute bars smooth
away — the gap between signature and stochastic calculus typically widens in
signature’s favour as you go higher-frequency.
Sample size: ~1,150 windows is modest. Production studies use millions.
Single horizon family: we test 1- and 5-minute returns. Path signatures shine
more at intermediate horizons (seconds to minutes) for LOB tasks.
Naïve Python signature is ~50× slower than Signatory / iisignature; the
complexity scaling shown is shape-accurate but absolute times overstate cost.
Market data: IBM and SPY 1-minute bars (2026-06-09 to 2026-06-11), Perplexity Finance API.
Code: signature transform, lead-lag, GBM-MLE, OU-MLE, walk-forward Ridge — all in
analysis/benchmark.py.