Logo
Reference manual - version qle_version
OffPeakPowerIndex Class Reference

Off peak power index. More...

#include <qle/indexes/offpeakpowerindex.hpp>

Inheritance diagram for OffPeakPowerIndex:

Public Member Functions

 OffPeakPowerIndex (const std::string &underlyingName, const QuantLib::Date &expiryDate, const QuantLib::ext::shared_ptr< CommodityFuturesIndex > &offPeakIndex, const QuantLib::ext::shared_ptr< CommodityFuturesIndex > &peakIndex, QuantLib::Real offPeakHours, const QuantLib::Calendar &peakCalendar, const Handle< QuantExt::PriceTermStructure > &priceCurve=Handle< QuantExt::PriceTermStructure >())
 Constructor.
Inspectors
const QuantLib::ext::shared_ptr< CommodityFuturesIndex > & offPeakIndex () const
const QuantLib::ext::shared_ptr< CommodityFuturesIndex > & peakIndex () const
QuantLib::Real offPeakHours () const
const QuantLib::Calendar & peakCalendar () const
QuantLib::ext::shared_ptr< CommodityIndexclone (const QuantLib::Date &expiryDate=QuantLib::Date(), const QuantLib::Date &optionExpiryDate=QuantLib::Date(), const QuantLib::ext::optional< QuantLib::Handle< PriceTermStructure > > &ts=QuantLib::ext::nullopt) const override
 Implement the base clone.
Public Member Functions inherited from CommodityFuturesIndex
 CommodityFuturesIndex (const std::string &underlyingName, const Date &expiryDate, const Calendar &fixingCalendar, const Handle< QuantExt::PriceTermStructure > &priceCurve=Handle< QuantExt::PriceTermStructure >(), const Date &optionExpiryDate=Date())
 CommodityFuturesIndex (const std::string &underlyingName, const Date &expiryDate, const Calendar &fixingCalendar, bool keepDays, const Handle< QuantExt::PriceTermStructure > &priceCurve=Handle< QuantExt::PriceTermStructure >(), const Date &optionExpiryDate=Date())
QuantLib::ext::shared_ptr< CommodityIndexclone (const QuantLib::Date &expiryDate=QuantLib::Date(), const Date &optionExpiryDate=QuantLib::Date(), const QuantLib::ext::optional< QuantLib::Handle< PriceTermStructure > > &ts=QuantLib::ext::nullopt) const override
 Implement the base clone.
Public Member Functions inherited from CommodityIndex
 CommodityIndex (const std::string &underlyingName, const QuantLib::Date &expiryDate, const Calendar &fixingCalendar, const Handle< QuantExt::PriceTermStructure > &priceCurve=Handle< QuantExt::PriceTermStructure >(), const QuantLib::Date &optionExpiryDate=QuantLib::Date())
 CommodityIndex (const std::string &underlyingName, const QuantLib::Date &expiryDate, const Calendar &fixingCalendar, bool keepDays, const Handle< QuantExt::PriceTermStructure > &priceCurve=Handle< QuantExt::PriceTermStructure >(), const QuantLib::Date &optionExpiryDate=QuantLib::Date())
std::string name () const override
Calendar fixingCalendar () const override
bool isValidFixingDate (const Date &fixingDate) const override
Real fixing (const Date &fixingDate, bool forecastTodaysFixing=false) const override
void update () override
std::string underlyingName () const
const Handle< QuantExt::PriceTermStructure > & priceCurve () const
bool isFuturesIndex () const
const QuantLib::Date & expiryDate () const
const QuantLib::Date & optionExpiryDate () const
bool keepDays () const
virtual Real forecastFixing (const Date &fixingDate) const
virtual Real forecastFixing (const Time &fixingTime) const override
 returns the fixing at the given time

CommodityIndex interface

Real pastFixing (const Date &fixingDate) const override
 returns a past fixing at the given date

Additional Inherited Members

void init ()
std::string underlyingName_
Date expiryDate_
Calendar fixingCalendar_
Handle< QuantExt::PriceTermStructurecurve_
std::string name_
bool isFuturesIndex_
bool keepDays_
Date optionExpiryDate_

Detailed Description

Off peak power index.

A commodity index to represent daily off-peak power prices.

In general, when used in derivatives the off-peak power value for a given date will be:

  1. the average of Locational Marginal Prices (LMPs) over the off-peak hours, generally 8, on peak calendar business days
  2. the average of LMPs over all hours on peak calendar holidays

There are generally two types of daily futures in the power markets:

  1. those that average the LMPs over the peak hours, generally 16, on every calendar day
  2. those that average the LMPs over the off-peak hours, generally 8, on every calendar day

This off peak power index uses the prices of both of these daily future contracts to construct the index that is used in derivatives that reference off-peak power prices. The off-peak future is used directly on peak calendar business days. On peak calendar holidays, the weighted average of the daily off-peak future price and daily peak future price is used where the weights are the number of off-peak hours and peak hours respectively divided by 24.

Member Function Documentation

◆ pastFixing()

Real pastFixing ( const Date & fixingDate) const
overrideprotectedvirtual

returns a past fixing at the given date

the date passed as arguments must be the actual calendar date of the fixing; no settlement days must be used.

Reimplemented from CommodityIndex.