Interface IBootstrap
- Namespace
- NanoQL.TermStructures
- Assembly
- NanoQL.dll
A bootstrap: QuantLib's Bootstrap template parameter (IterativeBootstrap, GlobalBootstrap), as
a configuration struct whose Calculate<TTermStructure, TTraits, TInterpolator>(BootstrapState<TTermStructure>, TInterpolator, EvaluationContext) fills a curve's working state.
public interface IBootstrap
Remarks
A bootstrap is a readonly struct holding QuantLib's constructor parameters, whose zero value is QuantLib's default construction. QuantLib's bootstrap holds a pointer to its curve and reads and writes the curve's members as its friend; here the curve hands it a BootstrapState<TTermStructure>, the working state of the curve under construction, which the curve freezes into its nodes when Calculate<TTermStructure, TTraits, TInterpolator>(BootstrapState<TTermStructure>, TInterpolator, EvaluationContext) returns. An extension point: a bootstrap of one's own implements it.
Methods
Calculate<TTermStructure, TTraits, TInterpolator>(BootstrapState<TTermStructure>, TInterpolator, EvaluationContext)
Fills the working state: the dates, times and data of the curve's nodes, its interpolation and maximum date, so that each helper reprices its quote.
void Calculate<TTermStructure, TTraits, TInterpolator>(BootstrapState<TTermStructure> state, TInterpolator interpolator, EvaluationContext context) where TTermStructure : TermStructure where TTraits : struct, IBootstrapTraits<TTermStructure> where TInterpolator : struct, IInterpolator
Parameters
stateBootstrapState<TTermStructure>The working state of the curve under construction.
interpolatorTInterpolatorThe curve's interpolator.
contextEvaluationContextThe evaluation context the helpers are priced in.
Type Parameters
TTermStructureThe kind of term structure bootstrapped.
TTraitsThe curve's traits.
TInterpolatorThe curve's interpolator.