ExchangeRateManager Class Reference
#include <ql/currencies/exchangeratemanager.hpp>
Inheritance diagram for ExchangeRateManager:

Detailed Description
exchange-rate repository
- Tests:
- lookup of direct, triangulated, and derived exchange rates is tested.
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 | |
Friends | |
class | Singleton< ExchangeRateManager > |
Member Function Documentation
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.
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.