public interface FxIndexRates extends MarketDataView, ParameterizedData
This provides historic and forward rates for a single FxIndex
, such as 'EUR/GBP-ECB'.
An FX rate is the conversion rate between two currencies. An FX index is the rate
as published by a specific organization, typically at a well-known time-of-day.
Modifier and Type | Method and Description |
---|---|
MultiCurrencyAmount |
currencyExposure(FxIndexSensitivity pointSensitivity)
Calculates the currency exposure from the point sensitivity.
|
LocalDateDoubleTimeSeries |
getFixings()
Gets the time-series of fixings for the index.
|
FxForwardRates |
getFxForwardRates()
Gets the underlying FX forward rates.
|
FxIndex |
getIndex()
Gets the FX index.
|
CurrencyParameterSensitivities |
parameterSensitivity(FxIndexSensitivity pointSensitivity)
Calculates the parameter sensitivity from the point sensitivity.
|
double |
rate(FxIndexObservation observation,
Currency baseCurrency)
Gets the historic or forward rate at the specified fixing date.
|
PointSensitivityBuilder |
ratePointSensitivity(FxIndexObservation observation,
Currency baseCurrency)
Calculates the point sensitivity of the historic or forward rate at the specified fixing date.
|
FxIndexRates |
withParameter(int parameterIndex,
double newValue) |
FxIndexRates |
withPerturbation(ParameterPerturbation perturbation) |
findData, getValuationDate
findParameterIndex, getParameter, getParameterCount, getParameterMetadata
FxIndex getIndex()
The index that the rates are for.
LocalDateDoubleTimeSeries getFixings()
The time-series contains historic fixings of the index. It may be empty if the data is not available.
FxForwardRates getFxForwardRates()
FxIndexRates withParameter(int parameterIndex, double newValue)
withParameter
in interface ParameterizedData
FxIndexRates withPerturbation(ParameterPerturbation perturbation)
withPerturbation
in interface ParameterizedData
double rate(FxIndexObservation observation, Currency baseCurrency)
The rate of the FX index varies over time. This method obtains the actual or estimated rate for the fixing date.
This retrieves the actual rate if the fixing date is before the valuation date, or the estimated rate if the fixing date is after the valuation date. If the fixing date equals the valuation date, then the best available rate is returned.
The index defines the conversion rate for a specific currency pair. This method specifies which of the two currencies in the index is to be treated as the base currency for the purposes of the returned rate. If the specified base currency equals the base currency of the index, then the rate is simply returned. If the specified base currency equals the counter currency of the index, then the inverse rate is returned. As such, an amount in the specified base currency can be directly multiplied by the returned FX rate to perform FX conversion.
To convert an amount in the specified base currency to the other currency, multiply it by the returned FX rate.
observation
- the rate observation, including the fixing datebaseCurrency
- the base currency that the rate should be expressed againstRuntimeException
- if the value cannot be obtainedPointSensitivityBuilder ratePointSensitivity(FxIndexObservation observation, Currency baseCurrency)
This returns a sensitivity instance referring to the points that were queried in the market data.
If a time-series was used, then there is no sensitivity.
The sensitivity refers to the result of rate(FxIndexObservation, Currency)
.
observation
- the rate observation, including the fixing datebaseCurrency
- the base currency that the rate should be expressed againstRuntimeException
- if the value cannot be obtainedCurrencyParameterSensitivities parameterSensitivity(FxIndexSensitivity pointSensitivity)
This is used to convert a single point sensitivity to parameter sensitivity.
pointSensitivity
- the point sensitivity to convertRuntimeException
- if the result cannot be calculatedMultiCurrencyAmount currencyExposure(FxIndexSensitivity pointSensitivity)
This is used to convert a single point sensitivity to currency exposure.
pointSensitivity
- the point sensitivity to convertRuntimeException
- if the result cannot be calculatedCopyright 2009-Present by OpenGamma Inc. and individual contributors
Apache v2 licensed
Additional documentation can be found at strata.opengamma.io.