Honesty doctrine. Every candidate anomaly is an artifact until proven otherwise; in-sample results are never findings; past statistical regularity does not imply future returns. This is research on statistical properties of market data — not investment advice, not a trading system.

Research / research/notes/microstructure_artifacts.md

Phase 1 notes — microstructure noise & data artifacts

reviewed

Phase 1 notes — microstructure noise & data artifacts · created Tue Aug 11 2026 20:00:00 GMT-0400 (heure avancée de l’Est) · Simon-Pierre Boucher

Market microstructure & artifacts (§4.3 — feeds the taxonomy)#

Phase 1 literature notes. Citations verified via OpenAlex, accessed 2026-08-12. Cross-references: research/artifact_taxonomy.md (T1–T7), expB measured magnitudes.

1. Bid-ask bounce (taxonomy T1)#

  • Roll, R. (1984). A Simple Implicit Measure of the Effective Bid-Ask Spread in an Efficient Market. Journal of Finance 39(4), 1127–1139. https://doi.org/10.1111/j.1540-6261.1984.tb03897.x — spread = 2√(−autocov₁). Implemented in validation/artifacts.py; expB found it undefined (positive autocov) for mega-caps at 1min — a known Roll limitation, not an anomaly.
  • Blume, M. E. & Stambaugh, R. F. (1983). Biases in computed returns: an application to the size effect. Journal of Financial Economics 12(3), 387–404. https://doi.org/10.1016/0304-405x(83)90056-9 — bounce in closing prices inflates equal-weighted portfolio returns; roughly halved the size effect. Warning: portfolio-level statistics inherit ticker-level bounce.

2. Stale prices & non-synchronicity (T2, T3)#

  • Fisher, L. (1966). Some New Stock-Market Indexes. Journal of Business 39(S1), 191–225. https://doi.org/10.1086/294848 — stale constituent prices induce spurious index autocorrelation ("Fisher effect"). Our SPX-lags-SPY measurement (+0.065 at 1min) is this, live.
  • Scholes & Williams (1977), Epps (1979), Lo & MacKinlay (1990) — see mean-reversion/lead-lag notes; the artifact-vs-anomaly frontier for Q2.

3. Microstructure noise & realized measures#

  • Zhang, L., Mykland, P. A. & Aït-Sahalia, Y. (2005). A Tale of Two Time Scales. JASA 100(472), 1394–1411. https://doi.org/10.1198/016214505000000169 — realized variance from finest-scale returns is dominated by noise; two-scales estimator fixes it. For us: 1min realized-vol features must use subsampling or noise correction.
  • Aït-Sahalia, Y., Mykland, P. A. & Zhang, L. (2005). How Often to Sample a Continuous-Time Process in the Presence of Market Microstructure Noise. Review of Financial Studies 18(2), 351–416. https://doi.org/10.1093/rfs/hhi016 — naive answer: sample sparsely (5min); better: model the noise.
  • Hansen, P. R. & Lunde, A. (2006). Realized Variance and Market Microstructure Noise. JBES 24(2), 127–161. https://doi.org/10.1198/073500106000000071 — noise is time-varying and correlated with the efficient price; iid-noise corrections are themselves biased.
  • Bandi, F. M. & Russell, J. R. (2006). Separating microstructure noise from volatility. Journal of Financial Economics 79(3), 655–692. https://doi.org/10.1016/j.jfineco.2005.01.005 — moment-based separation of noise vs integrated variance.
  • Bandi, F. M. & Russell, J. R. (2008). Microstructure Noise, Realized Variance, and Optimal Sampling. Review of Economic Studies 75(2), 339–369. https://doi.org/10.1111/j.1467-937x.2008.00474.x — MSE-optimal sampling frequency.

4. What our dataset adds/changes#

  1. We have bars, not quotes/trades: all noise corrections must work from 1min OHLCV. Roll-type estimators (from closes) and high-low estimators (see transaction-costs notes) are the available instruments.
  2. expA's dataset-specific artifacts (auction-close mismatch T4, rolling adjustment anchor T5, volume-convention mismatch T6, session semantics T7) are NOT in this classic literature — they are vendor-layer artifacts and belong to our taxonomy as original documentation.
  3. Hansen–Lunde's endogenous-noise warning applies directly to expC: bounce-null subtraction assumes independence between noise and efficient price; report sensitivity.

5. Implications#

  • Realized-vol-based hypotheses (Q1/Q3 conditioning variables) must use 5min-subsampled or two-scales estimators, never raw 1min RV.
  • Any portfolio-level result needs the Blume–Stambaugh check: recompute with bounce-robust prices (e.g., mid-of-day anchors) before believing it.
  • Index-based lead-lag (SPX family) is presumptively Fisher-effect until proven otherwise.