QuantLib: a free/open-source library for quantitative finance
Reference manual - version 1.40
Loading...
Searching...
No Matches
QuantLib::detail Namespace Reference

Classes

class  BlackStyleSwaptionEngine
class  ImpliedVolatilityHelper
 helper class for one-asset implied-volatility calculation More...
class  Root
 Utility for the numerical time solver. More...
struct  SpreadTraits< Discount >
 Spread Discount-curve traits. More...

Typedefs

typedef NoArbSabrSmileSection NoArbSabrWrapper
typedef SviSmileSection SviWrapper
typedef std::vector< std::vector< Real > > SplineGrid
typedef DataTable< Realbase_data_table
typedef Data< std::vector< Real >, EmptyArg > base_data
typedef Point< Real, EmptyArg > base_arg_type
typedef Point< Real, EmptyRes > base_return_type
typedef Point< Size, EmptyDim > base_dimensions
typedef Point< base_data_table, EmptyRes > base_output_data
typedef base_cubic_spline cubic_spline_01
typedef n_cubic_spline< cubic_spline_01 > cubic_spline_02
typedef n_cubic_spline< cubic_spline_02 > cubic_spline_03
typedef n_cubic_spline< cubic_spline_03 > cubic_spline_04
typedef n_cubic_spline< cubic_spline_04 > cubic_spline_05
typedef n_cubic_spline< cubic_spline_05 > cubic_spline_06
typedef n_cubic_spline< cubic_spline_06 > cubic_spline_07
typedef n_cubic_spline< cubic_spline_07 > cubic_spline_08
typedef n_cubic_spline< cubic_spline_08 > cubic_spline_09
typedef n_cubic_spline< cubic_spline_09 > cubic_spline_10
typedef n_cubic_spline< cubic_spline_10 > cubic_spline_11
typedef n_cubic_spline< cubic_spline_11 > cubic_spline_12
typedef n_cubic_spline< cubic_spline_12 > cubic_spline_13
typedef n_cubic_spline< cubic_spline_13 > cubic_spline_14
typedef n_cubic_spline< cubic_spline_14 > cubic_spline_15
typedef base_cubic_splint cubic_splint_01
typedef n_cubic_splint< cubic_splint_01 > cubic_splint_02
typedef n_cubic_splint< cubic_splint_02 > cubic_splint_03
typedef n_cubic_splint< cubic_splint_03 > cubic_splint_04
typedef n_cubic_splint< cubic_splint_04 > cubic_splint_05
typedef n_cubic_splint< cubic_splint_05 > cubic_splint_06
typedef n_cubic_splint< cubic_splint_06 > cubic_splint_07
typedef n_cubic_splint< cubic_splint_07 > cubic_splint_08
typedef n_cubic_splint< cubic_splint_08 > cubic_splint_09
typedef n_cubic_splint< cubic_splint_09 > cubic_splint_10
typedef n_cubic_splint< cubic_splint_10 > cubic_splint_11
typedef n_cubic_splint< cubic_splint_11 > cubic_splint_12
typedef n_cubic_splint< cubic_splint_12 > cubic_splint_13
typedef n_cubic_splint< cubic_splint_13 > cubic_splint_14
typedef n_cubic_splint< cubic_splint_14 > cubic_splint_15

Functions

Rate effectiveFixedRate (const std::vector< Spread > &spreads, const std::vector< Rate > &caps, const std::vector< Rate > &floors, Size i)
bool noOption (const std::vector< Rate > &caps, const std::vector< Rate > &floors, Size i)
void checkSviParameters (const Real a, const Real b, const Real sigma, const Real rho, const Real m, const Time tte)
Real sviTotalVariance (const Real a, const Real b, const Real sigma, const Real rho, const Real m, const Real k)
template<class I>
void _fill_array_ (Array &a, std::unique_ptr< Real[]> &data_, Size &n_, I begin, I end, const std::true_type &)
template<class I>
void _fill_array_ (Array &a, std::unique_ptr< Real[]> &data_, Size &n_, const I &begin, const I &end, const std::false_type &)
template<typename ForwardIterator>
std::vector< std::complex< Real > > double_ft (ForwardIterator begin, ForwardIterator end)
template<typename InputIterator, typename OutputIterator>
Real remove_mean (InputIterator begin, InputIterator end, OutputIterator out)
ext::shared_ptr< PathPricer< Path > > mc_lookback_path_pricer (const ContinuousFixedLookbackOption::arguments &args, const GeneralizedBlackScholesProcess &process, DiscountFactor discount)
ext::shared_ptr< PathPricer< Path > > mc_lookback_path_pricer (const ContinuousPartialFixedLookbackOption::arguments &args, const GeneralizedBlackScholesProcess &process, DiscountFactor discount)
ext::shared_ptr< PathPricer< Path > > mc_lookback_path_pricer (const ContinuousFloatingLookbackOption::arguments &args, const GeneralizedBlackScholesProcess &process, DiscountFactor discount)
ext::shared_ptr< PathPricer< Path > > mc_lookback_path_pricer (const ContinuousPartialFloatingLookbackOption::arguments &args, const GeneralizedBlackScholesProcess &process, DiscountFactor discount)
template<class Fn>
Real dontThrowFallback (const Fn &error, Real xMin, Real xMax, Size steps)
std::ostream & operator<< (std::ostream &, const short_date_holder &)
std::ostream & operator<< (std::ostream &, const long_date_holder &)
std::ostream & operator<< (std::ostream &, const iso_date_holder &)
std::ostream & operator<< (std::ostream &, const formatted_date_holder &)
std::ostream & operator<< (std::ostream &, const long_period_holder &)
std::ostream & operator<< (std::ostream &, const short_period_holder &)
std::ostream & operator<< (std::ostream &, const long_weekday_holder &)
std::ostream & operator<< (std::ostream &, const short_weekday_holder &)
std::ostream & operator<< (std::ostream &, const shortest_weekday_holder &)
template<typename T>
std::ostream & operator<< (std::ostream &, const null_checker< T > &)
std::ostream & operator<< (std::ostream &, const ordinal_holder &)
template<typename T>
std::ostream & operator<< (std::ostream &, const power_of_two_holder< T > &)
std::ostream & operator<< (std::ostream &, const percent_holder &)
template<typename I>
std::ostream & operator<< (std::ostream &, const sequence_holder< I > &)
template<class... Ts>
 variant_visitor (Ts...) -> variant_visitor< Ts... >
template<class T, class U>
get (const std::vector< T > &v, Size i, U defaultValue)

Variables

const Real minHazardRateComp = -1.0
const unsigned long sabrabsprob [1209600]
const Real avgHazardRate = 0.01
const Real maxHazardRate = 1.0
constexpr double avgInflation = 0.02
constexpr double maxInflation = 0.5
const Real avgRate = 0.05
const Real maxRate = 1.0

Detailed Description

References: J-P. Berrut and L.N. Trefethen, Barycentric Lagrange interpolation, SIAM Review, 46(3):501–517, 2004. https://people.maths.ox.ac.uk/trefethen/barycentric.pdf

Function Documentation

◆ dontThrowFallback()

template<class Fn>
Real dontThrowFallback ( const Fn & error,
Real xMin,
Real xMax,
Size steps )

If dontThrow is true in IterativeBootstrap and on a given pillar the bootstrap fails when searching for a helper root between xMin and xMax, we use this function to return the value that gives the minimum absolute helper error in the interval between xMin and xMax inclusive.