Skip to content

Reproducibility

Syed Ibrahim Omer edited this page Apr 13, 2026 · 1 revision

Reproducibility

This page documents what is (and isn’t) reproducible in indicators-cli, and how to get deterministic runs.

Deterministic profiling (recommended)

Use cached profiling mode:

indicators --profile --profile-mode cached

Cached mode uses a synthetic fixture frame (no network), so repeated runs are comparable.

Live mode variability

Anything that fetches Yahoo Finance data can vary due to:

  • upstream availability
  • market data revisions
  • network latency and transient errors

This affects:

  • normal mode runs
  • test runs (tests use real data)
  • profiling --profile-mode live

Artifact preservation

Profiling artifacts are designed to be reproducible and auditable:

  • scenario definitions (profiling/scenarios.json)
  • environment snapshot (Python/OS/Polars version)
  • cProfile dumps (profiling/results/raw/*.prof)
  • generated output files (profiling/results/raw/<run_id>/...)

See Profiling Artifacts.

Related pages:

Clone this wiki locally