ความผันผวนแบบ GARCH ทำให้ความแปรปรวนของผลตอบแทนเปลี่ยนแปลงตามเวลา

GARCH Models in R

Kris Boudt

Professor of finance and econometrics

ความแปรปรวนร่วมแบบ GARCH

หากผลตอบแทนของสินทรัพย์สองตัว $R_{1,t}$ และ $R_{2,t}$ มีสหสัมพันธ์ $\rho$ และความผันผวนที่เปลี่ยนแปลงตามเวลา $\sigma_{1,t}$ และ $\sigma_{2,t}$ แล้ว ค่าความแปรปรวนร่วมของทั้งสองคือ:

$$ \sigma_{12, t} = \rho \sigma_{1, t} \sigma_{2, t} $$

GARCH Models in R

การประมาณค่าความแปรปรวนร่วมแบบ GARCH ใน 4 ขั้นตอน

ขั้นที่ 1: ใช้ ugarchfit() ประมาณโมเดล GARCH สำหรับชุดผลตอบแทนแต่ละชุด

msftgarchfit <- ugarchfit(data = msftret, spec = garchspec) 
wmtgarchfit <- ugarchfit(data = wmtret, spec = garchspec)

ขั้นที่ 2: ใช้ residuals() คำนวณผลตอบแทนที่ผ่านการทำให้เป็นมาตรฐาน

stdmsftret <- residuals(msftgarchfit, standardize = TRUE)
stdwmtret <- residuals(wmtgarchfit, standardize = TRUE)

ขั้นที่ 3: ใช้ cor() ประมาณค่า $\rho$ จากสหสัมพันธ์ตัวอย่างของผลตอบแทนที่ผ่านการทำให้เป็นมาตรฐาน

msftwmtcor <- as.numeric(cor(stdmsftret, stdwmtret)) # equals 0.298795
GARCH Models in R

การประมาณค่าความแปรปรวนร่วมแบบ GARCH ใน 4 ขั้นตอน

ขั้นที่ 4: คำนวณความแปรปรวนร่วมแบบ GARCH โดยคูณค่าสหสัมพันธ์และความผันผวนที่ประมาณได้

msftwmtcov <- msftwmtcor * sigma(msftgarchfit) * sigma(wmtgarchfit)

ความแปรปรวนร่วมแบบ GARCH

GARCH Models in R

การประยุกต์ใช้ความแปรปรวนร่วมในด้านการเงิน

  • มีมากมาย!
  • กรณีสำคัญ: การหาค่าเหมาะสุดของความแปรปรวนของพอร์ตโฟลิโอ
  • ขึ้นอยู่กับ:
    • น้ำหนักพอร์ตโฟลิโอ
    • ความแปรปรวนของสินทรัพย์แต่ละตัว
    • ความแปรปรวนร่วมระหว่างผลตอบแทนของสินทรัพย์
GARCH Models in R

การประยุกต์ใช้กับการหาค่าเหมาะสุดของพอร์ตโฟลิโอ

ความแปรปรวนของพอร์ตโฟลิโอสองสินทรัพย์ที่ลงทุนน้ำหนัก $w_{1,t}$ ในสินทรัพย์ 1 และ $(1-w_{1,t})$ ในสินทรัพย์ 2:

$$ \sigma^{2}_{p, t} = w^{2}_{1, t} \sigma^{2}_{1, t} + (1 - w_{1, t})^{2} \sigma^{2}_{2, t} + 2 w_{1, t} (1 - w_{1, t}) \sigma_{12, t} $$

มีหลายวิธีในการกำหนด $w_{1,t}$ ที่เหมาะสม วิธีหนึ่งคือเลือก $w_{1,t}$ ที่ทำให้ความแปรปรวนของพอร์ตโฟลิโอ $\sigma_{t}^2$ มีค่าน้อยที่สุด

เงื่อนไขอันดับหนึ่งสำหรับหาพอร์ตโฟลิโอที่มีความแปรปรวนต่ำสุด:

$$ \frac{\partial \sigma^{2}_{p, t}}{\partial w_{1, t}} = 2 w_{1, t} (\sigma^{2}_{1, t} + \sigma^{2}_{2, t} - 2 \sigma_{12, t}) - 2 (\sigma^{2}_{2, t} - \sigma_{12, t}) = 0 $$

GARCH Models in R

น้ำหนักพอร์ตโฟลิโอที่มีความแปรปรวนต่ำสุด

คำตอบ: น้ำหนักพอร์ตโฟลิโอที่มีความแปรปรวนต่ำสุด

การคำนวณใน R:

msftvar <- sigma(msftgarchfit) ^ 2
wmtvar <- sigma(wmtgarchfit) ^ 2
msftwmtcov <- msftwmtcor * sigma(msftgarchfit) * sigma(wmtgarchfit)
msftweight <- (wmtvar - msftwmtcov) / (msftvar + wmtvar - 2 * msftwmtcov)
GARCH Models in R

ความแปรปรวนร่วมแบบ GARCH

GARCH Models in R

Beta แบบพลวัต

การประมาณค่า beta ของหุ้นแสดงถึงความเสี่ยงเชิงระบบของหุ้นนั้น

นิยามจากความแปรปรวนร่วมระหว่างผลตอบแทนของหุ้นกับผลตอบแทนของตลาด หารด้วยความแปรปรวนของผลตอบแทนตลาด

$$ \beta_{t} = \frac{\textnormal{covariance between the stock return and the market return}}{\textnormal{variance of the market return}} $$

จำเป็นต้องใช้ในการคำนวณส่วนชดเชยความเสี่ยง ยิ่งค่า beta สูง หุ้นยิ่งมีความเสี่ยงมาก และอัตราผลตอบแทนที่ต้องการก็ยิ่งสูงตาม

สำหรับหุ้นในตลาดสหรัฐฯ ผลตอบแทนของตลาดคือผลตอบแทนของดัชนี S&P 500

GARCH Models in R

Beta รายวันของ MSFT

คำนวณความแปรปรวนร่วมระหว่างผลตอบแทน MSFT และ S&P 500

msftsp500cor <- as.numeric(cor(stdmsftret, stdsp500ret))
msftsp500cov <- msftsp500cor * sigma(msftgarchfit) * sigma(sp500garchfit)

คำนวณความแปรปรวนของผลตอบแทน S&P 500

sp500var <- sigma(sp500garchfit) ^ 2

คำนวณค่า beta

msftbeta <- msftsp500cov / sp500var
GARCH Models in R

MSFT beta

GARCH Models in R

มาฝึกกันเถอะ!

GARCH Models in R

Preparing Video For Download...