用 COT 非商業部位變化,量化對沖基金在農產品期貨的資金流向,並把出口需求、USDA 數據、美元/原油/金屬等宏觀風向整合成可交易的敘事與訊號。
Resources
7Install
npx skillscat add fatfingererr/macro-skills/track-agri-hedge-fund-positioning Install via the SkillsCat registry.
This skill quantifies hedge fund positioning in agricultural futures using CFTC COT data, aggregating commodity groups and integrating macroeconomic indicators (DXY, WTI, metals) to generate actionable signals. It addresses the challenge of interpreting fragmented market data by synthesizing trader behavior and macro trends into a unified narrative. Use it when analyzing agricultural commodity markets to assess fund sentiment, validate positioning shifts, or identify trading opportunities aligned with macroeconomic conditions.
CFTC Commitments of Traders 報告是追蹤對沖基金農產品部位的核心資料:
- 截止日:每週二收盤
- 發布日:每週五下午 3:30 ET
- 交易者分類:非商業(投機/基金)、商業(避險)、非報告
資金流 = 本週淨部位 - 上週淨部位(以合約口數計)
使用 CFTC 原生分組(commodity_subgroup_name):
| 群組 | CFTC 分組名稱 | 包含商品 |
|---|---|---|
| Grains | GRAINS | Corn, Wheat (SRW/HRW/HRS), Oats |
| Oilseeds | OILSEED and PRODUCTS | Soybeans, Soybean Oil/Meal, Canola |
| Meats | LIVESTOCK/MEAT PRODUCTS | Live Cattle, Lean Hogs, Feeder |
| Softs | FOODSTUFFS/SOFTS | Coffee, Sugar, Cocoa, OJ |
| Fiber | FIBER | Cotton |
| Dairy | DAIRY PRODUCTS | Milk, Butter, Cheese |
Total Flow = Grains + Oilseeds + Meats + Softs + Fiber + Dairy
火力衡量基金是否還有加碼空間:
net_pos_percentile = rank(current_net_pos, past_N_weeks)
firepower = 1 - net_pos_percentile- 高火力(>0.6):部位處於歷史低檔,仍有大量買進空間
- 低火力(<0.3):部位已接近歷史高檔,擁擠風險高
整合三個風險偏好指標:
| 指標 | 訊號解讀 |
|---|---|
| 美元 (DXY) | 走弱(負報酬)= 利於商品 |
| 原油 (WTI) | 走強(正報酬)= 風險偏好上升 |
| 金屬 | 走強(正報酬)= 循環需求樂觀 |
macro_tailwind_score = (DXY弱 + WTI強 + Metals強) / 3
COT 只到週二,週三~週五需用代理證據:
- 價格動能:農產品/代理指數 Wed-Fri 累積報酬
- 未平倉變化:OI 擴張 = 新倉(非純換手)
- 宏觀共振:與 USD↓、油價↑、金屬↑ 同時性
- 取得資料:COT 週報、宏觀指標(DXY/WTI/金屬)、基本面觸發(出口/USDA)
- 計算流量:淨部位週變化,分組彙總(Grains/Oilseeds/Meats/Softs/Total)
- 量化火力:用歷史分位數估算基金加碼空間
- 整合訊號:判斷「基金回來買」+ 「宏觀順風」+ 「基本面支持」
- 產出敘事:將圖表標註(如 Strong Corn Demand)轉為可重複的規則
輸出:週流量時序、最新狀態、火力分數、宏觀評分、可交易註解。
快速開始:分析最新 COT 資料
cd .claude/skills/track-agri-hedge-fund-positioning/scripts
pip install pandas numpy requests yfinance pyarrow # 首次使用
python analyze_positioning.py --start 2023-01-01輸出範例(真實資料):
{
"skill": "track-agri-hedge-fund-positioning",
"as_of": "2026-01-20",
"data_source": "CFTC Socrata API (real data)",
"summary": {
"call": "Funds continue selling",
"all_signals": ["Funds continue selling", "Extreme short - watch for reversal", "Macro mood bullish"],
"confidence": 0.90
},
"latest_metrics": {
"flow_total_contracts": -24559,
"flow_by_group_contracts": {"grains": -31279, "oilseeds": 11517, "meats": 18972, "softs": -23887, "fiber": 1607, "dairy": -1489},
"buying_firepower": {"total": 0.86, "grains": 0.58, "oilseeds": 0.62, "meats": 0.31, "softs": 0.99, "fiber": 0.58, "dairy": 0.99},
"macro_tailwind_score": 0.67
}
}視覺化圖表:
python visualize_flows.py --weeks 52
# 輸出:output/agri_fund_positioning_YYYY-MM-DD.png</quick_start>
需要進行什麼操作?- 快速檢查 - 查看最新一週的基金部位變化與狀態
- 完整分析 - 指定日期範圍的資金流向分析與回測
- 視覺化圖表 - 生成分組柱狀圖與火力時序圖
- 監控模式 - 設定週度更新與訊號警報
- 方法論學習 - 了解 COT 分析與火力計算邏輯
請選擇或直接提供分析參數。
所有腳本使用 CFTC Socrata API 取得真實資料,無模擬數據。
| 文件 | 內容 |
|---|---|
| methodology.md | COT 分析方法論、火力計算、訊號邏輯 |
| data-sources.md | CFTC COT、FRED、Yahoo Finance 資料來源 |
| input-schema.md | 完整輸入參數定義 |
| contracts-map.md | 期貨合約與商品群組對照表 |
| macro-indicators.md | 宏觀指標定義與代理序列 |
| </reference_index> |
| Script | Command | Purpose |
|---|---|---|
| fetch_cot_data.py | --start 2023-01-01 --summary |
從 CFTC Socrata API 抓取 COT |
| fetch_macro_data.py | --start 2025-01-01 --summary |
抓取宏觀指標(Yahoo/FRED) |
| analyze_positioning.py | --start 2023-01-01 |
主分析腳本(自動抓取+計算) |
| visualize_flows.py | --weeks 52 |
生成 Bloomberg 風格視覺化圖表 |
| </scripts_index> |
必要參數
| 參數 | 類型 | 說明 |
|---|---|---|
| date_start | string | 起始日期 (YYYY-MM-DD) |
| date_end | string | 結束日期 (YYYY-MM-DD) |
| cot_report | string | COT 類型 (legacy/disaggregated) |
| trader_group | string | 交易者分類 (noncommercial) |
| contracts_map | object | 合約→群組對照表 |
選用參數
| 參數 | 類型 | 預設值 | 說明 |
|---|---|---|---|
| position_metric | string | net | 部位衡量 (net/long/short) |
| lookback_weeks_firepower | int | 156 | 火力計算視窗(週) |
| macro_indicators | object | {...} | 宏觀指標設定 |
| fundamental_inputs | object | {...} | 基本面資料設定 |
| event_window_days | int | 3 | Wed-Fri 事件視窗 |
| output_mode | string | both | 輸出格式 (markdown/json) |
完整參數定義見 references/input-schema.md。
完整輸出結構見 templates/output-json.md。
</output_schema_summary>
- 週流量時序(Grains/Oilseeds/Meats/Softs/Fiber/Dairy/Total)
- 最新一週的流量與淨部位
- 各群組的火力分數(buying_firepower)
- 宏觀順風評分(macro_tailwind_score)
- 可交易呼叫(call)與信心水準
- 圖表標註(annotations)與規則觸發
- 風險提示與下一步建議
- Bloomberg 風格視覺化圖表(output/agri_fund_positioning_YYYY-MM-DD.png)</success_criteria>