ODDFYIELD คำนวณผลตอบแทนประจำปี (yield) ของตราสารที่มีช่วงคูปองแรกแปลก แตกต่างจาก ODDLPRICE ที่คำนวณราคา ODDFYIELD คำนวณอัตราผลตอบแทนแทน ใช้สำหรับวิเคราะห์บอนด์ที่มีช่วงคูปองแรกไม่ปกติ
=ODDFYIELD(settlement, maturity, issue, first_coupon, rate, pr, redemption, frequency, [basis])
=ODDFYIELD(settlement, maturity, issue, first_coupon, rate, pr, redemption, frequency, [basis])
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| settlement | Date | Yes | วันที่ชำระหนี้ – วันที่ซื้อตราสาร (วันที่ตราสารถูกโอนจากผู้ออกตราสารให้แก่ผู้ซื้อ) | |
| maturity | Date | Yes | วันที่ครบกำหนด – วันที่ตราสารชำระคืนเต็มจำนวน | |
| issue | Date | Yes | วันที่ออกตราสาร – วันที่ตราสารถูกออกครั้งแรก | |
| first_coupon | Date | Yes | วันที่ชำระคูปองแรก – วันที่ต้องชำระดอกเบี้ยครั้งแรก (ช่วงนี้อาจแปลกกว่าปกติ) | |
| rate | Percentage/Number | Yes | อัตราคูปองประจำปี – อัตราดอกเบี้ยประจำปีของตราสาร (เช่น 0.05 สำหรับ 5% หรือ 5%) | |
| pr | Number | Yes | ราคา – ราคาปัจจุบันของตราสารต่อมูลค่าพิมพ์ 100 บาท (เช่น 95.5 หมายถึง 95.5% ของมูลค่า) | |
| redemption | Number | Yes | มูลค่าชำระคืน – มูลค่าที่ตราสารจะชำระคืนเมื่อครบกำหนด ต่อมูลค่าพิมพ์ 100 บาท (โดยปกติ = 100) | |
| frequency | Number | Yes | ความถี่คูปอง – จำนวนครั้งที่ชำระคูปองต่อปี: 1 = รายปี, 2 = รายครึ่งปี, 4 = รายไตรมาส, 12 = รายเดือน | |
| basis | Number | Optional | 0 | พื้นฐานการนับวัน: 0 = 30/360 (NASD), 1 = Actual/Actual, 2 = Actual/360, 3 = Actual/365, 4 = 30/360 (European). ค่าเริ่มต้น = 0 |
ODDFYIELD(DATE(2024,1,15), DATE(2026,6,15), DATE(2024,1,1), DATE(2024,3,15), 0.05, 98.5, 100, 2, 0)=ODDFYIELD(DATE(2024,1,15), DATE(2026,6,15), DATE(2024,1,1), DATE(2024,3,15), 0.05, 98.5, 100, 2, 0)
0.0519 (หรือ 5.19%)
ODDFYIELD(DATE(2024,6,1), DATE(2029,12,1), DATE(2024,1,1), DATE(2025,6,1), 0.04, 99.8, 100, 2, 1)=ODDFYIELD(DATE(2024,6,1), DATE(2029,12,1), DATE(2024,1,1), DATE(2025,6,1), 0.04, 99.8, 100, 2, 1)
0.0405 (หรือ 4.05%)
ODDFYIELD(B2, C2, A2, D2, E2, F2, G2, H2, I2)=ODDFYIELD(B2, C2, A2, D2, E2, F2, G2, H2, I2)
ผลตอบแทนของแต่ละตราสารในแถว
ODDFYIELD(A2, B2, C2, D2, E2, ODDLPRICE(A2, B2, C2, D2, 0.05, E2, F2, G2), F2, G2, H2)=ODDFYIELD(A2, B2, C2, D2, E2, ODDLPRICE(A2, B2, C2, D2, 0.05, E2, F2, G2), F2, G2, H2)
yield ที่สอดคล้องกับราคาจาก ODDLPRICE
ODDFYIELD คำนวณผลตอบแทนประจำปี (yield to maturity) ของบอนด์หรือตราสารที่มีช่วงคูปองแรกแปลก (odd first period) ใช้ได้ทั้งช่วงคูปองแรกสั้นกว่าหรือยาวกว่าปกติ
issue = วันออกตราสาร | first_coupon = วันชำระคูปองแรก (อาจแปลก) | settlement = วันซื้อตราสาร | maturity = วันตราสารครบกำหนด ลำดับเวลา: issue < first_coupon <= maturity และ settlement ต้องมาหลัง issue
ทั้งสอง ต้องเป็นตัวเลขไม่ใช่เปอร์เซ็นต์ ถ้า rate = 5% ให้ใส่ 0.05 หรือ 5 แล้วใช้ 5/100 redemption โดยปกติ = 100 (ชำระเต็มจำนวน)
Frequency = 2 = ชำระคูปองครึ่งปี (6 เดือนต่อครั้ง) | Frequency = 4 = ชำระไตรมาส (3 เดือนต่อครั้ง) ใช้ค่าที่สอดคล้องกับเงื่อนไขตราสารจริง
Excel 2003 ขึ้นไป รวมถึง Excel 365 ปลอดภัยใช้ได้ทั่วทุกเวอร์ชันสมัยใหม่
ถ้า first_coupon == maturity แสดงว่าช่วงคูปองแรก = ช่วงสุดท้าย ใช้ได้ แต่หากใกล้กันเกินไป อาจมีปัญหาความเที่ยงตรง ใช้ YIELD ธรรมดาแทนจะดีกว่า
ODDFYIELD คำนวณผลตอบแทนประจำปี (yield) ของตราสารที่มีช่วงคูปองแรกแปลก (odd first period)। ฟังก์ชันนี้เป็นเครื่องมือทางการเงินสำหรับนักลงทุนและวิเคราะห์ที่ต้องการประเมินอัตราผลตอบแทนของบอนด์ที่ออกมาด้วยช่วงคูปองแรกที่ไม่เป็นปกติ (สั้นหรือยาวกว่าปกติ)।
ที่เจ๋งคือ ODDFYIELD ใช้คู่กับ ODDLPRICE ได้ – คำนวณราคาจากผลตอบแทน หรือคำนวณผลตอบแทนจากราคา สนับสนุนความถี่คูปองหลากหลาย (รายปี รายครึ่งปี รายไตรมาส รายเดือน) และวิธีการนับวันหลากหลาย (Actual/Actual, 30/360, Actual/360 เป็นต้น)।
ส่วนตัวผม ODDFYIELD มีประโยชน์มากสำหรับผู้จัดการพอร์ตโฟลิโอบอนด์ และผู้ประเมินราคาตราสาร เพราะบอนด์ที่ออกใหม่มักมีช่วงคูปองแรกแปลก 😎