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

exchange-rate repository More...

#include <ql/currencies/exchangeratemanager.hpp>

Inheritance diagram for ExchangeRateManager:

Public Member Functions

void add (const ExchangeRate &, const Date &startDate=Date::minDate(), const Date &endDate=Date::maxDate())
 Add an exchange rate.
ExchangeRate lookup (const Currency &source, const Currency &target, Date date=Date(), ExchangeRate::Type type=ExchangeRate::Derived) const
void clear ()
 remove the added exchange rates
Public Member Functions inherited from Singleton< ExchangeRateManager >
 Singleton (const Singleton &)=delete
Singletonoperator= (const Singleton &)=delete

Friends

class Singleton< ExchangeRateManager >

Additional Inherited Members

Static Public Member Functions inherited from Singleton< ExchangeRateManager >
static ExchangeRateManagerinstance ()
 access to the unique instance

Detailed Description

exchange-rate repository

Tests
lookup of direct, triangulated, and derived exchange rates is tested.

Member Function Documentation

◆ add()

void add ( const ExchangeRate & ,
const Date & startDate = Date::minDate(),
const Date & endDate = Date::maxDate() )

Add an exchange rate.

The given rate is valid between the given dates.

Note
If two rates are given between the same currencies and with overlapping date ranges, the latest one added takes precedence during lookup.

◆ lookup()

ExchangeRate lookup ( const Currency & source,
const Currency & target,
Date date = Date(),
ExchangeRate::Type type = ExchangeRate::Derived ) const

Lookup the exchange rate between two currencies at a given date. If the given type is Direct, only direct exchange rates will be returned if available; if Derived, direct rates are still preferred but derived rates are allowed.

Warning
if two or more exchange-rate chains are possible which allow to specify a requested rate, it is unspecified which one is returned.