R

有人可以教我如何通過計算建構投資組合(例如使用 R、Excel 或 Eviews)

  • April 4, 2020

最近,我正在撰寫關於資產定價理論的論文。Fama 3因子模型的實證檢驗是本論文的重要組成部分。請讓我回顧一下 fama 模型。

Fama 3 因子模型是 $ r-R_f=α+β_m(K_m−R_f)+\beta_s⋅SMB+\beta_v⋅HML+e $

在哪裡 $ R_f $ 是無風險收益,( $ K_m−R_f $ ) 是溢價回報和 $ K_m $ 是市場回報,SMB是“小減大”的市值風險因素。HML是“減低”價值溢價風險因子。

請讓 mt 詳細說明我的問題。我有超過 500 隻股票及其月回報率、月市值和月賬面市值比(稱為 b/m)。時間間隔是從 01.2010 到 12.2015,然後因為數據是每月的,所以我有 60 個週期。這些數據在一個 Excel 文件中。

它的方法和我想做的是:

  • 對於每個時期的所有股票,計算市場價值的平均值。
  • 通過將每隻股票與平均值進行比較,將它們分成兩組(比如大號和小號)。如果股票的市值大於平均值,則將其歸入大盤組。如果小於平均值,則將它們放入小規模組。因此,對於每個時期,我們有兩組,就市場價值而言,大組和小組。
  • 對於每個時期,我們比較每個組內所有股票的 b/m,然後將它們進一步分為 3 組,稱為高 b/m(前 30%)組,中 b/m(從 30% 到 70% 的中間層級) ) 組和低 b/m (底部 30%) 組。即,對於每個時期,我們最終劃分為 6 個組。它們是 S/L、S/M、S/H 和B/LB/MB/H。例如,S/L組同時包含所有小市值和低 b/m 比率的股票。

這 6 個組只是 6 個組合。因此,對於每個時期,我們有 6 個不同的投資組合。

到目前為止,這是我的第一個階段。然後我有第二階段:

  1. 在每個時期得到 6 個不同的投資組合後,我們需要計算每個時期所有股票的加權平均收益。
  2. 我們需要計算每個時期的 SMB 和 HML。

$$ SMB=\frac{\left[\left(\frac{S}{L}+\frac{S}{M}+\frac{S}{H}\right)-\left(\frac{B}{L}+\frac{B}{M}+\frac{B}{H}\right)\right]}{3} $$

$$ HML=\frac{\left[\left(\frac{S}{H}+\frac{B}{H}\right)-\left(\frac{S}{L}+\frac{B}{L}\right)\right]}{2} $$. 其中 S/L,S/M….B/L 是每組的總回報。就像 S/L 是每隻股票收益的總和。

最後,我們得到時間序列數據,然後可以對這個序列數據進行回歸,並找出α和3 $ \beta $ .

所以,基本上這些都是我想做的。

現在我用excel手動計算,這確實是一個巨大的工作量,做這個很累。我仍處於第一階段的第 1 步。有沒有人有興趣告訴我如何通過計算將股票分成投資組合,並通過計算計算這些數據?

人們通常只是從法國的網站下載數據。但我的目標是在上海和香港等亞洲股市檢查 Fama 模型。歡迎所有答案,手動執行此操作真的很瘋狂而且很累。

無論如何,先謝謝大家。

首先,手工完成所有這些工作是不可想像的!你瘋了才想到!

其次,如果你想用不同的數據集重複你的工作,我建議你使用 R,因為一旦你編寫了一個腳本,你可以隨時使用它。但是,有一個“但是”:你不能認為我們會為你寫一些程式碼(你應該作為合著者在你的論文上寫下我們的名字)。您可以在這裡詢問您遇到的理論問題,或者您可以發布程式碼中不起作用的部分,我們很樂意為您提供幫助。在你必須進行的每一種研究中,你都會分析數據,而做到這一點的最好方法是使用像 R 這樣的軟體(我告訴你,遲早你必須學會編寫一些程式碼(甚至很小的)腳本)。一旦開始,您將永遠使用它。

鑑於此,您可以在網路上找到大量的 YouTube 教程、pdf 指南、腳本範例和社區(例如堆棧交換),隨時可以幫助您使用所需的任何軟體進行統計和計量經濟學分析的黑暗面(R、gretl、Stata、Eviews,甚至更多面向 MATLAB 或 Python 的程式)。

你的分析看起來很簡單(從某種意義上說,你不需要奇怪的包或函式來計算你的計算),你會自己發現 R 是多麼有用、強大並且不那麼難學。

我已經在我的網站上發布了從頭開始複製 Fama-French 因子(加上動量)的 R 程式碼。它假定您可以訪問 WRDS,但如果您有自己的數據,則可以開始使用您認為合適的程式碼。在您的情況下,您需要從我的 Main_Fama_French 文件的 Construct Fama-French Factors 部分開始,並查看 Support_Functions 文件中的 Form_CharSizePorts2 函式。

引用自:https://quant.stackexchange.com/questions/26302