CommodityCurve Class Reference

Commodity term structure. More...

`#include <ql/experimental/commodities/commoditycurve.hpp>`

Inheritance diagram for CommodityCurve:
[legend]

## Public Member Functions

| CommodityCurve (const std::string &name, const CommodityType &commodityType, const Currency &currency, const UnitOfMeasure &unitOfMeasure, const Calendar &calendar, const std::vector< Date > &dates, const std::vector< Real > &prices, const DayCounter &dayCounter=Actual365Fixed())
| CommodityCurve (const std::string &name, const CommodityType &commodityType, const Currency &currency, const UnitOfMeasure &unitOfMeasure, const Calendar &calendar, const DayCounter &dayCounter=Actual365Fixed())
Public Member Functions inherited from TermStructure
| TermStructure (const DayCounter &dc=DayCounter())
| default constructor More...
| TermStructure (const Date &referenceDate, const Calendar &calendar=Calendar(), const DayCounter &dc=DayCounter())
| initialize with a fixed reference date
| TermStructure (Natural settlementDays, const Calendar &, const DayCounter &dc=DayCounter())
| calculate the reference date based on the global evaluation date
virtual | ~TermStructure ()
virtual DayCounter | dayCounter () const
| the day counter used for date/time conversion
Time | timeFromReference (const Date &date) const
| date/time conversion
virtual Time | maxTime () const
| the latest time for which the curve can return values
virtual const Date & | referenceDate () const
| the date at which discount = 1.0 and/or variance = 0.0
virtual Calendar | calendar () const
| the calendar used for reference and/or option date calculation
virtual Natural | settlementDays () const
| the settlementDays used for reference date calculation
void | update ()
Public Member Functions inherited from Observer
| Observer (const Observer &)
Observer & | operator= (const Observer &)
std::pair< iterator, bool > | registerWith (const ext::shared_ptr< Observable > &)
void | registerWithObservables (const ext::shared_ptr< Observer > &)
Size | unregisterWith (const ext::shared_ptr< Observable > &)
void | unregisterWithAll ()
virtual void | deepUpdate ()
Public Member Functions inherited from Observable
| Observable (const Observable &)
Observable & | operator= (const Observable &)
void | notifyObservers ()
Public Member Functions inherited from Extrapolator
void | enableExtrapolation (bool b=true)
| enable extrapolation in subsequent calls
void | disableExtrapolation (bool b=true)
| disable extrapolation in subsequent calls
bool | allowsExtrapolation () const
| tells whether extrapolation is enabled

## Friends

class | CommodityIndex

## Inspectors

std::ostream & | operator<< (std::ostream &out, const CommodityCurve &curve)
std::string | name_
CommodityType | commodityType_
UnitOfMeasure | unitOfMeasure_
Currency | currency_
std::vector< Date > | dates_
std::vector< Time > | times_
std::vector< Real > | data_
Interpolation | interpolation_
ForwardFlat | interpolator_
ext::shared_ptr< CommodityCurve > | basisOfCurve_
Real | basisOfCurveUomConversionFactor_
const std::string & | name () const
const CommodityType & | commodityType () const
const UnitOfMeasure & | unitOfMeasure () const
const Currency & | currency () const
Date | maxDate () const
| the latest date for which the curve can return values
const std::vector< Time > & | times () const
const std::vector< Date > & | dates () const
const std::vector< Real > & | prices () const
std::vector< std::pair< Date, Real > > | nodes () const
bool | empty () const
void | setPrices (std::map< Date, Real > &prices)
void | setBasisOfCurve (const ext::shared_ptr< CommodityCurve > &basisOfCurve)
Real | price (const Date &d, const ext::shared_ptr< ExchangeContracts > &exchangeContracts, Integer nearbyOffset) const
Real | basisOfPrice (const Date &d) const
Date | underlyingPriceDate (const Date &date, const ext::shared_ptr< ExchangeContracts > &exchangeContracts, Integer nearbyOffset) const
const ext::shared_ptr< CommodityCurve > & | basisOfCurve () const
Real | basisOfPriceImpl (Time t) const
Real | priceImpl (Time t) const

## Additional Inherited Members

Public Types inherited from Observer
typedef boost::unordered_set< ext::shared_ptr< Observable > > | set_type
typedef set_type::iterator | iterator
Protected Member Functions inherited from TermStructure
void | checkRange (const Date &d, bool extrapolate) const
| date-range check
void | checkRange (Time t, bool extrapolate) const
| time-range check
Protected Attributes inherited from TermStructure
bool | moving_
bool | updated_
Calendar | calendar_

## Detailed Description

Commodity term structure.