固定收益
自動修復 QuantLib 的 addFixing() 中失去的浮動利率
由於浮動利率債券的票面利率是定期固定的,為了計算債券的清潔價格,必須告訴定價引擎考慮以前的 LIBOR 利率固定。
如果我是對的(我是一個非常QuantLib的菜鳥),這裡有一個它是如何工作的例子:在
BONDS TO BE PRICED
本章中你可以看到... libor3m->addFixing(Date(17, July, 2008),0.0278625); ...
表示最後固定日期是 2008 年 7 月 17 日,中央銀行確定的利率等於 $ 2.79% $ 每年一次。
現在讓您使用QuantLibXL來
qlIndexAddFixings()
實際製作相同的C++
程式碼(然後將修復用作觸發器qlBondSetCouponPricer()
),但您正在玩評估日期和十幾個債券:在這種情況下,您無法指定修復手動,您既不需要真實的過去值,也不需要聽起來很可能的東西。無論債券和評估日期如何,如何在不手動設置的情況下使每個債券的定價都等於預設值?
從對像中提取所需的最後固定日期可能就足夠了
FloatingRateBond
。
我想有答案:
- 使用
qlBondPreviousCashFlowDate()
指向您的FloatingRateBond
對象來獲取最後付款日期;- 用於
qlInterestRateIndexFixingDate()
獲取參考最後付款日期的固定日期;- 用於
qlIndexAddFixings()
為您在上面得到的固定日期添加固定利率;- 如果它們共享相同的債券,則對您的每一個債券重複
IborIndex
。到目前為止,我已經使用電子表格通過
qlCalendarAdvance()
(目標日曆)修改的幾個評估日期嘗試了這個程序Bonds.xls
,但是將來從 2M 到 12M 的間隔不會產生任何問題,並且定價引擎總是能夠找到價格以浮動利率債券為例。PS:如果熟悉該
C++
版本的人想用該語言解釋程序,我相信它會非常感激。