EnergyBasisSwap Class Reference

Energy basis swap. More...

#include <ql/experimental/commodities/energybasisswap.hpp>

Inherits EnergySwap.

List of all members.

Public Member Functions

 EnergyBasisSwap (const Calendar &calendar, const boost::shared_ptr< CommodityIndex > &spreadIndex, const boost::shared_ptr< CommodityIndex > &payIndex, const boost::shared_ptr< CommodityIndex > &receiveIndex, bool spreadToPayLeg, const Currency &payCurrency, const Currency &receiveCurrency, const PricingPeriods &pricingPeriods, const CommodityUnitCost &basis, const CommodityType &commodityType, const boost::shared_ptr< SecondaryCosts > &secondaryCosts, const Handle< YieldTermStructure > &payLegTermStructure, const Handle< YieldTermStructure > &receiveLegTermStructure, const Handle< YieldTermStructure > &discountTermStructure)
const boost::shared_ptr
< CommodityIndex > & 
payIndex () const
const boost::shared_ptr
< CommodityIndex > & 
receiveIndex () const
const CommodityUnitCost & basis () const

Protected Member Functions

void performCalculations () const

Protected Attributes

boost::shared_ptr< CommodityIndexspreadIndex_
boost::shared_ptr< CommodityIndexpayIndex_
boost::shared_ptr< CommodityIndexreceiveIndex_
bool spreadToPayLeg_
CommodityUnitCost basis_
Handle< YieldTermStructurepayLegTermStructure_
Handle< YieldTermStructurereceiveLegTermStructure_
Handle< YieldTermStructurediscountTermStructure_

Detailed Description

Energy basis swap.


Member Function Documentation

void performCalculations ( ) const [protected, virtual]

In case a pricing engine is not used, this method must be overridden to perform the actual calculations and set any needed results. In case a pricing engine is used, the default implementation can be used.

Reimplemented from Instrument.