Macro-skills monitor-etf-holdings-drawdown-risk
displayName: 監控實物 ETF 持倉下滑風險
git clone https://github.com/fatfingererr/macro-skills
skills/monitor-etf-holdings-drawdown-risk/skill.yamldisplayName: 監控實物 ETF 持倉下滑風險 emoji: "💸" authorUrl: https://github.com/fatfingererr/macro-skills
tools:
- claude-code
featured: false installCount: 0
testQuestions:
-
question: '檢查 SLV 白銀 ETF 是否存在價格-庫存背離現象' imagePath: images/SLV-divergence-report-2026-01-20.png expectedResult: | SLV 白銀 ETF 背離分析報告
截至日期:2026-01-19
--- 核心結論
┌──────────┬────────────┬──────────┐ │ 指標 │ 數值 │ 判定 │ ├──────────┼────────────┼──────────┤ │ 背離狀態 │ 否 │ ✅ 正常 │ ├──────────┼────────────┼──────────┤ │ 壓力分數 │ 20.0 / 100 │ 低風險 │ ├──────────┼────────────┼──────────┤ │ 壓力等級 │ LOW │ 無需警戒 │ └──────────┴────────────┴──────────┘詳細數據
最新持倉與價格
- 白銀價格:$93.27 / oz(SI=F 期貨)
- SLV 持倉量:5.17 億盎司(16,073 噸)
- 庫存/價格比值 Z 分數:-3.70(極端偏低)
180 天視窗變化 ┌──────────┬─────────┬──────────┐ │ 指標 │ 變化率 │ 說明 │ ├──────────┼─────────┼──────────┤ │ 價格變化 │ +191.6% │ 大幅上漲 │ ├──────────┼─────────┼──────────┤ │ 庫存變化 │ +14.7% │ 同步增長 │ └──────────┴─────────┴──────────┘ 結論:價格與庫存同向上漲,不存在背離。
歷史對比 ┌──────────────┬───────────────────┐ │ 指標 │ 數值 │ ├──────────────┼───────────────────┤ │ 十年最低庫存 │ 3.07 億盎司 │ ├──────────────┼───────────────────┤ │ 十年最高庫存 │ 6.77 億盎司 │ ├──────────────┼───────────────────┤ │ 當前百分位 │ 56.6%(中間偏上) │ ├──────────────┼───────────────────┤ │ 十年低點? │ 否 │ └──────────────┴───────────────────┘
解讀
當前 SLV 不存在「價漲庫跌」的背離現象:
- 白銀價格強勁上漲(180 天內翻倍)
- SLV 持倉同步增加(+14.7%),顯示資金流入而非流出
- 庫存水平位於歷史中間區間,並非十年低點
雖然庫存/價格比值 Z 分數為 -3.70(表示相對價格而言庫存偏低),但這主要反映價格上漲速度快於庫存增速,而非實物緊張。
下一步驗證建議
- 核對 SLV 官方持倉時間序列(避免數據源誤差)
- 交叉比對 COMEX registered/eligible 庫存變化
- 檢查白銀期貨曲線是否出現 backwardation
- 觀察零售銀條/銀幣溢價是否擴大
結果已保存至:slv_divergence_result.json
-
question: '幫我分析 GLD 黃金 ETF 的持倉變化與金價的關係' imagePath: images/GLD-divergence-report-2026-01-20.png expectedResult: | GLD 黃金 ETF 持倉-價格背離分析結果
分析摘要
┌──────────┬────────────┬────────────────────┐
│ 指標 │ 數值 │ 說明 │ ├──────────┼────────────┼────────────────────┤
│ 分析日期 │ 2026-01-19 │ │ ├──────────┼────────────┼────────────────────┤
│ 背離狀態 │ ❌ 否 │ 價格與持倉同向變動 │ ├──────────┼────────────┼────────────────────┤ │ 壓力分數 │ 20.0/100 │ LOW (低風險) │ └──────────┴────────────┴────────────────────┘ 關鍵指標 ┌──────────────────┬─────────────────────────┬────────────────────────────┐ │ 項目 │ 數值 │ 解讀 │ ├──────────────────┼─────────────────────────┼────────────────────────────┤ │ 180天金價變化 │ +44.6% │ 金價大幅上漲 │ ├──────────────────┼─────────────────────────┼────────────────────────────┤ │ 180天持倉變化 │ +1.4% │ 持倉小幅增加(非下降) │ ├──────────────────┼─────────────────────────┼────────────────────────────┤ │ 當前持倉量 │ 3,490 萬盎司 (1,086 噸) │ │ ├──────────────────┼─────────────────────────┼────────────────────────────┤ │ 持倉歷史百分位 │ 68.6% │ 處於十年中上水位 │ ├──────────────────┼─────────────────────────┼────────────────────────────┤ │ 庫存十年低點 │ 否 │ 遠離歷史低點 │ ├──────────────────┼─────────────────────────┼────────────────────────────┤ │ 庫存/價格 Z 分數 │ -2.33 │ 比值偏低(金價相對持倉高) │ └──────────────────┴─────────────────────────┴────────────────────────────┘ 分析結論目前 GLD 不存在「價漲庫跌」的背離現象。
雖然過去 180 天金價大漲 44.6%,但 GLD 持倉並未下滑,反而小幅增加 1.4%。這表示:
- 投資人持續買入黃金 ETF:金價上漲伴隨持倉增加,符合正常市場邏輯
- 無實物緊張訊號:沒有「價格上漲、但 ETF 被大量贖回」的異常現象
- 持倉處於健康水位:目前持倉約 3,490 萬盎司,在十年歷史中處於第 68 百分位
圖表說明
上方圖表顯示:
- 藍線 (GC=F):黃金期貨價格,2024 年底以來大幅上漲
- 紅線 (GLD):ETF 持倉量,2025 年以來從低點回升
- 兩者走勢大致同向,沒有明顯背離
雙重假設解釋 ┌─────────────────┬────────────────────────────┐ │ 假設 │ 目前狀態 │ ├─────────────────┼────────────────────────────┤ │ 實物緊張假說 │ ⚪ 不適用 - 價格與持倉同向 │ ├─────────────────┼────────────────────────────┤ │ 資金流/贖回假說 │ ⚪ 不適用 - 持倉未下滑 │ └─────────────────┴────────────────────────────┘ 建議後續觀察
- 核對 COMEX 黃金庫存是否同步穩定
- 檢查黃金期貨曲線結構(contango vs backwardation)
- 觀察零售金條/金幣溢價是否擴大
報告檔案位置:
- PNG: images/GLD_divergence_report_20260120.png
- JSON: data/gld_divergence_result.json
數據來源:MacroMicro (財經 M 平方) + Yahoo Finance
qualityScore: overall: 73 badge: 中高級 evaluatedAt: "2026-01-23"
metrics: problemFit: 78 correctness: 76 dataGovernance: 70 robustness: 68 maintainability: 72 usability: 74
metricDetails: problemFit: score: 78 strengths: - 背離偵測邏輯清晰 - 雙重假設驗證框架避免單一偏誤 - 壓力分數計算可量化 improvements: - 可增加更多 ETF 支援(如 PSLV)
correctness: score: 76 strengths: - 壓力分數公式明確 - testQuestions 有詳細 expectedResult - 雙假設框架設計合理 improvements: - 可增加 examples/ golden case - 十年尺度判斷需更多驗證 dataGovernance: score: 70 strengths: - 使用 yfinance 公開數據 - 說明數據延遲注意事項 improvements: - Selenium 爬蟲依賴網站結構 - 缺少 data-sources.md 完整文檔 - 需 fallback 數據來源 robustness: score: 68 strengths: - pitfalls 詳列 ETF 贖回誤判風險 - bestPractices 有十年尺度建議 improvements: - Selenium 選擇器變更風險 - 缺少 failure-modes.md maintainability: score: 72 strengths: - 參數定義完整 - 多資料源支援 improvements: - Selenium 爬蟲需定期維護 - 可增加 manifest.json 版本控制 usability: score: 74 strengths: - FAQ 解答背離、雙假設、壓力分數 - 輸出有壓力等級與驗證建議 improvements: - 可增加 historical-episodes.md - 可增加期貨結構交叉驗證視覺化
details: | 任務適配度(78/100) - 背離偵測與雙假設框架設計合理 - 壓力分數可量化 - 待改進:增加更多 ETF 支援
**正確性(76/100)** - 壓力分數公式明確 - testQuestions 有 expectedResult - 待改進:增加 examples/ golden case **資料治理(70/100)** - 使用公開數據 - 待改進:增加 data-sources.md 與 fallback **穩健性(68/100)** - pitfalls 詳列風險 - 待改進:Selenium 穩定性與 failure-modes.md **可維護性(72/100)** - 參數定義完整 - 待改進:爬蟲維護與版本控制 **輸出可用性(74/100)** - FAQ 解答核心概念 - 待改進:增加歷史對照
upgradeNotes: targetBadge: 高級 requirements: - metric: dataGovernance currentScore: 70 targetScore: 80 suggestion: 增加 data-sources.md 與 fallback 來源 - metric: robustness currentScore: 68 targetScore: 80 suggestion: 增加 failure-modes.md 與 Selenium 穩定性
bestPractices:
- title: 雙假設驗證避免偏誤 description: 不要直接把「庫存下降」解讀為「實物被搶」,需同時考慮 ETF 贖回可能性
- title: 交叉驗證增強可信度 description: 使用 COMEX、期貨結構、零售溢價等多指標交叉驗證
- title: 關注十年尺度而非短期波動 description: 十年低點比短期下滑更有意義,避免對正常波動過度反應
- title: 注意數據發布延遲 description: ETF 持倉數據可能有 1-2 天延遲,需注意數據時效性
pitfalls:
- title: 把 ETF 贖回誤判為實物短缺 description: ETF 持倉下降可能是投資人資金流出,不必然代表實物被「抽走」 consequence: 錯誤的投資決策
- title: 忽略期貨結構訊號 description: 若期貨仍為 contango,實物緊張假設較不可信 consequence: 過度解讀背離訊號
- title: 選擇器變更導致爬蟲失效 description: ETF 官網改版可能導致 Selenium 爬蟲抓取失敗 consequence: 數據缺失或錯誤
faq:
-
question: 什麼是價格與庫存背離? answer: | 當商品價格上漲但對應 ETF 的實物持倉卻下降時, 稱為「價格-庫存背離」。這可能意味著:
- 實物供給緊張(看漲)
- ETF 投資人資金外流(正常情況)
需要交叉驗證才能判斷哪種解釋更可信。
-
question: 為什麼需要雙重假設? answer: | 社群敘事常把「ETF 庫存下降」直接解讀為「銀行搶銀條」, 但這忽略了 ETF 贖回機制。雙重假設框架要求:
- 提供支持「實物緊張」的條件
- 提供支持「資金流變化」的條件 讓用戶根據實際數據判斷。
-
question: 壓力分數如何計算? answer: | 壓力分數 = 100 × min(1.0, 0.6 × 背離嚴重度 + 0.2 × 十年低點加成 + 0.2 × 比值極端加成 )
- 背離嚴重度 = 價格漲幅 × 庫存跌幅
- 十年低點加成 = 1.0 如果庫存處於十年低點
- 比值極端加成 = 1.0 如果庫存/價格比值 Z < -2
about: repository: https://github.com/fatfingererr/macro-skills branch: main additionalInfo: | ## 適用場景
- 監控 SLV、PSLV、GLD 等實物型 ETF - 驗證社群「實物短缺」敘事 - 評估商品市場供需緊張度 ## 數據來源 **ETF 持倉(Selenium 爬蟲)** - SLV: iShares Silver Trust 官網 - PSLV: Sprott Physical Silver Trust 官網 - GLD: SPDR Gold Shares 官網 **價格數據(yfinance)** - XAGUSD: 白銀現貨 - XAUUSD: 黃金現貨 - SI=F: 白銀期貨近月 **交叉驗證(公開數據)** - COMEX 庫存報表 - 期貨曲線結構 - 零售溢價指標