← 回到研究成果
計算方法
重現 Heitfield、Park、Danesh(2026, FEDS Notes)的做法,並記錄每一處與原文的差異。
1. 資料
| 項目 | 來源 | 用途 |
| WTI 現貨 | EIA WTI Cushing(FRED DCOILWTICO) | st、st+m、油股相關性 |
| WTI 期貨 | NYMEX CL1–CL15 收盤價、每天對應的實際合約與其最後交易日(Bloomberg) | ft,m |
| 無風險利率 | FRED DTB3、DTB6、DGS1 | 淨便利收益率 |
| S&P 500 | Bloomberg SPX Index | 油股相關性 |
原始資料與抓取程式不公開,只公開計算程式與衍生結果。
2. 期貨曲線的兩個版本
- A 連續月合約:直接用 CL3、CL6、CL12 代表 3 個月、6 個月、1 年。最簡單,但 CLn 的實際距到期天數會隨每月轉倉跳動約 30 天。
- B 固定期限(Fed 做法,原文註 2):每天先查 CL1–CL15 各自對應的合約與最後交易日,算出距到期天數 τn,再對 ln(價格) 依 τ 做線性內插,取得固定 91.3、182.6、365.3 天的價格。
3. 淨便利收益率
淨便利收益率 (y − u) = r − ln(F / S) / τ τ = m / 12,r = ln(1 + 殖利率)
3 個月用 DTB3、6 個月用 DTB6、1 年用 DGS1。沒有儲存成本資料,所以這是扣除儲存成本後的「淨」值,和原文一致。
4. 風險溢酬模型(原文式 1)
s(t+m) − f(t,m) = α + β · (f(t,m) − s(t)) + ε(t)
- 左側是做多期貨持有到期的實現報酬(對數)。s(t+m) 取 t 加 m 個日曆月當天、或之前最近一天的現貨。
- 樣本日曆:用期貨交易日,EIA 沒有報價的日子把現貨往前補值(最多 5 天)。EIA 比期貨少約 400 個交易日,用期貨日曆後樣本數才和 Fed 表 1 一致。
- 權重:指數衰減,半衰期 5 年,以樣本截止日為基準:w = 0.5(距截止日年數 / 5)。
- 標準誤:Newey-West,落後期 L = 90 / 180 / 360 個觀測值。
- Fed 樣本:只用 2026-06-24 以前已實現的結果。這個截止日是讓三個期限的樣本數都和 Fed 表 1 一致(差距 ≤ 4 筆)反推出來的。最新:用到今天已實現的全部結果。
- 配適的風險溢酬:RP(t) = α + β · ln(F/S);隱含預期現貨 = F · eRP;標準誤 = √(x′Vx),其中 x = [1, ln(F/S)]、V 是係數的共變異矩陣。
白話:哪部分用歷史、哪部分用今天
| 成分 | 來源 | 意思 | 多久更新 |
| α、β | 2000 年至今每一天的「曲線斜率」對「之後實際結果」做迴歸 | 歷史上,曲線每陡 1%,期貨平均會高估(或低估)多少 | 變動很慢(見圖 5);程式每次都重估,但每月重估一次也幾乎一樣 |
| ln(F/S) | 今天的期貨價與現貨價 | 今天的曲線有多陡 | 每天 |
比喻:β 是歷史經驗換算出來的「匯率」,今天的斜率是你今天手上的金額,兩者相乘才是今天的風險溢酬。
每天更新只需要當天的 F 和 S;重估 β 用的是本機已存的完整歷史,不需要重拉舊合約,只要補最新幾天的價格與新上市合約的到期日。
例(2026-10-14,1 年期,版本 B)
| 步驟 | 來源 | 數字 |
| ① α、β | 歷史迴歸(2000 年至今) | α = 0.0703,β = 0.5529 |
| ② 現貨 S、1 年期貨 F | 10/14 收盤 | S = 101.91,F = 80.87 |
| ③ 今天的斜率 | ln(80.87 / 101.91) | −23.1% |
| ④ 風險溢酬 | 0.0703 + 0.5529 × (−0.231) | −5.8% |
| ⑤ 市場預期油價 | 80.87 × e−0.058 | ≈ 76.3 |
網頁「最新」區塊下方的「怎麼算出來的」會用當期資料自動列出同樣的步驟。
5. 圖表與表格
- 圖 1、表 2:先算各期間的平均期貨價與平均現貨價,再代入模型。平均用原始 EIA 交易日,包含 2020-04-20 的負油價;只對平均值取對數。期間是比對 Fed 的平均現貨價反推出來的:COVID 供應過剩高峰 2020-04-15~05-01(11.79,儲油滿載的幾週,不是整段疫情)、俄烏 2022-02-24~05-24(105.62)、中東 2026-02-28~07-27(91.89;2/28 為週六,3/2 起有報價;7/27 是 Fed 資料截止日,衝突並未結束)。
- 圖 4:EIA 現貨與 S&P 500 的日對數報酬,90 個觀測值滾動 Pearson 相關。另外附 2 日報酬版本,減輕兩者收盤時間不同步造成的偏誤。
- 圖 5:從 2004 年起,每個月底只用當時已實現的結果重估一次,權重以該月底為基準。
- 圖 6:用最新參數套在每天的 ln(F/S) 上,另附 21 日平滑。
- 市場深度(原文圖 3):需要盤口逐筆資料,本專案未重現。
6. 驗證(checks.py)
- Fed 自己的表 2 可以由它的表 1 係數與期間平均價完全重算(誤差 ≤ 0.15 個百分點)。
- 版本 B、Fed 樣本:α、β 都落在 Fed 的 1 個標準誤以內,樣本數差距在 1% 以內。
- 表 2:COVID、俄烏、中東的平均現貨誤差在 0.05 美元以內、平均期貨在 1% 以內,風險溢酬落在 Fed 的 1 個標準誤以內。
- 2000 年以來油股長期相關約 +18%;2026 年衝突期間的 90 日相關低於 −30%。
7. 已知差異
- 「2000 年至今」的平均價:Fed 是 64.24,我們是 65.40,試過加權平均、中位數、不同起點都對不上。由於風險溢酬只取決於 F/S 的比值,計算出的溢酬仍然一致(2.0% / 2.9% / 4.7%,Fed 為 2.0% / 3.2% / 4.9%)。
- 原文圖註日期:本次供給衝擊的起點寫成 2/26/28,內文寫 2 月 28 日,本專案以 2026-02-28 標示。