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

การฟิต t distribution กับข้อมูล

โดยทั่วไปแล้ว Student t distribution จะสอดคล้องกับผลตอบแทนรายวัน รายสัปดาห์ และรายเดือนได้ดีกว่า normal distribution มาก

สร้าง Student t distribution ได้โดยใช้ฟังก์ชัน fit.st() ในแพ็กเกจ QRM โมเดลที่ฟิตแล้วจะมีคอมโพเนนต์การประมาณค่าพารามิเตอร์ชื่อ par.ests ซึ่งสามารถกำหนดให้กับลิสต์ tpars เพื่อเก็บค่า nu, mu, และ sigma ไว้ใช้ในภายหลัง:

> tfit <- fit.st(ftse)
> tpars <- tfit$par.ests
> tpars
          nu           mu        sigma
2.949514e+00 4.429863e-05 1.216422e-02

ในแบบฝึกหัดนี้ จะฟิต Student t distribution กับ log-return รายวันของดัชนี Dow Jones ในช่วงปี 2008-2011 ที่เก็บอยู่ใน djx จากนั้นจะพล็อตฮิสโทแกรมของข้อมูลและวางเส้นสีแดงทับเพื่อแสดง t density ที่ฟิตแล้ว ข้อมูล djx และแพ็กเกจ QRM ถูกโหลดไว้ให้แล้ว

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

Quantitative Risk Management in R

ดูคอร์ส

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

  • ใช้ fit.st() เพื่อฟิต Student t distribution กับข้อมูลใน djx และกำหนดผลลัพธ์ให้กับ tfit
  • กำหนดคอมโพเนนต์ par.ests ของโมเดลที่ฟิตแล้วให้กับ tpars และกำหนดองค์ประกอบของ tpars ให้กับ nu, mu, และ sigma ตามลำดับ
  • เติมโค้ดใน hist() เพื่อพล็อตฮิสโทแกรมของ djx
  • เติมโค้ดใน dt() เพื่อคำนวณ t density ที่ฟิตแล้วที่ค่า djx และกำหนดให้กับ yvals โดยอ้างอิงสมการจากวิดีโอ
  • เติมโค้ดใน lines() เพื่อเพิ่มเส้นสีแดงลงในฮิสโทแกรมของ djx เพื่อแสดง t density ที่ฟิตแล้ว

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

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

# Fit a Student t distribution to djx
tfit <- ___(___)

# Define tpars, nu, mu, and sigma
tpars <- ___
nu <- ___
mu <- ___
sigma <- ___

# Plot a histogram of djx
hist(___, nclass = 20, probability = TRUE, ylim = range(0, 40))

# Compute the fitted t density at the values djx
yvals <- dt((___ - ___)/___, df = ___)/___

# Superimpose a red line to show the fitted t density
lines(___, yvals, col = "red")
แก้ไขและรันโค้ด