การประเมินมูลค่าและวิเคราะห์พันธบัตรด้วย Python
Joshua Mayhew
Options Trader
-npf.pv(rate=0.05, nper=5, pmt=5, fv=100)
-npf.pv(rate=0.05, nper=10, pmt=5, fv=100)
100.00
100.00
หากอัตราดอกเบี้ยปรับขึ้นเป็น 6%:
-npf.pv(rate=0.06, nper=5, pmt=5, fv=100)
-npf.pv(rate=0.06, nper=10, pmt=5, fv=100)
95.79
92.64
พันธบัตร 5 ปี สูญเสียมูลค่า 4.21% ส่วนพันธบัตร 10 ปี สูญเสียมูลค่า 7.36%
พันธบัตร 10 ปี มีความอ่อนไหวต่อการเปลี่ยนแปลงอัตราดอกเบี้ยมากกว่า
เราจะใช้สูตรที่ง่ายขึ้นในการคำนวณ Duration:
${\large Duration = \frac{P_{down}\ -\ P_{up} }{2\ \times\ P\ \times\ \Delta y}}$
พันธบัตรอายุ 10 ปี คูปองรายปี 5% ผลตอบแทนจนครบกำหนด 4% Duration คือเท่าใด?
${ Duration = \frac{P_{down}\ -\ P_{up} }{2\ \times\ P\ \times\ \Delta y}}$
price = -npf.pv(rate=0.05, nper=10, pmt=5, fv=100)price_up = -npf.pv(rate=0.06, nper=10, pmt=5, fv=100) price_down = -npf.pv(rate=0.04, nper=10, pmt=5, fv=100)duration = (price_down - price_up) / (2 * price * 0.01) print(duration)
7.74
อัตราดอกเบี้ยเปลี่ยน 1% ทำให้ราคาพันธบัตรเปลี่ยนแปลง 7.74%
การประเมินมูลค่าและวิเคราะห์พันธบัตรด้วย Python