Mt. Under the null ("nothing changed"), wealth is a
nonnegative martingale starting at 1 — by Ville's inequality,
P(sup Mt ≥ 1/α) ≤ α, so crossing the line 1/α is a
distribution-free, anytime-valid alarm. The naive bettor
is a single fixed betting density run from t=1 (Vovk's original construction) — it has to drag
its entire pre-shift history along, so it stays "diluted" for a while after the real change
happens. The optimal bettor mixes over a class of
betting densities and restarts a local martingale from every past candidate changepoint,
keeping only the best-weighted one — this is the paper's actual fix for that dilution problem.
At step n, with outcomes X₁…Xₙ ∈ {0,1}, the conformal p-value is
pₙ = (#{i ≤ n : Xᵢ < Xₙ} + λₙ·#{i ≤ n : Xᵢ = Xₙ}) / n, with
λₙ ~ U(0,1) an independent randomizer (exactly Vovk's definition). Under the
no-change null, p₁,…,pₙ are i.i.d. Uniform(0,1) for any fixed
distribution — that's what makes the detector distribution-free.
A betting density fθ(p) = θ·pθ−1 on [0,1] integrates to 1,
so fθ(pₙ) has mean 1 under the null — multiplying it in keeps the
wealth process a martingale. The naive bettor uses one fixed θ, multiplying bets from
t=1 onward: Sₜ = ∏ fθ(pⱼ). The optimal bettor mixes a small
class of θ's (a discrete approximation of the paper's continuous prior Π) and, critically,
restarts a fresh local product from every past index k, weighting each by a
summable sequence wₖ: Zₜ = maxk≤t wₖ · meanθ ∏j=k…t fθ(pⱼ).
Because Σwₖ ≤ 1, the combined process is still a valid nonnegative martingale/e-process,
so Ville's inequality applies at the same threshold 1/α — but it no longer has to drag a long,
uninformative pre-shift history through the product, which is exactly the "dilution" failure
mode the paper proves afflicts the original single-start conformal test martingale.
Pre-shift, both wealth processes wander near 1 (sometimes decaying — that's the expected, correct behavior of a null martingale, not a bug) and rarely cross 20; post-shift, the optimal process typically crosses first because it isn't paying off old pre-shift debt. Run the Monte Carlo panel to check this empirically at your chosen shift size — it's computed from fresh random draws every time, not cached.