1. 程式人生 > >python使用LASSO迴歸預測股票收益

python使用LASSO迴歸預測股票收益

使用LASSO預測收益

1.示例

一個熱門目標。只要有金融經濟學家,金融經濟學家一直在尋找能夠預測股票回報的變數。對於最近的一些例子,想想Jegadeesh和Titman(1993),它表明股票的當前收益是由前幾個月的股票收益預測的,侯(2007),這表明一個行業中最小股票的當前回報是通過行業中最大股票的滯後回報預測,以及Cohen和Frazzini(2008),這表明股票的當前回報是由其主要客戶的滯後回報預測的。

兩步流程。當你考慮它時,找到這些變數實際上包括兩個獨立的問題,識別和估計。首先,你必須使用你的直覺來識別一個新的預測器,然後你必須使用統計來估計這個新的預測器的質量,

不能總是使用直覺。但是,現代金融市場龐大,快速,密集。可預測性並不總是發生在易於人們直覺的尺度上,使得解決第一個問題的標準方法成為問題。例如,聯邦訊號公司的滯後收益率是2010 年10月一小時內所有紐約證券交易所上市電信股票的重要預測指標。你真的可以從虛假的預測指標中捕獲這個特定的變數嗎?單憑直覺?而且,你究竟應該在幾分鐘內完成這項工作?

2.使用LASSO

LASSO定義。LASSO是一種懲罰迴歸技術,在Tibshirani(1996)中引入。它通過投注稀疏性來同時識別和估計最重要的係數,使用更短的取樣週期 - 也就是說,假設在任何時間點只有少數變數實際上很重要。正式使用LASSO意味著解決下面的問題, 事實上,如果你忽略了最右邊的術語 - 懲罰函式,那麼這個優化問題就只是一個OLS迴歸。

懲罰功能。但是,這個懲罰函式是LASSO成功的祕訣,允許估算器對最大系數給予優先處理,完全忽略較小系數。為了更好地理解LASSO如何做到這一點,當右側變數不相關且具有單位方差時 。一方面,這個解決方案意味著,如果OLS估計一個大系數,那麼LASSO將提供類似的估計,。另一方面,解決方案意味著,如果OLS估計了足夠小的係數,那麼LASSO將會選擇。因為LASSO可以將除少數係數之外的所有係數設定為零,即使樣本長度比可能的預測變數的數量短得多,它也可用於識別最重要的預測變數。從道德上講,如果只有預測變數非零,那麼你應該只需要幾個 觀察選擇然後估計這幾個重要係數的大小。

3.模擬分析

我執行模擬來展示如何使用LASSO來預測未來的回報。您可以在此處找到所有相關程式碼。

資料模擬。每次模擬都涉及為期間的股票產生回報。每個時期,所有股票的回報都受到一部分股票的回報,以及特殊衝擊的影響

使模型適合資料。用於從每個週期到,我估計在第一庫存LASSO,如(公式定義2使用先前的)資料的時間段,其中可能預測是股票。這意味著使用時間段來估計具有潛在右側變數的模型。作為有用的基準,我還從方程(1)和oracle迴歸估計自迴歸模型。在本規範中,我估計了一個OLS迴歸真正的預測因子是右側變數。顯然,在現實世界中,你不知道真正的預測器是什麼,但是這個規範給出了你可以達到的最佳擬合的估計。在將每個模型擬合到先前的資料週期之後,然後我在st期間進行樣本外預測。

預測迴歸。然後,我通過分析一系列預測迴歸分析調整後的統計資料,檢查這些預測與第一個資產的實現回報的緊密程度。例如,我將LASSO的回報預測用於估算下面的迴歸

4.調整引數

懲罰引數選擇。使LASSO適合資料涉及選擇懲罰引數,。我這樣做是通過選擇在資料的第一個時段期間具有最高樣本外預測的懲罰引數。這就是為什麼上面的預測迴歸僅使用從而不是使用資料開始的原因。下圖顯示了模擬中懲罰引數選擇的分佈。離散跳轉來自我在執行程式碼時考慮的可能s 的離散網格。

預測數量。最後,如果你看一下調整後數字中標有“Oracle”的面板,你會發現LASSO的樣本外預測能力大約是真實模型預測能力的三分之一。這是因為LASSO沒有完美地選擇稀疏訊號。下圖的右側面板顯示LASSO通常只選出這些訊號中最重要的訊號。更重要的是,左側面板顯示LASSO還鎖定了大量的虛假訊號。這一結果表明,您可以通過選擇更高的懲罰引數來提高LASSO的預測能力。

5.什麼時候失敗?

安慰劑測試。我通過研究兩個替代模擬來結束這篇文章,其中LASSO不應該增加任何預測能力。在第一個替代設定中,沒有衝擊。也就是說,使用下面的模型模擬股票的收益,

(7)

在第二種情況下,有太多的衝擊:。下圖顯示,在這兩種情況下,LASSO都不會增加任何預測能力。因此,執行這些模擬提供了一對不錯的安慰劑測試,顯示LASSO確實在返回的橫截面中拾取稀疏訊號。

▍關注我們

大資料部落       -中國專業的第三方資料服務提供商,提供定製化的一站式資料探勘和

統計分析和資料探勘諮詢服務:y0.cn/teradat(諮詢服務請聯絡官網客服

點選這裡給我發訊息QQ:3025393450

【服務場景】        

 科研專案; 公司專案外包;線上線下一對一培訓;學術研究。

【大資料部落】提供定製化的一站式資料探勘和統計分析諮詢服務

 

分享最新的大資料資訊,每天學習一點資料分析,讓我們一起做有態度的資料人【大資料部落】大資料部落提供定製化的一站式資料探勘和統計分析諮詢服務

微信客服號:lico_9e

QQ交流群:186388004  

歡迎關注微信公眾號,瞭解更多資料乾貨資訊!