---
name: analyze-copper-stock-resilience-dependency
description: 用跨資產訊號(全球股市韌性 + 中國利率環境)評估銅價能否突破關卡或進入「回補/回踩」到支撐的機率與路徑。
---
**跨資產依賴核心邏輯**
銅價的關卡突破與回補,並非單純由銅本身決定,而是高度依賴股市韌性:
```
銅價走勢 = f(技術面關卡狀態) × f(股市韌性) × f(中國利率環境)
```
關鍵洞察:
- **股市韌性高**時:銅突破關卡後「續航」機率更高
- **股市韌性低**時:銅更容易出現「back-and-fill」回補到支撐區
- **中國10Y殖利率**:作為風險壓力/政策寬鬆的雙面訊號
**心理關卡與趨勢狀態**
銅價的重要心理整數位(如 10,000 / 13,000 USD/ton)是判斷突破與回補的關鍵:
| 狀態 | 條件 | 含義 |
|-----------|----------------------------|----------|
| **up** | close > SMA(60) 且斜率為正 | 上升趨勢 |
| **down** | close < SMA(60) 且斜率為負 | 下降趨勢 |
| **range** | 其他 | 區間整理 |
關卡判定:
- `near_resistance`: 接近上方關卡
- `near_support`: 接近下方支撐
**股市韌性評分(0-100)**
將「股市韌性」量化為可計算的分數:
| 因子 | 權重 | 計算方式 |
|------------|------|------------------------------------|
| 12個月動能 | 40% | 12m 報酬分位數(vs 歷史) |
| 均線位置 | 40% | 是否站上 12 月均線(是=100,否=0) |
| 近期回撤 | 20% | 近 3m 回撤越小越好(反向計分) |
評分解讀:
- **70-100**:高韌性,銅突破關卡後續航機率較高
- **30-70**:中性,需觀察其他因子
- **0-30**:低韌性,回補風險顯著上升
**滾動迴歸:量化依賴強度**
計算銅價對股市與中國殖利率的滾動貝塔係數:
```
Δcopper ~ β1 × Δequity + β2 × Δchina_yield + ε
```
- **β1(股市貝塔)越大越正**:銅越像風險資產,越依賴股市
- **β1 高分位**:市場正在把銅當風險資產一起交易
- **β1 < 0(負相關)**:銅與股市脫鉤,展現獨立邏輯(避險/供給/能源轉型敘事)
- **β2(殖利率貝塔)**:正 = 殖利率上升利好銅(通膨敘事),負 = 反之
**資料取得方式**
本 skill 使用以下公開數據來源:
| 數據 | 代碼/來源 | 取得方式 |
|---------------|-----------------------------------------------------------------------------------|----------------------|
| 銅期貨價格 | COMEX Copper (HG=F) | Yahoo Finance |
| 全球股市市值 | VT (Vanguard Total World Stock ETF) | Yahoo Finance |
| 中國10Y殖利率 | [MacroMicro](https://en.macromicro.me/charts/133362/China-10Year-Government-Bond-Yield) | Selenium + Highcharts |
**單位換算**:
- HG=F 為 $/lb,自動乘以 2204.62262 轉換為 $/ton
- VT ETF 價格乘以係數轉換為全球市值估計(兆美元)
- 中國10Y 為百分比(%)
實作銅價股市韌性依賴分析:
1. **資料擷取**:抓取銅價、全球股市、中國10Y殖利率
2. **趨勢與關卡判定**:計算 SMA、趨勢狀態、接近哪個關卡
3. **股市韌性評分**:計算 equity_resilience_score
4. **依賴關係量化**:滾動迴歸計算 β 係數
5. **回補機率估計**:歷史統計回補頻率(高韌性 vs 低韌性)
6. **情境判讀**:輸出當前是「續航」還是「回補」情境
輸出:當前狀態、依賴強度、回補機率、可執行警報旗標。
**最快的方式:執行預設分析**
```bash
cd skills/analyze-copper-stock-resilience-dependency
pip install pandas numpy yfinance scipy statsmodels matplotlib # 首次使用
python scripts/copper_stock_analyzer.py --quick
```
輸出範例:
```json
{
"as_of": "2026-01-22",
"latest_state": {
"copper_price_usd_per_ton": 12727,
"copper_trend": "up",
"equity_resilience_score": 83,
"rolling_beta_equity_24m": -0.80
},
"diagnosis": {
"narrative": "銅價上升趨勢中,接近 13,000 關卡,股市韌性高檔。"
}
}
```
**生成 Bloomberg 風格圖表**:
```bash
python scripts/visualize.py \
--start 2015-01-01 \
-o output/copper_resilience_2026-01-22.png
```
圖表包含:
- 銅價月線 + SMA60(右軸,橙紅/黃色)
- 全球股市市值(左軸,橙色面積圖)
- 中國 10Y 殖利率(左軸,黃線)
- 關卡線(10,000 / 13,000)
**生成依賴度分析圖表**(三面板綜合圖):
```bash
python scripts/plot_dependency_analysis.py \
--start 2015-01-01 \
-o ../../output/copper-dependency-analysis-2026-01-22.png
```
圖表包含三個面板:
1. **銅價面板**:銅價 + SMA60 + 趨勢背景色(綠=上升,紅=下降)+ 關卡線
2. **β係數面板**:滾動 β 時間序列 + ±1σ 區間 + 當前分位數 + 負值警示
3. **韌性面板**:股市韌性評分 + 高/低閾值線
**完整分析**:
```bash
python scripts/copper_stock_analyzer.py \
--start 2015-01-01 \
--end 2026-01-22 \
--copper HG=F \
--equity ACWI \
--output result.json
```
需要進行什麼操作?
1. **快速檢查** - 查看目前銅價、股市韌性、關卡狀態
2. **完整分析** - 分析時間區間內的依賴關係與回補機率
3. **視覺化圖表** - 生成銅價與依賴因子的視覺化圖表
4. **依賴度分析圖** - 生成三面板依賴度分析圖表(銅價+β係數+韌性)
5. **方法論學習** - 了解跨資產依賴模型的邏輯
**請選擇或直接提供分析參數。**
| Response | Action |
|------------------------------|--------------------------------------------------------|
| 1, "快速", "quick", "check" | 執行 `python scripts/copper_stock_analyzer.py --quick` |
| 2, "完整", "分析", "full" | 閱讀 `workflows/analyze.md` 並執行 |
| 3, "視覺化", "chart", "plot" | 閱讀 `workflows/visualize.md` 並執行 |
| 4, "依賴度", "dependency" | 執行 `python scripts/plot_dependency_analysis.py` |
| 5, "學習", "方法論", "why" | 閱讀 `references/methodology.md` |
| 提供參數 (如日期範圍) | 閱讀 `workflows/analyze.md` 並使用參數執行 |
**路由後,閱讀對應文件並執行。**
```
analyze-copper-stock-resilience-dependency/
├── SKILL.md # 本文件(路由器)
├── skill.yaml # 前端展示元數據
├── manifest.json # 技能元數據
├── workflows/
│ ├── analyze.md # 完整分析工作流
│ ├── quick-check.md # 快速檢查工作流
│ └── visualize.md # 視覺化工作流
├── references/
│ ├── methodology.md # 跨資產依賴方法論
│ ├── data-sources.md # 數據來源與爬蟲說明
│ └── input-schema.md # 完整輸入參數定義
├── templates/
│ ├── output-json.md # JSON 輸出模板
│ └── output-markdown.md # Markdown 報告模板
├── scripts/
│ ├── copper_stock_analyzer.py # 主分析腳本
│ ├── fetch_data.py # 數據抓取工具
│ ├── visualize.py # Bloomberg 風格圖表
│ └── plot_dependency_analysis.py # 三面板依賴度分析圖表
├── data/
│ └── cache/ # 數據快取目錄
└── examples/
└── sample-output.json # 範例輸出
```
**方法論**: references/methodology.md
- 跨資產依賴概念與研究報告對照
- 股市韌性評分設計
- 滾動迴歸與貝塔解讀
- Back-and-fill 回補判定邏輯
**資料來源**: references/data-sources.md
- Yahoo Finance (yfinance) 使用說明
- 中國10Y殖利率爬蟲設計
- 數據頻率與對齊方法
**輸入參數**: references/input-schema.md
- 完整參數定義
- 預設值與建議範圍
| Workflow | Purpose | 使用時機 |
|----------------|----------------|----------------------------|
| analyze.md | 完整分析 | 需要詳細依賴關係與回補分析 |
| quick-check.md | 快速檢查 | 只想看當前狀態 |
| visualize.md | 生成視覺化圖表 | 需要圖表展示 |
| Template | Purpose |
|--------------------|-------------------|
| output-json.md | JSON 輸出結構定義 |
| output-markdown.md | Markdown 報告模板 |
| Script | Command | Purpose |
|-----------------------------|--------------------------------------------|------------------------------|
| copper_stock_analyzer.py | `--quick` | 快速檢查當前狀態 |
| copper_stock_analyzer.py | `--start DATE --end DATE` | 完整分析 |
| fetch_data.py | `--series HG=F,ACWI` | 抓取市場數據 |
| visualize.py | `--start 2015-01-01 -o output/chart.png` | 生成 Bloomberg 風格圖表 |
| plot_dependency_analysis.py | `--start 2015-01-01 -o output/chart.png` | 生成三面板依賴度分析圖表 |
**核心參數**
| 參數 | 類型 | 預設值 | 說明 |
|------------------------|--------|------------|---------------|
| start_date | string | 2020-01-01 | 分析起點 |
| end_date | string | today | 分析終點 |
| freq | string | 1mo | 頻率(月) |
| copper_series | string | HG=F | 銅價序列代碼 |
| equity_proxy_series | string | ACWI | 股市代理序列 |
| china_10y_yield_series | string | 爬取 | 中國10Y殖利率 |
**模型參數**
| 參數 | 類型 | 預設值 | 說明 |
|-----------------------|-------|----------------|--------------------|
| ma_window | int | 60 | 移動平均視窗 |
| rolling_window | int | 24 | 滾動迴歸視窗(月) |
| round_levels | list | [10000, 13000] | 關卡位置 |
| backfill_max_drawdown | float | 0.25 | 回補幅度上限 |
完整參數定義見 `references/input-schema.md`。
```json
{
"skill": "analyze-copper-stock-resilience-dependency",
"as_of": "2026-01-22",
"inputs": {
"copper_series": "HG=F (converted to USD/ton)",
"equity_proxy_series": "ACWI",
"ma_window": 60,
"rolling_window": 24
},
"latest_state": {
"copper_price_usd_per_ton": 12727,
"copper_sma_60": 9355,
"copper_trend": "up",
"near_resistance_levels": [13000],
"near_support_levels": [],
"equity_resilience_score": 91,
"rolling_beta_equity_24m": -0.80,
"rolling_beta_yield_24m": -0.05
},
"diagnosis": {
"narrative": "銅價上升趨勢中,接近 13,000 關卡,股市韌性高檔。",
"scenario": "續航機率較高",
"dependency_status": "滾動 β 為負值 (-0.80),銅與股市呈反向關係,脫離傳統風險資產模式"
},
"actionable_flags": [
{
"flag": "APPROACHING_RESISTANCE",
"meaning": "接近重要阻力位,關注能否突破"
},
{
"flag": "NEGATIVE_BETA_REGIME",
"meaning": "銅與股市呈反向關係,脫離傳統風險資產模式"
},
{
"flag": "LOW_BETA_ANOMALY",
"meaning": "β 處於歷史極端低位,銅正展現獨立於股市的上漲邏輯"
}
]
}
```
完整輸出結構見 `templates/output-json.md`。
執行成功時應產出:
- [ ] 當前銅價與趨勢狀態(up/down/range)
- [ ] 接近的關卡位置(resistance/support)
- [ ] 股市韌性評分(0-100)
- [ ] 滾動貝塔係數(β_equity, β_yield)
- [ ] 回補機率估計(overall / high_resilience / low_resilience)
- [ ] 情境判讀敘述
- [ ] 可執行警報旗標
- [ ] 視覺化圖表(可選,輸出至 `output/` 目錄)