Energy QC clean AI-training-safe

US Crude Inventory Surprise / Momentum

How far this week's US commercial crude stocks sit above/below their trailing 4-week average (million barrels). The crude inventory surprise - +ve = unexpected build (bearish), -ve = draw (bullish) - pre-computed from the EIA weekly stocks series.

860
rows
1
zones
2010-2026
coverage
0.1 MB
download
Source
derived
Licence
Redistributable open data
Updates
Weekly
Data through
2026-07-17
Quality
QC clean · 0 failures
Format
Apache Parquet + dictionary

Safe to train on

Built only from a named, redistributable official source under a documented open licence - not scraped web data. No copyright grey zone, no personal data. Ships machine-readable Croissant metadata (ML Commons - loads in Hugging Face / Kaggle / Google), an AI training-licence manifest documenting source, licence and provenance for your model's data governance, and a machine-readable data dictionary (drop it into an agent / RAG prompt so the model knows every column) - all inspectable before you buy.

What's included

  • Weekly crude-stock momentum = stocks - trailing 4-week MA (MMbbl), 2010-present
  • Positive = unexpected build (bearish); negative = draw (bullish)
  • No look-ahead: MA excludes the current week
  • Source: U.S. EIA Weekly Petroleum Status Report (public domain, derived)

Schema

ColumnTypeDescriptionFilledDistinct
zone str Always US 100.0% 1
ts timestamp (UTC) Report week 100.0% 860
surprise_mbbl float Stocks - trailing 4-wk MA, million barrels 100.0% 843
unit str Unit 100.0% 1
res_min int Native resolution (weekly = 10080) 100.0% 1

Sample & preview

Every purchase ships as Apache Parquet with a data dictionary and the full QC report. A free sample (first rows + schema) is downloadable here - confirm fit before you buy. Source: derived (redistributable open data; attribution passes through - see our Licence).

Don't trust screenshots - drop the sample into your notebook right now.

import pandas as pd
df = pd.read_parquet("us-crude-inventory-momentum_sample.parquet")
df.info()   # typed columns, gap-aware, ready to join
⬇ Download free Parquet sample or CSV for Excel
Coverage: 1 zones

US