เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การคำนวณ Beta ด้วย CAPM

มีหลายวิธีในการสร้างโมเดลผลตอบแทนของหุ้น แต่ Capital Asset Pricing Model หรือ CAPM นั้นเป็นหนึ่งในโมเดลที่รู้จักกันอย่างแพร่หลายที่สุด:

$$ E(R_{P}) - RF = \beta_{{P}}(E(R_{M})-RF)\ $$

  • \(E(R_{P}) - RF\): ผลตอบแทนส่วนเกินที่คาดหวังของหุ้นหรือพอร์ตโฟลิโอ P
  • \(E(R_{M}) - RF\): ผลตอบแทนส่วนเกินที่คาดหวังของพอร์ตโฟลิโอตลาดในวงกว้าง B
  • \(RF\): อัตราผลตอบแทนปราศจากความเสี่ยงของภูมิภาค
  • \(\beta_{{P}}\): Beta ของพอร์ตโฟลิโอ หรือระดับการรับความเสี่ยงต่อพอร์ตโฟลิโอตลาดในวงกว้าง B

สามารถเรียกใช้เมธอด .fit() จาก statsmodels.formula.api บนออบเจกต์โมเดล .ols(formula, data) เพื่อทำการวิเคราะห์ และเรียกเมธอด .summary() บนออบเจกต์ผลการวิเคราะห์เพื่อตรวจสอบผลลัพธ์

DataFrame FamaFrenchData มีอยู่ใน workspace ของคุณแล้ว และมีข้อมูลที่จำเป็นสำหรับแบบฝึกหัดนี้

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Python เบื้องต้นสำหรับการบริหารความเสี่ยงพอร์ตการลงทุน

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ขั้นแรก ให้ import statsmodels.formula.api โดยใช้ชื่อว่า smf
  • กำหนดโมเดลการถดถอยที่อธิบาย Portfolio_Excess ในรูปฟังก์ชันของ Market_Excess
  • ดึงค่า adjusted r-squared ของโมเดลการถดถอยที่ fit แล้ว และแสดงผลออกมา
  • ดึงค่า market beta ของพอร์ตโฟลิโอ

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Import statsmodels.formula.api
import ____ as ____ 

# Define the regression formula
CAPM_model = smf.ols(formula=____, data=FamaFrenchData)

# Print adjusted r-squared of the fitted regression
CAPM_fit = CAPM_model.fit()
print(CAPM_fit____)

# Extract the beta
regression_beta = CAPM_fit____
print(regression_beta)
แก้ไขและรันโค้ด