Monofractal vs. multifractal

What the zoom test hides. The self-affine envelope test passes no matter what. Slide clustering from zero and the rescaled slice still looks like a price chart — but the local roughness underneath goes from flat to wild. That swing is the multifractal, and it's exactly what the envelope averages away.

Price path (cyan) over its local-volatility ribbon (amber) — the band is the slice

Zoom 8× time · 2.8× price Window slide across path Clustering λ λ = 0.50

The rescaled slice

Time ×k, price ×√k — the same self-affine law. This panel always looks like a plausible price chart, at every λ. The envelope test can't fail here.

Local roughness of this slice

Realized vol inside the window ÷ global. At λ=0 it hugs 1.0 for every window — one Hurst exponent, uniform roughness. Turn λ up and drag: it swings.

1.00×
range as you scan

How it's built: increments are Gaussian noise whose local variance is set by a lognormal multiplicative cascade — Mandelbrot's original multifractal object. λ is the cascade's intermittency; λ=0 collapses it to plain Brownian motion (Doc's demo). The variance measure is mean-normalized, so the global √time envelope matches Brownian either way — which is the point. Both processes pass the rescale-and-it-looks-the-same test. The difference lives entirely in how realized vol varies from window to window, and a single Hurst exponent can't produce that variation. That's the gap between "the chart looks fractal" and the fractal you're actually watching.