{
  "project": "Net GEX All Expirations (gex)",
  "generated_utc": "2026-07-28 17:04 UTC",
  "audit_page": "https://www.allofthesewords.com/gex_audit.html",
  "license_note": "Source published for public audit. No API keys required (Cboe delayed data, no key).",
  "files": [
    {
      "file": "gex/__init__.py",
      "published_as": "gex_src/gex___init__.py.txt",
      "role": "Package marker + version",
      "bytes": 539,
      "sha256": "77dec106cbb25afe07ed35af6f99e49a86f9f155b267e266e4b0227e9f04ca89",
      "mirror_matches_source": true
    },
    {
      "file": "gex/config.py",
      "published_as": "gex_src/config.py.txt",
      "role": "Dataclass config: colors, defaults, URLs, schedule",
      "bytes": 7900,
      "sha256": "708c9ff16be65be4493bcc8e3b438bc8395e4f7f60b85310cfd8540c4af04365",
      "mirror_matches_source": true
    },
    {
      "file": "gex/fetch.py",
      "published_as": "gex_src/fetch.py.txt",
      "role": "Cboe delayed-quotes fetch, retry/backoff, gzip cache, OSI symbol parser",
      "bytes": 9290,
      "sha256": "28491686e62b0adf6dd8025b523be3e43a680087c6d2aefe3c84ea9d6ecf33ee",
      "mirror_matches_source": true
    },
    {
      "file": "gex/greeks.py",
      "published_as": "gex_src/greeks.py.txt",
      "role": "Black-Scholes gamma/delta (scalar + vectorised)",
      "bytes": 2306,
      "sha256": "0b00785c0b692186809b889534aa965c8a82944b05f6d4e177342c14195441e2",
      "mirror_matches_source": true
    },
    {
      "file": "gex/compute.py",
      "published_as": "gex_src/compute.py.txt",
      "role": "Filtering, GEX/DEX aggregation, profiles, HVL, key levels",
      "bytes": 73424,
      "sha256": "24a6f784d86a9342364dc6ec227f7743522ae235426576a92eb81645ace13289",
      "mirror_matches_source": true
    },
    {
      "file": "gex/plot.py",
      "published_as": "gex_src/plot.py.txt",
      "role": "matplotlib chart (horizontal bars, profiles, key levels)",
      "bytes": 25391,
      "sha256": "2e75dbc992aa5ab956855d4c009ba435c51eea95d4474fc538a9548fe0b04abe",
      "mirror_matches_source": true
    },
    {
      "file": "gex/snapshot.py",
      "published_as": "gex_src/snapshot.py.txt",
      "role": "CLI entrypoint + schedule guard",
      "bytes": 63352,
      "sha256": "74557d602e9b0d21c1d492dfc3f4d8423482572829938c6c3d3b4228260e7fd8",
      "mirror_matches_source": true
    },
    {
      "file": "tests/test_compute.py",
      "published_as": "gex_src/test_compute.py.txt",
      "role": "Pytest suite (75 tests)",
      "bytes": 162521,
      "sha256": "62b23f03774a71f12d2073db74fd3e0290f54b70c602ec98f3805e8715787505",
      "mirror_matches_source": true
    },
    {
      "file": "requirements.txt",
      "published_as": "gex_src/requirements.txt",
      "role": "Pinned dependency list",
      "bytes": 131,
      "sha256": "baa0665820e95a474b7b9a8ebd82fb3152a133bc6eeaabc50b0a1058e4c76d84",
      "mirror_matches_source": true
    },
    {
      "file": "README.md",
      "published_as": "gex_src/README.md",
      "role": "User-facing documentation",
      "bytes": 19761,
      "sha256": "946e7b38e4291276f586e504765ecfe368e6b0920b7f01f78a417cd602a3b845",
      "mirror_matches_source": true
    }
  ]
}