Table of Contents

Class DefaultSettlement

Namespace
NanoQL.Experimental
Assembly
NanoQL.dll

A default event's settlement: its date and the realized recovery rates of the seniorities it settled. QuantLib's DefaultEvent::DefaultSettlement.

[Experimental("NQL0001")]
public sealed class DefaultSettlement : Event
Inheritance
DefaultSettlement
Inherited Members

Remarks

Immutable; built by DefaultEvent's constructors, as QuantLib's are protected and the event a friend. An event that hasn't settled has none (Settlement is null), where QuantLib's holds a settlement with a null date.

A settlement from a single recovery rate settles the seniority it names, and every ISDA seniority for NoSeniority, as a settlement from a map settles the seniorities it holds. QuantLib's fills every other seniority with ISDA's conventional recovery (defaultevent.cpp:63-75), so an event settled for SubLT2 at 0.3 reads 0.65 for SecDom, where each seniority settles at its own auction (ISDA's 2008 Icelandic protocols). A documented divergence (Divergences/SingleSenioritySettlementTests.cs); a seniority not settled reads null.

Properties

Date

Gets the settlement date.

public override Date Date { get; }

Property Value

Date

RecoveryRates

Gets the realized recovery rates of the seniorities the event settled.

public ImmutableSortedDictionary<Seniority, double> RecoveryRates { get; }

Property Value

ImmutableSortedDictionary<Seniority, double>

Methods

RecoveryRate(Seniority)

The realized recovery rate of a seniority.

public double? RecoveryRate(Seniority seniority)

Parameters

seniority Seniority

The seniority.

Returns

double?

The recovery, or null where the event didn't settle the seniority.

Exceptions

ArgumentException

seniority is NoSeniority ("NoSeniority is not valid for recovery rate request.").