宏觀數據的預測分析上經常會發現數據的頻率是不同的。比如,GDP的數據是季度數據,社融、M2等數據是月度數據,匯率、利率、股指等數據又是日度數據。直覺上來說GDP 肯定是跟社融、M2、股指等方面是有關系的,但是,傳統的回歸分析要求自變量和因變量具有相同的頻率。那麼,如何將高頻數據融入到低頻回歸中就成瞭亟待解決的問題。因此,混頻數據分析, MIDAS(Mixed Data Sampling)就應運而生瞭(Ghysels, E., Santa-Clara, P., & Valkanov, R. 2004)。
本文用Eview做的分析講解,截至23年9月Stata還沒有官方用於分析混頻數據的包,人大經濟論壇上有人發佈瞭個人寫的程序包,但是是收費的,大概在400元左右。R和Matlab聽說已經有免費包瞭,但是我個人對此並不十分熟練,所以留待後續研究。
MIDAS的理念很簡單,既然高頻數據沒有辦法直接進行回歸,那我通過一個函數將高頻數據處理成低頻數據,不就是回到瞭已知的道路上嘛。
Y_{t}^{L}=sum_{i}^{q}beta_{i}{Y_{t-i}^{L}}+lambda f(gamma,X_{j,t}^{H})+varepsilon_{t}
Y_{t} 是一個低頻時序數據, X_{j,t} 是一系列的高頻自變量,我想做的第一步就是找到一個函數f(gamma,X_{j,t}^{H})把高頻數據處理成低頻的。最直觀的方法就是將高頻數據取平均,比如通過月度低頻與日度高頻回歸,1月時,就是將31天的高頻數據求算數平均瞭。
f(gamma,X_{j,t}^{H}) = frac{1}{n}sum_{i}^{n}{X_{j,t}^{H}},gamma=frac{1}{n}
當然,我們也可以選擇不同的函數形式來處理高頻數據。直觀上我們就可以給臨近的數據賦予較高的權重,而給較遠的數據賦予較低低的權重。另一個值得註意的問題是,如果數據量不大,我們估計的權重個數不會很多,但是如果數據頻率較高,比如說是日度數據,我們就需要權衡模型效率、參數識別和準確度等方面。
那麼在實際選擇的過程中,我們既要考慮選擇多少期的滯後項(t-j)來匯總高頻數據,又要考慮如何選擇權重(γ)將高頻數據匯總。
高頻數據變低頻概念示意
1.無約束權重
在我們完全沒有任何權重假設時,最一般的想法肯定時無約束權重。此時我們隻考慮選擇滯後階數,讓軟件根據滯後階數,自行選擇權重,並輸出擬合效果最好的權重和模型。此時,每個滯後階數的權重(γ)大概率都是不一樣的,因此,又被稱之為無約束權重。
2. Step 權重
在無約束權重的基礎上,我們可以假設權重隻在有限的幾個常數中選擇,這也就是Step權重。Step權重直觀上就是像走臺階,前N個滯後階數的權重是相同的,N到2N權重也是相同的,以此類推。比如我們在用高頻日度數據回歸月度數據的時候,可以對第1~7天的數據選擇第1個等權重,對8~14天選擇第2個等權重。
3. Almon (PDL)權重
Almon權重將所有的權重都通過一個P階多項式表達出來。
gamma_{0} = a_{0}
gamma_{1} = a_{0}+a_{1}+a_{1}+...+a_{p}
gamma_{2} = a_{0}+2a_{1}+2^{2}a_{2}+...+2^{p}a_{p}
gamma_{j} = a_{0}+ja_{1}+j^{2}a_{2}+...+j^{p}a_{p}
這種方法最大的優勢就是進一步提高瞭估計的效率。我們不再需要像無約束權重一樣估計每一個權重系數,而是通過更少的多項式系數選擇將每一個權重表達出來。EViews一般采用三階多項式。
4. Exponential Amlon 權重
類似的我們也可以不用多項式形式而采用指數形式來表達權重。
gamma_{k} = frac{exp(ktheta_{1}+k^{2}theta_{2})}{sum_{j=0}^{k}{exp(jtheta_{1}+j^{2}theta_{2})}}
指數型權重,將要估計的參數進一步縮小到兩個。也就是說每一期滯後階數的權重,都可以用一個兩參數的指數函數換算出來。指數型權重的特點是當這兩個參數都等於0的時候,它可以退化為等權重算術平均形式,同時指數性權重也是高度非線性的,權重降得很快。
5. Beta 權重
Beta權重可以看作是更一般化非線性權重。
gamma_{k} = frac{omega_{k}^{theta_{1}-1}(1-omega_{k})^{theta_{2}-1})}{sum_{j=0}^{k}{omega_{k}^{theta_{1}-1}(1-omega_{k})^{theta_{2}-1}}}+theta_{3}
omega_{k}=frac{j-1}{k-1}
貝塔函數有三個待估參數 theta_{1}theta_{2}theta_{3} 。而這三個參數的變化可以將貝塔函數退化為多種形式,遞增,遞減,水平,U型,倒U型等。比如:
theta_{1}=theta_{2}=1,算數平均
theta_{1}=1, theta_{2}>1,遞增
theta_{1}=1, theta_{2}<1,遞減
混頻數據分析在EViews中比較有趣的一點是,由於數據的頻率不同,所以高頻和低頻數據不能放在同一個數據頁上。
我們希望先通過訓練集來訓練出一個模型,並根據訓練出的模型估計值與真實值的差,來判斷這個模型的好壞。在根據預測集來幫我們預測未來的數據。
比如,在Command窗口輸入:
sample train @first 2020Q2
sample forcast 2020Q3 @last
第一個命令指,我們將第1個數據到2020年第2季度的數據定義為訓練級,稱之為train。第二個命令指,我們將2022年第3季度數據到最後一個已知數據定義為預測集,稱之為forecast。
選擇Quick→ Estimate Equation,在Method field, 選擇MIDAS – Mixed Data Sampling Regression.
a85d70f3c4010a6b898285a7450c9646
可以選擇自動挑選滯後階數,也可以根據你的模型假設,固定滯後階數。要註意的是自動選擇滯後階數,僅適用於almon和step權重。Option選項,可以按需選擇權重。
631ad54ffabff93ab2f3939d773404be無約束權重結果step權重結果ebe21c59bdc2b3ffb5458be71aa66e13Almon權重結果
點擊Forcast,就對模型擬合進行評價,Dynamic是預測數據進行再輸入,Static是用真實值再輸入,所以Static方法隻能外延一步。
Eview會給4種判斷模型優劣的參數,所有參數都是越小越好。
Root Mean Squared Error和Mean Absolute Error會受到數據大小縮放的影響。Mean Abs. Percent Error 和 Theil Inequality Coefficient兩個取值均在0~1之間,不會受到數據縮放變換的影響。
Bias是預測值與真實值之間的差距, Variance是預測值方差和真實值的方差的差距, Covariance判斷的是仍未解釋的非系統性預測偏誤。
對模型進行外推預測,要將自變量進行拓展延長,否則模型無法輸出數據。
參考文獻:
————————————————————
學無止境,永保好奇~
洗面奶什麼時候用最好洗面奶晚上用最好。我們的皮膚在經歷瞭一天之後,會沾上許多外界的灰塵或者污垢,而且也會因各種外界環...
報名時間:發佈之日起至2月28日因教育教學工作需要,經嘉興市人力資源和社會保障部備案,嘉興市教育局所屬部分事業單位決定面...