FX Forward More...
#include <qle/instruments/fxforward.hpp>
Inheritance diagram for FxForward: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 QuantLib::ext::shared_ptr< QuantExt::FxIndex > &fxIndex=nullptr, bool includeSettlementDateFlows=false) | |
| 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 QuantLib::ext::shared_ptr< QuantExt::FxIndex > &fxIndex=nullptr, bool includeSettlementDateFlows=false) | |
| 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 QuantLib::ext::shared_ptr< QuantExt::FxIndex > &fxIndex=nullptr, bool includeSettlementDateFlows=false) | |
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 |
| QuantLib::ext::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 QuantLib::ext::shared_ptr< QuantExt::FxIndex > & | fxIndex = nullptr, |
||
| bool | includeSettlementDateFlows = false |
||
| ) |
| 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 |
| includeSettlementDateFlows | If true, we include cash flows on valuation date into the NPV calculation |
| 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 QuantLib::ext::shared_ptr< QuantExt::FxIndex > & | fxIndex = nullptr, |
||
| bool | includeSettlementDateFlows = false |
||
| ) |
| 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 |
| includeSettlementDateFlows | If true, we include cash flows on valuation date into the NPV calculation |
| 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 QuantLib::ext::shared_ptr< QuantExt::FxIndex > & | fxIndex = nullptr, |
||
| bool | includeSettlementDateFlows = false |
||
| ) |
| 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 |
| includeSettlementDateFlows | If true, we include cash flows on valuation date into the NPV calculation |