固定收益

自動修復 QuantLib 的 addFixing() 中失去的浮動利率

  • September 19, 2013

由於浮動利率債券的票面利率是定期固定的,為了計算債券的清潔價格,必須告訴定價引擎考慮以前的 LIBOR 利率固定。

如果我是對的(我是一個非常QuantLib的菜鳥),這裡有一個它是如何工作的例子:在BONDS TO BE PRICED本章中你可以看到

...
libor3m->addFixing(Date(17, July, 2008),0.0278625);
...

表示最後固定日期是 2008 年 7 月 17 日,中央銀行確定的利率等於 $ 2.79% $ 每年一次。

現在讓您使用QuantLibXLqlIndexAddFixings()實際製作相同的C++程式碼(然後將修復用作觸發器qlBondSetCouponPricer()),但您正在玩評估日期和十幾個債券:在這種情況下,您無法指定修復手動,您既不需要真實的過去值,也不需要聽起來很可能的東西。

無論債券和評估日期如何,如何在不手動設置的情況下使每個債券的定價都等於預設值?

從對像中提取所需的最後固定日期可能就足夠了FloatingRateBond

我想有答案:

  1. 使用qlBondPreviousCashFlowDate()指向您的FloatingRateBond對象來獲取最後付款日期;
  2. 用於qlInterestRateIndexFixingDate()獲取參考最後付款日期的固定日期;
  3. 用於qlIndexAddFixings()為您在上面得到的固定日期添加固定利率;
  4. 如果它們共享相同的債券,則對您的每一個債券重複IborIndex

到目前為止,我已經使用電子表格通過qlCalendarAdvance()(目標日曆)修改的幾個評估日期嘗試了這個程序Bonds.xls,但是將來從 2M 到 12M 的間隔不會產生任何問題,並且定價引擎總是能夠找到價格以浮動利率債券為例。

PS:如果熟悉該C++版本的人想用該語言解釋程序,我相信它會非常感激。

引用自:https://quant.stackexchange.com/questions/8947