CFTC Commitments of Traders Reports Scraper
Pricing
from $19.00 / 1,000 results
CFTC Commitments of Traders Reports Scraper
Collects CFTC Commitments of Traders reports filtered by commodity name and date range. Returns each report as a flat row with long, short, and spread positions per trader category.
Pricing
from $19.00 / 1,000 results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
6 days ago
Last modified
Categories
Share
CFTC Commitments of Traders Reports Scraper
Scrape CFTC Commitments of Traders reports by commodity and date range, up to a million per run. Each report row includes long, short, and spread positions by trader category. Export to CSV, JSON, Excel, or XML.
The CFTC publishes weekly Commitments of Traders reports as a collection of text files, making bulk historical analysis tedious. This Actor reads the public COT data directly, filters it by commodity name and date, and returns each report in a consistent flat schema. No manual downloads or custom parsers required.
| Who uses it | What they scrape CFTC for |
|---|---|
| Commodity traders | Monitor shifts in managed money long vs short positioning for a specific futures contract. |
| Macro analysts | Aggregate positioning data across metals, energy, and grains to gauge speculative sentiment. |
| Quant researchers | Build a clean time series of legacy and disaggregated COT data for backtesting signals. |
| Risk managers | Track concentration of positions by trader category to identify potential squeeze risks. |
What it does
This Actor collects CFTC Commitments of Traders reports filtered by commodity name and date range, and returns each one as a flat row.
- π Flat row output: Every report is returned as one row with long, short, and spread positions per trader category, ready for analysis.
- π Commodity filter: Supply a substring like GOLD, CRUDE OIL, or WHEAT to collect only the contracts you care about.
- π Date range control: Set an optional start date to pull only the most recent reports or a specific historical window.
- β‘ High throughput: Collect up to a million reports in a single run, limited only by the CFTC's public archive.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with CFTC data
π Track speculative positioning.
A commodity trader runs the Actor weekly for GOLD and CRUDE OIL to see whether managed money is adding to longs or shorts before placing a directional bet.
π Build a COT sentiment index.
A quant researcher pulls five years of disaggregated reports across a basket of currencies and grains to construct a normalized sentiment indicator for a systematic strategy.
β οΈ Monitor concentration risk.
A risk manager collects the latest reports for natural gas and corn to check if producer short positions are reaching extremes that historically preceded a short squeeze.
π Compare cross-asset flows.
A macro analyst scrapes metals, energy, and equity index contracts on the same schedule to overlay positioning changes with price action and macro events.
Why choose this scraper
| What you get | |
|---|---|
| No API key | Reads the CFTC's public report archive directly, no registration or authentication needed. |
| Consistent schema | Every report, whether legacy or disaggregated, lands in the same flat structure for easy joins. |
| Bulk history | Pull years of weekly positioning data in one run instead of downloading files one by one. |
| Flexible export | Save results as CSV, JSON, Excel, or XML for direct use in Python, R, or a dashboard. |
How it compares
Three other Apify actors also scrape CFTC COT data. This one focuses on a simple commodity-name filter and flat row output without requiring market codes or report-type selection.
| Feature | ParseForge | CFTC Commitments of Traders Reports Scraper | CFTC Commitments of Traders Scraper | CFTC COT Report Scraper - Futures Positioning Data |
|---|---|---|---|---|
| Commodity name substring filter | Yes | Not listed | Not listed | Yes |
| Date range filter | Yes | Not listed | Not listed | Yes |
| Legacy report format | Yes | Not listed | Not listed | Yes |
| Disaggregated report format | Yes | Not listed | Not listed | Yes |
| Financial futures report format | Yes | Not listed | Not listed | Yes |
| Market code filter | Not listed | Not listed | Not listed | Yes |
Configure the run
Drive the Actor with a commodity name substring and an optional start date. Filters run as each report is read so only matching records reach your dataset. The Input tab lists every parameter.
A first run with the defaults:
{"maxItems": 10,"commodityName": "GOLD"}
A larger pull:
{"maxItems": 200,"commodityName": "GOLD"}
Pricing
Pay-per-result: $0.021 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $2.10 |
| 1,000 results | $21.00 |
| 10,000 results | $210.00 |
New Apify accounts start with $5 in free credit.
Free users
Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the CFTC Commitments of Traders Reports Scraper.
- Set your inputs and any filters, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to CFTC through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/cftc-cot-reports-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
Why am I getting no results?
Check your commodityName spelling. The filter is a substring match, so GOLD will find GOLD but GLD will not. Also verify that your startDate is not set after the most recent report date.
The run is taking a long time.
Lower the maxItems value or set a startDate to limit the historical range. The CFTC archive is large, and pulling every report ever published will take time.
Some fields are empty in my output.
Not every trader category appears in every commodity report. Empty fields mean that category had no positions reported for that contract and week.
I got an error about the date format.
The startDate field expects YYYY-MM-DD format, for example 2024-01-15. Make sure you are using hyphens and two-digit month and day values.
The commodity I want is not showing up.
Try a shorter substring. For example, use CRUDE instead of CRUDE OIL, LIGHT. The CFTC contract names can be long, and a broader match may catch it.
FAQ
| Question | Answer |
|---|---|
| What is the CFTC Commitments of Traders report? | It is a weekly publication from the U.S. Commodity Futures Trading Commission that breaks down open interest in futures and options markets by trader category, such as producers, swap dealers, managed money, and other reportables. |
| Which report types does this Actor cover? | It reads the public COT data files, which include the legacy, disaggregated, and financial futures report formats. Each is returned in a unified flat schema. |
| Can I filter by a specific commodity? | Yes. Use the commodityName input with a substring like GOLD, WHEAT, or NATURAL GAS. The filter is case-insensitive and matches any part of the contract name. |
| How far back can I get data? | The CFTC archive goes back many years. You can set a startDate to pull only recent reports or leave it empty to collect the full available history, up to the maxItems limit you set. |
| What trader categories are included? | The reports include categories such as producer/merchant, swap dealers, managed money, and other reportables, with long, short, and spread positions for each. |
| Does this include options data? | The COT reports cover futures and options combined where the CFTC publishes them. The Actor returns whatever the public file contains for the selected commodity. |
| How often is the data updated? | The CFTC releases new COT reports every Friday afternoon U.S. Eastern Time, reflecting positions as of the prior Tuesday. You can schedule the Actor to run weekly. |
| Can I get data for multiple commodities in one run? | The commodityName filter accepts one substring per run. To collect several commodities, run the Actor multiple times with different inputs or leave the filter empty to get everything. |
| What output formats are supported? | You can export the dataset as CSV, JSON, Excel, or XML from the Apify platform, or access it via the API for direct integration. |
| Do I need a CFTC account or API key? | No. The Actor reads the publicly available report files from the CFTC website, so no registration or credentials are required. |
Related actors
Browse the full ParseForge collection for more scrapers.
π Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
β οΈ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by U.S. Commodity Futures Trading Commission. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
