Table of Contents

Class CrossCurrencyBasisSwapConvention

Namespace
NanoQL.Extensions.Conventions
Assembly
NanoQL.Extensions.dll

A cross-currency basis swap convention resolved in a set (CrossCurrencyBasisSwap(string)): its record, its base chain merged, and the rate helper it feeds, on its indexes built in the set.

[Experimental("NQL0001")]
public sealed class CrossCurrencyBasisSwapConvention
Inheritance
CrossCurrencyBasisSwapConvention
Inherited Members

Remarks

The record's MarkToMarket chooses the helper: the mark-to-market one, which takes the resettable leg and the FX reset's days and calendar but no lag on the notional exchanges, or the constant-notional one, which takes the reverse; a record giving a field its helper can't take is refused.

Properties

Record

Gets the record with every field its base chain gives, under the convention's name.

public CrossCurrencyBasisSwapConventionRecord Record { get; }

Property Value

CrossCurrencyBasisSwapConventionRecord

Set

Gets the set the convention was resolved in, whose names its record's fields are.

public ConventionSet Set { get; }

Property Value

ConventionSet

Methods

RateHelper(double, Period, YieldTermStructure?, EvaluationContext, YieldTermStructure?, YieldTermStructure?)

A basis swap rate helper on the record's indexes built in the set.

public CrossCurrencyBasisSwapRateHelperBase RateHelper(double basis, Period tenor, YieldTermStructure? collateralCurve, EvaluationContext context, YieldTermStructure? baseCurrencyCurve = null, YieldTermStructure? quoteCurrencyCurve = null)

Parameters

basis double

The basis quoted.

tenor Period

The swap's tenor.

collateralCurve YieldTermStructure

The collateral currency's discount curve.

context EvaluationContext

The evaluation context.

baseCurrencyCurve YieldTermStructure

The FX base currency index's forwarding curve, or null for none.

quoteCurrencyCurve YieldTermStructure

The FX quote currency index's forwarding curve, or null for none.

Returns

CrossCurrencyBasisSwapRateHelperBase

The helper: a MtMCrossCurrencyBasisSwapRateHelper where the record marks the swap to market, a ConstNotionalCrossCurrencyBasisSwapRateHelper otherwise.

Exceptions

ArgumentException

The record leaves out a field the helper needs, a name it gives is unknown, or it gives a value the helper can't take.