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

การพล็อตกราฟราคาพันธบัตรเทียบกับ Yield

การพล็อตกราฟราคาพันธบัตรเทียบกับ yield ช่วยให้วิเคราะห์ได้ว่าพันธบัตรหรือพอร์ตโฟลิโอพันธบัตรจะเปลี่ยนแปลงอย่างไรเมื่ออัตราดอกเบี้ยในตลาดอยู่ที่ระดับต่าง ๆ

ในแบบฝึกหัดนี้ คุณจะสร้างกราฟราคาพันธบัตรเทียบกับ yield สำหรับพันธบัตร 2 ตัวที่มีอายุต่างกัน โดยเพิ่มคอลัมน์ใน DataFrame ของ pandas สำหรับพันธบัตรแต่ละตัว พันธบัตรทั้งสองจะมีอัตราดอกเบี้ย (coupon) 5% เหมือนกัน แต่มีอายุต่างกัน คือ 5 ปี และ 10 ปี

ได้นำเข้า numpy, numpy_financial, pandas และ matplotlib ให้แล้วในชื่อ np, npf, pd และ plt ตามลำดับ

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

การประเมินมูลค่าและวิเคราะห์พันธบัตรด้วย Python

ดูคอร์ส

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

  • สร้างอาร์เรย์ของค่า yield พันธบัตรตั้งแต่ 0 ถึง 20 (ไม่รวม 20) โดยเพิ่มทีละ 0.1
  • แปลงอาร์เรย์นี้เป็น DataFrame ของ pandas และตั้งชื่อคอลัมน์ว่า bond_yield
  • เพิ่มอีก 2 คอลัมน์ สำหรับพันธบัตรแต่ละตัว (5 ปี และ 10 ปี) แล้วคำนวณราคาพันธบัตรสำหรับแต่ละระดับ yield
  • พล็อตกราฟของพันธบัตรทั้งสองตัว โดยกำหนดป้ายกำกับแกน x เป็น Yield (%) และแกน y เป็น Bond Price (USD)

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

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

# Create an array of bond yields and convert to DataFrame
bond_yields = np.arange(____, ____, ____)
bond = pd.DataFrame(____, columns=['____'])

# Add columns for different bonds
bond['bond_price_5Y'] = -npf.pv(rate=bond['bond_yield'] / 100, nper=____, pmt=____, fv=____)
bond['bond_price_10Y'] = -npf.pv(rate=____, nper=____, pmt=____, fv=____)

# Plot graph of bonds
plt.plot(bond['bond_yield'], bond['bond_price_5Y'], label='5 Year Bond')
plt.plot(____, ____, label='10 Year Bond')
plt.xlabel(____)
plt.ylabel(____)
plt.legend()
plt.show()
แก้ไขและรันโค้ด