שימוש בפוזיציות סוחרים של CFTC כמאפייני סנטימנט בחוזים עתידיים
סיכום
מדריך זה מציג את דוחות המחויבויות של סוחרים של CFTC, הזמינים לציבור, כמקור לנתוני פוזיציות שבועיים בחוזים עתידיים. הוא מבחין בין דוח Traders in Financial Futures, המסווג משתתפים כגון דילרים, מנהלי נכסים וסוחרים ממונפים, לבין הדוח המפורק המשמש לחוזים עתידיים על סחורות, ובו קטגוריות כגון גורמים מסחריים, כספים מנוהלים ודילרים בעסקאות החלף. קובצי מוצר כוללים תאריכי דוח, פוזיציות פתוחות ופוזיציות לונג, שורט ונטו של סוחרים. החומר מציע ניתוח פוזיציות, ציוני z, איתותים נגדיים ומאפיינים לאסטרטגיות חוזים עתידיים כשימושים אפשריים, אך אינו מציג כלל מסחר שנבדק או ראיות לביצועים.
האזהרה המרכזית ביישום נוגעת לעיתוי הפרסום. כל תמונת מצב מתארת פוזיציות נכון ליום שלישי, אך מתפרסמת רק ביום שישי אחר הצהריים; המדריך ממליץ על השהיית זמינות שמרנית יותר של שישה ימים קלנדריים עבור בקטסטים בנתונים יומיים. הדבר חשוב למניעת הטיית הצצה לעתיד בהתאמת הדוחות לנתוני השוק. העמודות שונות בדוחות הפיננסיים ובדוחות הסחורות, ולכן נתונים משולבים צריכים להתחשב בהבדלים האלה בסכמות. המסמך מסביר מוסכמות גישה ואחסון, אך אינו מעריך את עוצמת האות, את פרשנות הקטגוריות או אם מאפייני פוזיציות משפרים תשואות.
רעיונות מרכזיים
- דוחות CFTC מספקים פוזיציות שבועיות בחוזים עתידיים, בחלוקה לפי קטגוריות סוחרים.
- בחוזים עתידיים פיננסיים ובחוזים עתידיים על סחורות משתמשים בסוגי דוחות ובשמות קטגוריות שונים.
- מדדי הפוזיציות כוללים לונג, שורט, נטו, פוזיציות פתוחות, מוצר ותאריך דוח.
- בקטסטים צריכים להביא בחשבון את הפער בין תמונת המצב של יום שלישי לפרסום ביום שישי.
- המדריך מצביע על שימושים אפשריים כמאפיינים, אך אינו מבסס אסטרטגיית פוזיציות רווחית.
תגיות
הטקסט המלא
# Futures Positioning: CFTC Commitment of Traders
# Futures Positioning: CFTC Commitment of Traders
Weekly positioning snapshots (Tuesday; released Friday at 3:30 PM ET) for
CME / ICE / CBOT futures, broken down by trader category. Free and public
domain. Used in Ch4 NB 10 for sentiment/positioning features and in
Ch8 / Ch16 for futures strategy inputs.
## Dataset
| Report type | Trader categories | Products |
| --- | --- | --- |
| TFF (Traders in Financial Futures) | Dealers, Asset Managers, Leveraged Money | Financial futures (ES, NQ, 6E, ZN, …) |
| Disaggregated | Commercials, Managed Money, Swap Dealers | Commodity futures (CL, GC, ZC, …) |
Product mapping + report-type dispatch live in the `ml4t.data.cot` library
(`ml4t.data.cot.PRODUCT_MAPPINGS`). The downloader here wraps that library
and persists one parquet per product to the local data store.
## Download
```bash
# Default: all products in PRODUCT_MAPPINGS, 2020 through current year
uv run python data/futures/positioning/cot_download.py
# Subset of products + longer history
uv run python data/futures/positioning/cot_download.py --products ES,NQ,CL,GC --start-year 2010
# Override output root
uv run python data/futures/positioning/cot_download.py --data-path /tmp/ml4t-data
```
## Directory Layout
```
$ML4T_DATA_PATH/futures/positioning/cot/
└── {PRODUCT}.parquet # one parquet per product code (e.g., ES.parquet)
```
## Schema
Columns vary by report type but always include:
| Column | Notes |
| --- | --- |
| `product` | Exchange product code (ES, CL, GC, …) |
| `report_type` | CFTC report that produced the row |
| `report_date` | Tuesday snapshot date |
| `open_interest` | Total open interest |
Per-trader long/short/net columns by report type:
- **Financial (TFF)**: `dealer_long/short/net`, `asset_mgr_long/short/net`, `lev_money_long/short/net`
- **Commodity (disaggregated)**: `commercial_long/short/net`, `managed_money_long/short/net`, `swap_long/short/net`
## Loading
```python
from data import load_cot, list_cot_products
# Everything available locally
df = load_cot()
# Subset + date filter
df = load_cot(products=["ES", "NQ"], start_date="2020-01-01", end_date="2024-12-31")
# Enumerate what's been downloaded
list_cot_products() # -> ['CL', 'ES', 'GC', 'NQ', ...]
```
`load_cot()` uses `diagonal_relaxed` concat so financial and commodity
products can be combined in one frame despite their different schemas.
## Release Lag
CFTC publishes reports Friday at 3:30 PM ET; the snapshot is as-of
**Tuesday** of the same week (3-day lag). For daily-bar backtests a
conservative +6 calendar-day availability lag from Tuesday is standard.
## Consumers
- **Ch4 NB 10** — positioning analysis, z-scores, contrarian signals
- **Ch8** — futures_features.py (positioning feature family)
- **Ch16** — futures strategies using CoT signalsמוצג במלואו בציון המקור ובהתאם לרישיון שלו. רישיון: MIT
הסיכום נכתב בידי סוכן המחקר של Stratmill על סמך המקור; הוא אינו העתק של המקור.