\section{The Noise Harness Methodology} \label{sec:noise-harness} % TODO content notes: % - Describe the GBM null-data generator: dS = mu*S*dt + sigma*S*dW, fixed % seed, parameters (mu, sigma, N steps, start price) documented in % experiments/README.md and reproduced in 01_generate_gbm.py. % - Key property to state explicitly: this series has zero exploitable % structure by construction — no autocorrelation edge, no regime, nothing % a real strategy could legitimately learn. % - Define the test: run the same kernel/backtester pipeline against N % independent GBM seeds. A backtester free of lookahead bias should % produce a Sharpe distribution centered at ~0 across seeds. A backtester % with a leak will produce a systematically positive Sharpe regardless of % seed, because the "edge" comes from the mechanics, not the data. % - State this as a pass/fail CI gate: mean Sharpe over >= 30 seeds must % fall within a pre-registered null band (e.g. -0.3 to 0.3); anything % outside that band fails the build. This is what % .github/workflows/noise-harness.yml is wired to enforce once % experiments/05_noise_harness.py exists.