予測の価値はその検証で決まる
ARIMA(p,d,q) モデルは、d 回の差分の後、系列 yₜ を自身の過去と過去のショックで説明します。d=0 のAR(1)は yₜ=c+φ yₜ₋₁+eₜ で、|φ|<1 なら平均回帰し、長期平均は μ=c/(1-φ) です。SARIMAX(y, order=(p, d, q), trend='c') は最尤法で当てはめ、trend='c' は定数を加えます。これは d=0 のときだけ意味があります(差分した系列には戻るべき水準がありません)。当てはめたオブジェクトは params、aic、get_forecast(steps) を与えます。AIC =2k-2ln L は当てはまりとパラメータ数 k のトレードオフで、同じデータに当てはめた候補の中では最小のものが好まれますが、意味があるのは数ポイントの差からです。SPYの月次対数ボラティリティでは、ARMA(1,1)(AIC 271.9)とAR(2)(272.7)がAR(1)(275.0)をわずかに上回り、差分ははるかに悪い(290.5)です。
標本内の当てはまりは予測についてほとんど何も語りません。誠実な検証はローリング起点です。各起点 t₀ で y_1..t₀ だけで当てはめ、h 期先を予測し、実際に来た値 y_(t₀+h) と比べます。誤差を集めて RMSE √(mean(e²)) で採点します。基準は必ず含めます:ナイーブ予測(直近の値)と過去平均です。スキル 1-RMSE_モデル/RMSE_基準 はモデルが勝てば正です。ここでは1か月先でAR(1)のRMSEが 0.373、ナイーブが 0.451、平均が 0.419 で、スキルは 0.17 と 0.11 です。12か月先ではRMSEが 0.526 で平均と同一であり、ナイーブに対するスキル(0.34)はナイーブの失敗によるものにすぎません。AR(1)予測は -2.09 から -2.01 へ平均に減衰しただけです。予測が平均へ戻る速さを知れば、モデルがどこまで先を知っているかが分かります。
- 定数は差分しないときだけ。次数はAICで比べ、数ポイントの差だけを信じる。
- ローリング起点:各起点で過去データだけで再当てはめし、当てはめが見たデータで予測を採点しない。
- 必ず基準に勝つ:ナイーブ予測と過去平均。スキルは 1-RMSEₘ/RMSE_b。
ラボ:採点される内容
- SARIMAXの当てはめ10点
- 点予測10点
- 次数の比較15点
- ローリング起点の誤差25点
- RMSE5点
- 予測スキル10点
- ボラティリティの研究25点