回歸分析股票數據缺失
⑴ 回歸分析法(探索變數之間的關系)
回歸分析法是一種常用的統計分析方法,它可以用來研究兩個或多個變數之間的關系,以及預測一個變數在給定其他變數的情況下的值。在實際應用中,回歸分析法被廣泛用於市場營銷、金融、醫學、社會科學等領域。本文將介紹回歸分析法的基本概念、操作步驟以及在探索變數之間的關系中的應用。
回歸分析法的基本概念
回歸分析法是一種用來研究兩個或多個變數之間關系的方法。其中,一個變數被稱為因變數,另一個或其他變數被稱為自變數。因變數是我們想要預測或解釋的變數,自變數是我們用來預測或解釋因變數的變數。回歸分析法的目標是建立一個數學模型,從而描述因變數和自變數之間的關系,並用這個模型來預測因變數的值。
回歸分析法的操作步驟
回歸分析法的操作步驟包括數據收集、數據處理、模型建立和模型評估等步驟。
數據收集
在進行回歸分析之前,我們需要收集相關的數據。數據可以來自於實驗、調查、觀察等方式。在收集數據時,我們需要注意數據的質量和可靠性,以及數據是否具有代表性。
數據處理
在收集到數據之後,我們需要對數據進行處理。數據處理的步驟包括數據清洗、變數選擇、數據變換等。數據清洗是指對數據中的異常值、缺失值等進行處理,以保證數據的質量和可靠性。變數選擇是指從所有的自變數中選擇出與因變數相關性最強的自變數。數據變換是指對數據進行變換,以滿足建模的要求。
模型建立
在數據處理之後,我們需要建立回歸模型。回歸模型可以是線性模型、非線性模型等。線性模型是指因變數和自變數之間的關系可以用一條直線來描述,非線性模型是指因變數和自變數之間的關系不能用一條直線來描述。建立回歸模型需要選擇合適的自變數、確定模型的函數形式、估計模型的參數等。
模型評估
在建立回歸模型之後,我們需要對模型進行評估。模型評估的指標包括R方值、標准誤差、殘差分析等。R方值是用來評估模型的擬合程度,值越大說明模型的擬合程度越好;標准誤差是用來評估模型的預測精度,值越小說明模型的預測精度越高;殘差分析是用來檢驗模型的假設是否成立,殘差越小說明模型的假設越成立。
回歸分析法在探索變數之間的關系中的應用
回歸分析法在探索變數之間的關系中有廣泛的應用。例如,在市場營銷中,我們可以用回歸分析法來研究產品價格和銷量之間的關系,以及廣告投入和銷售額之間的關系;在金融領域中,我們可以用回歸分析法來研究股票價格和市場指數之間的關系,以及利率和經濟增長之間的關系;在醫學領域中,我們可以用回歸分析法來研究患者年齡和疾病風險之間的關系,以及葯物劑量和治療效果之間的關系。
⑵ 什麼時候用回歸分析,什麼時候用時間序列
兩者的核心區別在於對數據的假設回歸分析假設每個數據點都是獨立的,而時間序列則是利用數據之間的相關性進行預測。
本文會先說明兩者對數據的具體假設差異,再說明AR模型為什麼雖然看上去像回歸分析但還是有差別,最後也提到一個常見的混淆兩者後在金融方向可能出現的問題。
回歸分析對數據的假設:獨立性在回歸分析中,我們假設數據是相互獨立的。這種獨立性體現在兩個方面:一方面,自變數(X)是固定的,已被觀測到的值,另一方面,每個因變數(y)的誤差項是獨立同分布,對於線性回歸模型來說,誤差項是獨立同分布的正態分布,並且滿足均值為0,方差恆定。
這種數據的獨立性的具體表現就是:在回歸分析中,數據順序可以任意交換。在建模的時候,你可以隨機選取數據循序進行模型訓練,也可以隨機選取一部分數據進行訓練集和驗證集的拆分。也正因為如此,在驗證集中,每個預測值的誤差都是相對恆定的:不會存在誤差的積累,導致預測准確度越來越低。
時間序列對數據的假設:相關性但對於時間序列分析而言,我們必須假設而且利用數據的相關性。核心的原因是我們沒有其他任何的外部數據,只能利用現有的數據走向來預測未來。因此,我們需要假設每個數據點之間有相關性,並且通過建模找到對應的相關性,利用它去預測未來的數據走向。這也是為什麼經典的時間序列分析(ARIMA)會用ACF(自相關系數)和PACF(偏自相關系數)來觀察數據之間的相關性。
ACF和PACF分別用兩種方式衡量數據點與數據點之間的相關性時間序列對相關性的假設直接違背了回歸分析的獨立性假設。在多段時間序列預測中,一方面,對於未來預測的自變數可能無法真實的觀察到,另一方面,隨著預測越來越遠,誤差會逐漸積累:你對於長遠未來的預測應該會比近期預測更不確定。因此,時間序列分析需要採用一種完全不同的視角,用不同的模型去進行分析研究。
AR模型和線性回歸模型的「相似」和區別時間序列分析中一個基礎模型就是AR(Auto-Regressive)模型。它利用過去的數據點來預測未來。舉例而言,AR(1)模型利用當前時刻的數據點預測未來的值,它們的數學關系可以被表示為:
它的表達形式的確和線性回歸模型非常類似,甚至連一般的AR(n)模型都和線性回歸有很高的相似性。唯一的差別就是等式右邊的自變數(X)變成了過去的因變數(y)
而正是因為這一點微小的差異,導致兩者的解完全不同。在AR模型中,由於模型自變數成為了過去的因變數,使得自變數與過去的誤差之間有相關性。而這種相關性使得
利用線性模型得到的AR模型的解會是有偏估計(biased)。對於上述結論的實際證明需要引入過多的概念。在此我們只對AR(1)模型作為一個特例來分析。不失一般性,我們可以通過平移數據將AR(1)模型表示成如下的形式:
對於這類模型,線性回歸會給出以下的估計值:對於一般的線性回歸模型而言,由於所有的自變數都會被視為已經觀測到的真實值。所以當我們取均值的時候,我們可以把分母當作已知,通過過去觀測值和未來誤差無關的性質得到無偏的結論。
利用回歸模型預測AR模型的數據模擬結果:參數估計會是有偏估計事實上,我們會用線性回歸模型去近似求解AR模型。因為雖然結果會是有偏的,但是卻是一致估計。也就是說,當數據量足夠大的時候,求解的值會收斂於真實值。這里就不再做展開了。
忽視獨立性的後果:金融方向的常見錯誤希望看到這里你已經弄懂了為什麼不能混淆模型的假設:尤其是獨立性或相關性的假設。接下來我會說一個我見過的
因為混淆假設導致的金融方向的錯誤隨著機器學習的發展,很多人希望能夠將機器學習和金融市場結合起來。利用數據建模來對股票價格進行預測。他們會用傳統的機器學習方法將得到的數據隨機的分配成訓練集和測試集。利用訓練集訓練模型去預測股票漲跌的概率(漲或跌的二維分類問題)。然後當他們去將模型應用到測試集時,他們發現模型的表現非常優秀——能夠達到80~90%的准確度。但是在實際應用中卻沒有這么好的表現。
造成這個錯誤的原因就是他們沒有認識到數據是高度相關的。對於時間序列,我們不能通過隨機分配去安排訓練集和測試集,否則就會出現「利用未來數據」來預測「過去走向」的問題。這個時候,即使你的模型在你的測試集表現出色,也不代表他真的能預測未來股價的走向。
總結時間序列和回歸分析的主要區別在於對數據的假設:回歸分析假設每個數據點都是獨立的,而時間序列則是利用數據之間的相關性進行預測。雖然線性回歸和AR模型看上去有很大的相似性。但由於缺失了獨立性,利用線性回歸求解的AR模型參數會是有偏的。但又由於這個解是一致的,所以在實際運用中還是利用線性回歸來近似AR模型。忽視或假設數據的獨立性很可能會造成模型的失效。金融市場的預測的建模尤其需要注意這一點。