Table of Contents

Class CustomIborIndex

Namespace
NanoQL.Indexes
Assembly
NanoQL.dll

A LIBOR-like index that allows specifying custom calendars for value and maturity dates calculations.

public sealed class CustomIborIndex : IborIndex
Inheritance
CustomIborIndex
Inherited Members

Remarks

Typical LIBOR indexes use fixing calendar = value calendar = UK, maturity calendar = JoinHolidays(UK, currency calendar) for non-EUR currencies; fixing calendar = JoinHolidays(UK, TARGET), value calendar = maturity calendar = TARGET for EUR.

Constructors

CustomIborIndex(string, Period, int, Currency?, Calendar, Calendar, Calendar, BusinessDayConvention, bool, DayCounter, YieldTermStructure?)

Initializes a new instance of the CustomIborIndex class.

public CustomIborIndex(string familyName, Period tenor, int settlementDays, Currency? currency, Calendar fixingCalendar, Calendar valueCalendar, Calendar maturityCalendar, BusinessDayConvention convention, bool endOfMonth, DayCounter dayCounter, YieldTermStructure? h = null)

Parameters

familyName string

The family name.

tenor Period

The tenor.

settlementDays int

The settlement days.

currency Currency

The currency, or null, QuantLib's empty currency.

fixingCalendar Calendar

The calendar of the fixing dates.

valueCalendar Calendar

The calendar on which value dates advance.

maturityCalendar Calendar

The calendar on which value dates adjust and maturity dates advance.

convention BusinessDayConvention

The business-day convention.

endOfMonth bool

Whether the end-of-month rule applies.

dayCounter DayCounter

The day counter.

h YieldTermStructure

The forwarding curve, or null for none.

Exceptions

ArgumentNullException

A calendar is null.

Properties

MaturityCalendar

Gets the calendar on which value dates adjust and maturity dates advance.

public Calendar MaturityCalendar { get; }

Property Value

Calendar

ValueCalendar

Gets the calendar on which value dates advance.

public Calendar ValueCalendar { get; }

Property Value

Calendar

Methods

Clone(YieldTermStructure?)

A copy of the index on another forwarding curve: a CustomIborIndex with the same conventions and calendars, as QuantLib's.

public override IborIndex Clone(YieldTermStructure? forwarding)

Parameters

forwarding YieldTermStructure

The forwarding curve, or null for none.

Returns

IborIndex

The copy.

FixingDate(Date)

The fixing date of a value date: the fixing days before it on the value calendar, adjusted to the preceding fixing day.

public override Date FixingDate(Date valueDate)

Parameters

valueDate Date

The value date.

Returns

Date

The fixing date.

MaturityDate(Date)

The maturity date of a value date, advanced by the tenor on the maturity calendar.

public override Date MaturityDate(Date valueDate)

Parameters

valueDate Date

The value date.

Returns

Date

The maturity date.

ValueDate(Date)

The value date of a fixing: the fixing days after it on the value calendar, adjusted on the maturity calendar.

public override Date ValueDate(Date fixingDate)

Parameters

fixingDate Date

The fixing date.

Returns

Date

The value date.

Exceptions

ArgumentException

fixingDate is not a valid fixing date.