Table of Contents

Interface IInterpolatedCurve<TTraits, TInterpolator>

Namespace
NanoQL.TermStructures
Assembly
NanoQL.dll

An interpolated curve of the kind its traits name, over the given interpolator: QuantLib's Traits::curve<Interpolator>::type, which a piecewise curve on those traits derives from.

public interface IInterpolatedCurve<TTraits, TInterpolator> where TTraits : struct where TInterpolator : struct, IInterpolator

Type Parameters

TTraits

The traits naming the curve kind (Discount, ZeroYield, …).

TInterpolator

The interpolator.

Remarks

The question QuantLib's code asks, whether a curve is an InterpolatedDiscountCurve<LogLinear>, bootstrapped or not, is curve is IInterpolatedCurve<Discount, LogLinear>: the interpolated curve of the kind and the piecewise curve on its traits both implement it. An extension point: a curve kind of one's own implements it with its traits.

Methods

Data()

The curve's data at its nodes, as its traits read them (discount factors, rates).

ImmutableArray<double> Data()

Returns

ImmutableArray<double>

The data.

Dates()

The dates of the curve's nodes.

ImmutableArray<Date> Dates()

Returns

ImmutableArray<Date>

The dates.

Nodes()

The curve's nodes: each date with the data at it.

ImmutableArray<KeyValuePair<Date, double>> Nodes()

Returns

ImmutableArray<KeyValuePair<Date, double>>

The nodes.

Times()

The times of the curve's nodes, from the reference date.

ImmutableArray<double> Times()

Returns

ImmutableArray<double>

The times.