ice_stocks: add backfill extractor for historical daily stocks

The ICE API at /marketdata/api/reports/293/results stores all historical
daily XLS reports date-descending. Previously the extractor only fetched
the latest. New extract_ice_backfill entry point pages through the API
and downloads all matching 'Daily Warehouse Stocks' reports.

- ice_api.py: add find_all_reports() alongside find_latest_report()
- execute.py: add extract_ice_stocks_backfill(max_pages=3) — default
  covers ~6 months; max_pages=20 fetches ~3 years of history
- pyproject.toml: register extract_ice_backfill entry point

Ran backfill: 131 files, 2025-08-15 → 2026-02-20

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Deeman
2026-02-22 01:35:57 +01:00
parent 090fcb4fdb
commit c92e5a8e07
3 changed files with 80 additions and 1 deletions

View File

@@ -13,6 +13,7 @@ extract_ice = "ice_stocks.execute:extract_ice_stocks"
extract_ice_aging = "ice_stocks.execute:extract_ice_aging"
extract_ice_historical = "ice_stocks.execute:extract_ice_historical"
extract_ice_all = "ice_stocks.execute:extract_ice_all"
extract_ice_backfill = "ice_stocks.execute:extract_ice_stocks_backfill"
[build-system]
requires = ["hatchling"]