# CFTC Commitments of Traders Reports Scraper (`neuton/cftc-cot-reports-scraper`) Actor

Extract official CFTC Commitments of Traders rows for commodities positioning, macro research, trading signals, and market intelligence.

- **URL**: https://apify.com/neuton/cftc-cot-reports-scraper.md
- **Developed by:** [Ashwin Prasad](https://apify.com/neuton) (community)
- **Categories:** Business, AI, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-usage

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## CFTC Commitments of Traders Reports Scraper

Extract official CFTC Commitments of Traders data for commodities positioning, macro research, trading signals, hedge-fund research, and market intelligence pipelines.

### Why this actor

COT reports are useful to commodity analysts, macro researchers, hedge funds, trading teams, data vendors, and market-intelligence agents because they reveal weekly futures positioning by participant type. This actor converts official CFTC data into rows that can be filtered, joined, scheduled, and monitored without manually downloading reports.

SEO keywords covered by this Store page include CFTC COT scraper, Commitments of Traders API, futures positioning data, managed money positions, commodity trading signals, COT report dataset, macro research data, and hedge fund market intelligence.

### Output

- Report date, market, exchange, contract, commodity, and commodity group
- Open interest, managed money long and short positions
- Producer merchant, swap dealer, and nonreportable position fields
- Source URL, raw CFTC row, and scrape timestamp

### Use cases

- Monitor futures market positioning by commodity
- Build commodities research and macro dashboards
- Enrich investment research with official weekly COT data
- Feed agent workflows that watch market positioning changes
- Trigger alerts when watched commodities or participant groups shift materially

### Example input

```json
{
  "marketKeyword": "WHEAT",
  "commodityGroup": "Agriculture",
  "startDate": "2024-01-01",
  "maxResults": 100
}
```

### Agent and automation workflows

Schedule weekly after CFTC updates, send rows to a warehouse, spreadsheet, Slack, Make, n8n, or research database, and let agents summarize positioning changes, long-short shifts, open-interest movement, and market-specific trends.

### Responsible use

This actor extracts public CFTC data. Use it for research, analytics, and monitoring. Trading and investment decisions require independent analysis; do not treat automated summaries as financial advice.

### Pricing

Recommended launch pricing: $3 per 1,000 COT rows, increasing toward $5-$6 per 1,000 after finance usage appears.

# Actor input Schema

## `marketSearch` (type: `string`):

Optional market or exchange keyword, for example WHEAT or CHICAGO.

## `commodityGroup` (type: `string`):

Optional commodity group filter, such as AGRICULTURE, ENERGY, or FINANCIAL INSTRUMENTS.

## `startDate` (type: `string`):

Earliest report date in YYYY-MM-DD format.

## `maxResults` (type: `integer`):

Maximum COT rows to return.

## Actor input object example

```json
{
  "marketSearch": "WHEAT",
  "commodityGroup": "",
  "startDate": "2026-01-01",
  "maxResults": 100
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("neuton/cftc-cot-reports-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("neuton/cftc-cot-reports-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call neuton/cftc-cot-reports-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=neuton/cftc-cot-reports-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/XsyqV9gwh8BfgpXO1/builds/hyuQQ8e92hUjHByuF/openapi.json
