Hugging Face - global_aluminum_price_daily dataset
Datadory delivers hugging face global aluminum price daily dataset data: twelve years of world aluminum OHLC prices in US dollars per tonne, 6,076 rows across a wide mart table and a long observations table, keyed on Gregorian and Persian calendars alike.
What is the Hugging Face global_aluminum_price_daily dataset?
One row per trading day, four prices per row, one world benchmark. The Hugging Face - global_aluminum_price_daily dataset is a daily time series of world aluminum prices quoted in US dollars per tonne, organized as two subsets that describe the same series two ways: mart, a wide OHLC table keyed simultaneously by Gregorian and Persian dates, and observations, a long-format table where every row carries its own indicator identity, frequency flag, scope code, unit and compile-time vintage stamp. Each subset holds a single train split of about 3,038 rows — 6,076 in total — running from 6 May 2014 to 28 July 2026.
In Datadory's catalog of 1,744 datasets across 159 viable industries, this record scores 7/10 for quality and sits among 13 cataloged aluminum datasets. Daily granularity is genuinely scarce: exactly 3 of the 1,744 records measure out as true daily series, and 2 of those 3 live in aluminum. It is also one of 48 records in the catalog published under the Hugging Face banner, and the only aluminum one that ships as a typed-column OHLC table carrying our machine-learning tag.
Get a sample of this dataset
What do real rows from the global_aluminum_price_daily dataset look like?
Captured during the August 2026 review. The first two rows are the opening pair of the mart subset — the oldest two trading days in the window — and the third is the same first day rendered in the observations subset:
date_greg period open high low close
2014-05-06 1393-02-16 2182.75 2205.75 2165.00 2172.75
2014-05-07 1393-02-17 2152.25 2152.25 2146.00 2149.00
indicator_id period freq location_code value unit vintage source_id
commodity_aluminum 1393-02-16 D WLD 2172.75 usd_per_ton 1405-04 yahooThree things in these rows tell you how the whole dataset behaves. First, every day is dated twice: 2014-05-06 and 1393-02-16 are the same observation, so neither calendar's reporting cycle forces conversion logic on your side. Second, the vintage stamp (1405-04) trails the observation period by twelve Persian years, which identifies it as a compile-time marker on the row rather than a trade date. Third, the breakdown column nests the day's high and low as JSON, keeping the long format lossless next to the wide one. Both shapes quote the same thing: dollars per tonne, world level.
What fields does the global_aluminum_price_daily dataset include?
Ten fields carry the verified dictionary — five price-and-date columns on the wide table, five metadata columns on the long one — plus two constant identifiers visible on every observations row. Nothing in the dictionary is nullable in spirit: each field exists to make a row self-describing, which is why the unit travels inside the row instead of living in a README.
The practical grouping: build charts off date_greg, period, open, high, low and close; build pipelines off value, location_code, freq and source_id, joining on dataset_id/indicator_id when you need partition keys.
Which geography, dates, and granularity does the series cover?
Coverage is narrow, deep and double-keyed:
- Geography: Global — a single world-level series; the scope code reads WLD on every long-format row.
- Temporal: 6 May 2014 through 28 July 2026, keyed as both Gregorian dates and Persian (Jalali) periods from 1393-02-16 to 1405-05-06.
- Granularity: Daily — one observation per trading day, flagged
Din the frequency column. - Volume: About 3,038 rows per subset, 6,076 overall, held as columnar Parquet files of roughly 88 kB (mart) and 65 kB (observations).
- Unit discipline: Prices in US dollars per tonne, declared in-row through the
unitfield (usd_per_ton) rather than assumed from context.
How is this dataset delivered?
API, files, or your warehouse. Daily, weekly, or hourly.
The series lands however your stack wants it — served from an endpoint, dropped into storage, or synced straight into your database. Name the fields and the cadence when you request the sample; the sample ships first either way.
Who uses this daily aluminum OHLC dataset, and for what?
A twelve-year daily OHLC table earns very different livings depending on who is holding it:
- Investors and quants — genuine OHLC beats a close-only feed for backtest features: overnight gaps from open versus prior close, daily ranges convertible straight into volatility estimates, and candle-level pattern work that a single settlement number cannot support.
- Data scientists and ML engineers — typed float columns, a small enough footprint to iterate on, and a long-format twin ready for group-aware cross-validation and feature-store ingestion with compile order preserved.
- Market researchers — a world dollar-per-tonne reference for cost pass-through narratives, with the range columns supplying uncertainty bands around any single-day callout.
- Procurement and commodity teams — a daily reference curve for contract escalators and supplier-quote sanity checks, where knowing the day's spread matters as much as the close.
- Journalists and academics — citable daily levels whose scope (
WLD) and unit (usd_per_ton) travel inside every row, so no caption argues with the chart. - Developers and builders — two shapes, one series: the wide table for rendering, the long one for ingestion, with zero stitching between them.
Why does one aluminum series ship in two shapes and two calendars?
Most commodity price sets pick a shape and make you live with it. This one refuses to choose. The wide table is what charting libraries want: six typed columns, one row per day, straight into pandas or Polars. The long table is what warehouses want: identifier, period, frequency, scope, value, unit, breakdown — each row self-describing, so ingestion needs no schema interview. Because every row is dated twice, a team reporting on the Persian fiscal calendar and a team reporting on the Gregorian one can query the identical series natively.
That duality is what earns the record's machine-learning tag in our catalog. Feature engineering happens on the wide table; grouped validation and incremental loading happen on the long one, with the vintage column recording compile order. One series, two idioms, no glue code — which is rarer in commodity data than it should be.
Notes and related datasets
Provenance note — the publisher is Farmaanaa on Hugging Face, and every observations row carries the upstream market-data identifier yahoo in its source_id column. The contract definition behind the world series is the publisher's, not an exchange settlement feed.
Scope note — this is deliberately one world-level series. For country splits, USA Trade Online covers bilateral US aluminum trade by HS code and partner, and the Indian Bureau of Mines covers India's bauxite and aluminium statistics.
Card rail note — this page sits in Datadory's aluminum card rail beside 12 sibling records. The monthly IndexMundi series is the natural baseline pairing, SMM's China panel adds the Chinese spot and futures basis, Trading Economics contributes a longer rolling quote history, and the USGS Mineral Yearbook chapters supply production-side context. Three cadences, one industry, no duplicated schema — ask for whichever combination your model needs.
Field dictionary — Hugging Face global_aluminum_price_daily
| Field | Type | Definition | Example |
|---|---|---|---|
| date_greg | date | Gregorian calendar date of the observation (mart subset). | 2014-05-06 |
| period | string | Observation period in Persian (Jalali) calendar notation; the primary period key on the observations subset. | 1393-02-16 |
| open | number | Daily opening aluminum price in US dollars per tonne. | 2182.75 |
| high | number | Daily high aluminum price in US dollars per tonne; also nested inside the observations subset's breakdown JSON. | 2205.75 |
| low | number | Daily low aluminum price in US dollars per tonne; also nested inside the observations subset's breakdown JSON. | 2165.00 |
| close | number | Daily closing aluminum price in US dollars per tonne. | 2172.75 |
| value | number | Observations subset: the day's price value in US dollars per tonne, with the unit declared in-row. | 2172.75 |
| location_code | string | Observations subset: geographic scope of the observation — WLD for the world-level series. | WLD |
| freq | string | Observations subset: observation frequency, D for daily. | D |
| source_id | string | Observations subset: upstream market-data identifier carried on every row. | yahoo |
| dataset_id / indicator_id | string | Constant identifiers on observations-subset rows, both reading commodity_aluminum — usable as join or partition keys. | commodity_aluminum |
Questions buyers ask
How far back does the daily aluminum price history go?
The window runs from 6 May 2014 through 28 July 2026 — roughly twelve years of trading days, about 3,038 rows per subset and 6,076 across both. Every row is dated twice, once Gregorian (2014-05-06) and once Persian (1393-02-16), so the full span is native to either calendar without conversion.
What does an OHLC aluminum series give you that a close-only feed does not?
Four prices per day instead of one. Open against the prior close exposes overnight gaps, high and low define a daily range you can turn directly into volatility features, and close anchors the daily mark. Close-only series force you to infer all of that; here each component is its own typed column.
Why does the dataset carry Persian calendar dates?
Every observation is keyed in Jalali notation alongside its Gregorian date. The mart table keeps a period column next to date_greg, and the observations subset uses the Persian period as its primary key, running 1393-02-16 to 1405-05-06. Teams reporting on a Persian fiscal calendar get native joins with no conversion layer.
What is the difference between the mart and observations subsets?
Shape, not substance. Mart is wide: one row per day with open, high, low and close columns. Observations is long: one self-describing row carrying indicator identity, frequency, world scope code, value, unit, a JSON breakdown of the day's high and low, and a compile-time vintage stamp. Same series, two idioms.
Is a single world-level series limiting if I need country detail?
For national splits, yes — the scope code reads WLD on every row by design. Pair it with country-level companions in the same industry: USA Trade Online for bilateral US aluminum trade, the Indian Bureau of Mines for Indian bauxite and aluminium statistics, or the USGS yearbook chapters for world production by country.
How big is the dataset, practically?
Small enough to reason about whole. Two columnar Parquet files, roughly 88 kB and 65 kB, hold all 6,076 rows — the complete twelve-year history loads into a pandas or Polars session without chunking. Iteration speed rather than scale is the operating constraint, which suits prototyping, teaching and quick feature tests.
See the rows before you pay anything.
Name this dataset and we send real records from it — scoped to the fields you asked for.