3:2:1 crack spread (refining margin)
API · /commodityspreads-api
Commodity Spreads API
The spreads and ratios that commodity traders actually trade, not just the raw prices, computed live from the underlying futures — no key, nothing stored. A single commodity price means little on its own; the money is in the relationships. The crack endpoint returns the 3:2:1 crack spread — the refining margin from turning three barrels of crude oil into two of gasoline and one of heating oil, the number that drives refiner profits and gasoline prices. The crush endpoint returns the soybean crush spread — the processing margin from crushing soybeans into meal and oil. The ratios endpoint returns the classic macro ratios: gold/silver (the "fear versus growth" gauge), gold/oil (real-asset value), oil/natural-gas (the energy ratio) and gold/copper. Each comes with the component futures prices so you can see exactly how it is built. This is the commodity-spread / inter-commodity cut — distinct from the single-commodity price feed, the precious-metals spot API and the FX APIs in the catalogue. It gives you the margin and the ratio, the things that are actually positioned. All endpoints are parameter-less and return the current values with their components; the crack spread is in USD per barrel and the crush in USD per bushel.
API health
healthy- Uptime
- 100.00%
- Server probes · 24h
- Avg latency
- 147 ms
- Server probes · 24h
- Subscribers
- 4,027
- active
- Total calls
- 0
- last 7 days
Pricing
Pick a tier — billed monthly, cancel anytime.
Free
Free
- 600 calls / month
- 2 requests / second
- Hard cap (429 above quota, no overage)
- 600 calls/month
- 2 req/sec
- Crack + crush + ratios
- No credit card
Starter
€9.66 /month
- 15,800 calls / month
- 6 requests / second
- Hard cap (429 above quota, no overage)
- 15,800 calls/month
- 6 req/sec
- Refining & crush margins
- Email support
Pro
€31.66 /month
- 84,000 calls / month
- 16 requests / second
- Hard cap (429 above quota, no overage)
- 84,000 calls/month
- 16 req/sec
- Commodity-spread dashboards
- Priority support
Business
€74.60 /month
- 440,000 calls / month
- 40 requests / second
- Hard cap (429 above quota, no overage)
- 440,000 calls/month
- 40 req/sec
- Commodity-desk scale
- Dedicated SLA
Built by
Related APIs
Other APIs with overlapping tags.
Managed Money Positioning API
Where the hedge funds are positioned in commodity futures, read live from the CFTC Disaggregated Commitments-of-Traders report — no key. The legacy COT report lumps every speculator into one "non-commercial" bucket; the Disaggregated report, introduced in 2009 precisely because that was too crude, splits the market into four real groups — Managed Money (the trend-following hedge funds and CTAs, the speculative flow everyone watches), Producer/Merchant (the physical hedgers who make and use the commodity), Swap Dealers (the banks intermediating index and OTC exposure) and Other Reportables. The positioning endpoint returns, for a commodity, the full four-group breakdown — each group's long, short and net contracts, its share of open interest, the number of traders and the week-over-week change — with a managed-money bias read: Managed Money net long in gold of +112,179 contracts (34% of open interest, 74 funds long) tells you the funds are crowded long. The screener endpoint ranks a curated set of 20 metals, energy, grain, soft and livestock futures by where Managed Money is positioned (net as a share of open interest), surfacing the most crowded long and short hedge-fund bets. This is the disaggregated hedge-fund-positioning cut — distinct from the legacy raw COT-report feed, the normalised COT-Index, and the price and open-interest APIs. It is who the smart speculative money is, by the report traders actually read.
api.oanor.com/managedmoney-api
Commodity Movers & Performance API
What is moving across the commodity complex right now, computed live from Yahoo Finance futures (no key, nothing stored). Just as stock, FX and crypto traders watch the day's biggest gainers and losers, commodity traders want the same board for energy, metals, grains, softs and livestock. For every commodity this measures the change on the day, the week and the month, the day's high and low, the 52-week high and low and where the price sits in that 52-week range. The movers endpoint returns the whole complex ranked by daily change — the top gainers and losers — plus the weekly and monthly leaders, and can be filtered to one sector. The commodity endpoint returns one commodity's full performance card. The commodities endpoint lists what is covered. The commodity movers / performance-board cut — distinct from the commodity-momentum API (which ranks by a blended multi-month momentum factor and trend regime), the commodity-price feed, the commodity-spreads and the seasonality APIs. It answers what moved today, across the complex.
api.oanor.com/commoditymovers-api
Commodity Seasonality API
The calendar patterns commodity traders position around, computed live from ~10 years of Yahoo Finance monthly futures data (no key, nothing stored). Commodities are the most seasonal market there is: natural gas tends to rally into winter heating demand, gasoline into the summer driving season, grains around the planting and harvest calendar. This measures it directly — for each commodity it takes a decade of monthly returns, groups them by calendar month, and returns the average return in each of the twelve months, the share of years that month was positive (the win rate), and the historically strongest and weakest months. The seasonality endpoint returns one commodity's full 12-month seasonal profile plus the current month's historical bias. The month endpoint flips it around: for a given calendar month it ranks every commodity by its historical average return, so you can see what is seasonally bullish or bearish right now. The commodities endpoint lists what is covered. The commodity-seasonality / calendar-pattern cut — distinct from the FX-seasonality API (currencies), the commodity-price feed, the commodity-spreads and the commodity-momentum APIs. It answers what a commodity usually does this month, not what it costs today.
api.oanor.com/commodityseasonality-api
Commodities Momentum & Relative-Strength API
Which corner of the commodity complex is leading and which is lagging, ranked by trailing momentum, computed live from Yahoo Finance futures (no key, nothing stored). A price tells you where a commodity is; momentum tells you where the money is flowing. This scores every major commodity — crude, Brent, natural gas, gasoline and heating oil in energy; gold, silver, copper, platinum and palladium in metals; corn, wheat and soybeans in grains; coffee, sugar, cocoa, cotton and orange juice in softs; live cattle and lean hogs in livestock — by its return over five horizons (1 week, 1 month, 3 months, 6 months and a ~1-year proxy), blends them into a single momentum score and ranks the whole complex into leaders and laggards. The screener endpoint returns that ranked table with a relative-strength rank and trend regime for each. The momentum endpoint drills into one commodity: its multi-horizon returns, where it sits versus its 50- and 200-day averages, and a trend label. The commodities endpoint lists what is covered. The cross-commodity momentum / relative-strength factor cut — distinct from the commodity-price feed (front-month prices), the commodity-spreads API (crack/crush/ratios) and the precious-metals spot API. It answers what is leading the complex, not what one thing costs.
api.oanor.com/commoditymomentum-api
Frequently asked questions
Quick answers about pricing, quotas, and integration.
How do I get an API key for Commodity Spreads API?
What's the rate limit for Commodity Spreads API?
How much does Commodity Spreads API cost?
Can I cancel my subscription anytime?
Is Commodity Spreads API GDPR-compliant?
Pick an endpoint from the list on the left to see its details and try it.
Code snippets
Sign up to get an API key, then call any path under your slug.
curl https://api.oanor.com/commodityspreads-api/SOME_PATH \
-H "x-oanor-key: oanor_test_..."
const res = await fetch("https://api.oanor.com/commodityspreads-api/SOME_PATH", {
headers: { "x-oanor-key": "oanor_test_..." }
});
const data = await res.json();
$ch = curl_init("https://api.oanor.com/commodityspreads-api/SOME_PATH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
$response = curl_exec($ch);
import requests
r = requests.get(
"https://api.oanor.com/commodityspreads-api/SOME_PATH",
headers={"x-oanor-key": "oanor_test_..."},
)
print(r.json())
Ratings
Sign in to rate.
No reviews yet.
Discussion
Ask questions, share usage tips, get answers from the provider and other developers. Public — anyone can read.
Sign in to start a thread or reply.
Sign inNew thread
·
-
Provider answer
🔒 This thread is locked — no new replies.
-
·
- No threads yet — start the discussion.
Support
Private 1:1 support with the provider — billing questions, integration issues, account problems. Only you and the provider team can see these threads.
Sign in to open a support ticket.
Sign inOpen new ticket
Describe what you need help with. The provider team gets an email and replies on the ticket page.
-
·
Urgent - No tickets yet for this API.