FX Forward More...
#include <qle/instruments/fxforward.hpp>
Classes | |
class | arguments |
class | engine |
class | results |
Public Member Functions | |
Constructors | |
FxForward (const Real &nominal1, const Currency ¤cy1, const Real &nominal2, const Currency ¤cy2, const Date &maturityDate, const bool &payCurrency1, const bool isPhysicallySettled=true, const Date &payDate=Date(), const Currency &payCcy=Currency(), const Date &fixingDate=Date(), const boost::shared_ptr< QuantExt::FxIndex > &fxIndex=nullptr) | |
FxForward (const Money &nominal1, const ExchangeRate &forwardRate, const Date &forwardDate, bool sellingNominal, const bool isPhysicallySettled=true, const Date &payDate=Date(), const Currency &payCcy=Currency(), const Date &fixingDate=Date(), const boost::shared_ptr< QuantExt::FxIndex > &fxIndex=nullptr) | |
FxForward (const Money &nominal1, const Handle< Quote > &fxForwardQuote, const Currency ¤cy2, const Date &maturityDate, bool sellingNominal, const bool isPhysicallySettled=true, const Date &payDate=Date(), const Currency &payCcy=Currency(), const Date &fixingDate=Date(), const boost::shared_ptr< QuantExt::FxIndex > &fxIndex=nullptr) | |
Results | |
const Money & | npvMoney () const |
Return NPV as money (the price currency is set in the pricing engine) | |
const ExchangeRate & | fairForwardRate () const |
Return the fair FX forward rate. | |
Additional interface | |
Real | currency1Nominal () const |
Real | currency2Nominal () const |
Currency | currency1 () const |
Currency | currency2 () const |
Date | maturityDate () const |
Date | payDate () const |
Currency | payCcy () const |
boost::shared_ptr< QuantExt::FxIndex > | fxIndex () const |
bool | payCurrency1 () const |
Instrument interface | |
bool | isExpired () const override |
void | setupArguments (PricingEngine::arguments *) const override |
void | fetchResults (const PricingEngine::results *) const override |
FX Forward
This class holds the term sheet data for an FX Forward instrument.
\ingroup instruments
FxForward | ( | const Real & | nominal1, |
const Currency & | currency1, | ||
const Real & | nominal2, | ||
const Currency & | currency2, | ||
const Date & | maturityDate, | ||
const bool & | payCurrency1, | ||
const bool | isPhysicallySettled = true , |
||
const Date & | payDate = Date() , |
||
const Currency & | payCcy = Currency() , |
||
const Date & | fixingDate = Date() , |
||
const boost::shared_ptr< QuantExt::FxIndex > & | fxIndex = nullptr |
||
) |
nominal1,currency1 | There are nominal1 units of currency1. |
nominal2,currency2 | There are nominal2 units of currency2. |
maturityDate | Date on which currency amounts are exchanged. |
payCurrency1 | Pay nominal1 if true, otherwise pay nominal2. |
isPhysicallySettled | if true fx forward is physically settled |
payDate | Date on which the cashflows are exchanged |
payCcy | If cash settled, the settlement currency |
fixingDate | If cash settled, the fixing date |
fxIndex | If cash settled, the FX index from which to take the fixing on the fixing date |
FxForward | ( | const Money & | nominal1, |
const ExchangeRate & | forwardRate, | ||
const Date & | forwardDate, | ||
bool | sellingNominal, | ||
const bool | isPhysicallySettled = true , |
||
const Date & | payDate = Date() , |
||
const Currency & | payCcy = Currency() , |
||
const Date & | fixingDate = Date() , |
||
const boost::shared_ptr< QuantExt::FxIndex > & | fxIndex = nullptr |
||
) |
nominal1 | FX forward nominal amount (domestic currency) |
forwardRate | FX rate of the exchange |
forwardDate | Date of the exchange. |
sellingNominal | Sell (pay) nominal1 if true, otherwise buy (receive) nominal. |
isPhysicallySettled | if true fx forward is physically settled |
payDate | Date on which the cashflows are exchanged |
payCcy | If cash settled, the settlement currency |
fixingDate | If cash settled, the fixing date |
fxIndex | If cash settled, the FX index from which to take the fixing on the fixing date |
FxForward | ( | const Money & | nominal1, |
const Handle< Quote > & | fxForwardQuote, | ||
const Currency & | currency2, | ||
const Date & | maturityDate, | ||
bool | sellingNominal, | ||
const bool | isPhysicallySettled = true , |
||
const Date & | payDate = Date() , |
||
const Currency & | payCcy = Currency() , |
||
const Date & | fixingDate = Date() , |
||
const boost::shared_ptr< QuantExt::FxIndex > & | fxIndex = nullptr |
||
) |
nominal1 | FX forward nominal amount 1 (domestic currency) |
fxForwardQuote | FX forward quote giving the rate in domestic units per one foreign unit |
currency2 | currency for nominal2 (foreign currency) |
maturityDate | FX Forward maturity date |
sellingNominal | Sell (pay) nominal1 if true, otherwise buy (receive) nominal1. |
isPhysicallySettled | if true fx forward is physically settled |
payDate | Date on which the cashflows are exchanged |
payCcy | If cash settled, the settlement currency |
fixingDate | If cash settled, the fixing date |
fxIndex | If cash settled, the FX index from which to take the fixing on the fixing date |