Библиотека QuantLib C ++ — купоны FixedRateBond

С помощью библиотеки QuantLib C ++ я пытаюсь оценить облигации, которые имеют разные купоны в течение срока их службы (например, 6% в течение первых трех лет, затем 4% в течение оставшихся трех лет).

Я заметил, что конструктор FixedRateBond класс принимает вектор купонов: const std::vector< Rate > &coupons:

FixedRateBond (Natural settlementDays,
Real faceAmount,
const Schedule &schedule,
const std::vector< Rate > &coupons,
const DayCounter &accrualDayCounter,
BusinessDayConvention paymentConvention=Following,
Real redemption=100.0,
const Date &issueDate=Date(),
const Calendar &paymentCalendar=Calendar())

Это кажется полезным для моей цели, но как я могу указать, в какие даты начинает действовать каждый купон?

5

Решение

Просто посчитай купоны. Если ваша облигация выплачивает годовые купоны, у вас будет три купона в первые три года и три после. В этом случае передайте (0,06, 0,06, 0,06, 0,04, 0,04, 0,04) в качестве вектора ставок купона. Если купоны полугодовые, их будет шесть за три года; в этом случае передайте вектор, содержащий 0,06 шесть раз и 0,04 еще шесть раз. Вы получаете идею: пройти ставку для каждого купона.

6

Другие решения

При диком ударе в темноте, schedule звучит скорее всего.

Это занимает вектор дат. Увидеть документы

1

По вопросам рекламы [email protected]