> ## Documentation Index
> Fetch the complete documentation index at: https://docs.quantoraresearch.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Positioning

> CFTC futures positioning and percentile rankings.

Commitments of Traders data from the CFTC, with percentile rankings computed against
each series' own history.

## Calling it

<CodeGroup>
  ```bash cURL theme={"dark"}
  curl -H "x-api-key: $QUANTORA_API_KEY" \
    "https://api.financialdatapi.com/observations/latest?indicator_id=cftc_net_position"
  ```

  ```python Python theme={"dark"}
  positioning = requests.get(
      "https://api.financialdatapi.com/observations/latest",
      params={"indicator_id": "cftc_net_position"},
      headers={"x-api-key": KEY},
  ).json()["data"]
  ```
</CodeGroup>

## What is served

| Measure         | Notes                            |
| --------------- | -------------------------------- |
| Net position    | By trader category, in contracts |
| Percentile rank | Against the series' own history  |
| Change          | Week on week                     |

Percentile ranks are `financialdatapi_derived`. A raw net position means little without
knowing whether it is extreme by its own standards, which is what the rank supplies.

## Timing

<Warning>
  COT data is **published Friday for the preceding Tuesday**. Every reading is at least
  three days stale on arrival, and that lag is structural rather than a freshness problem.

  `periodEnd` is the Tuesday. `releaseDate` is the Friday. Backtests must use
  `releaseDate`, or the model trades on positioning nobody could have seen.
</Warning>

US government shutdowns and holidays delay releases, occasionally by weeks, and the
CFTC then publishes catch up reports covering several dates at once.
