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

พล็อต Efficient Frontier

ในที่สุดเราก็สามารถพล็อตผลลัพธ์ของพอร์ตโฟลิโอ MPT ได้แล้ว ซึ่งแสดงให้เห็น "efficient frontier" กราฟนี้คือการพล็อตความผันผวน (volatility) เทียบกับผลตอบแทน (returns) และช่วยให้เห็นภาพความสัมพันธ์ระหว่างความเสี่ยงและผลตอบแทนของพอร์ตโฟลิโอต่างๆ จุดที่อยู่แนวขอบบนซ้ายของกลุ่มจุดข้อมูลคือตัวเลือกที่ดีที่สุด (ผลตอบแทนสูงสุดสำหรับความเสี่ยงที่กำหนด) ซึ่งนั่นคือ efficient frontier

ในการสร้างกราฟนี้ จะใช้วันที่ล่าสุดใน dictionary covariances ที่สร้างขึ้นจากแบบฝึกหัดก่อนหน้า dictionary นี้มีวันที่เป็น keys ดังนั้นจึงใช้ sorted() และ .keys() เพื่อเรียง keys แล้วดึงรายการสุดท้ายด้วย Python indexing ([-1]) จากนั้นใช้ matplotlib เพื่อสร้าง scatter plot ระหว่าง variance กับ returns และดู efficient frontier ของวันที่ล่าสุดในข้อมูล

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

Machine Learning สำหรับการเงินด้วย Python

ดูคอร์ส

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

  • ดึงวันที่ล่าสุดจาก dictionary covariances โดยจำไว้ว่าวันที่คือ keys
  • พล็อต volatility เทียบกับ returns (portfolio_returns) ของวันที่ล่าสุดในรูปแบบ scatter plot และกำหนดค่า alpha สำหรับความโปร่งใสเป็น 0.1

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

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

# Get latest date of available data
date = sorted(covariances.____)[____]  

# Plot efficient frontier
# warning: this can take at least 10s for the plot to execute...
plt.scatter(x=portfolio_volatility[date], y=____,  alpha=____)
plt.xlabel('Volatility')
plt.ylabel('Returns')
plt.show()
แก้ไขและรันโค้ด