Overlapping Periods in DCS Curves for Commodity Forward Indexes
Depending on the market data providers (such as Reuters, Platts, or Argus), forward prices for commodities are published on a daily basis on working days and with a timing interval of days, weeks, months, quarters, half-years, or years. This can result in overlaps between periods. For example, if forward prices are known for January and also for the first quarter, the valid price for January and for the period February to March needs to be determined because of this overlap. This is necessary because the creation of the commodity curve is based on disjointed time frames with the corresponding prices.
You can select from the following algorithms for determining the prices for overlapping periods:
Simple average
Price from the original period
Weighted average
Calculation Algorithm | Example |
Simple average: To determine a price for an interval, the system calculates the simple average. | Price for February and March = (3x price 1st quarter - price for January) / 2 |
Price from the original period: The price of the larger interval is used for all the smaller timing intervals that it contains and for which the prices are not known. | A price is known for both January and for the first quarter. The price from the first quarter is used for February and March. |
Weighted average: To determine a price for an interval, the system calculates the weighted average. | Price (February and March) = ((price 1st quarter x 90 - price January x 31) / 59 ) |
You define the algorithm to be used in the master data for the relevant commodity curve (transaction TANCCMASTER
). In addition to the standard algorithms, you can define additional algorithms. To do so, you need to make the settings described in the following section.
You need to define the pricing method for overlapping periods. You can find these settings in Customizing under .
You need to implement the algorithm for pricing. You use the BAdI BAdI: Price Determination for Overlapping Periods
for this. The identifier that you previously defined for the pricing method is used as a filter for your BAdI implementation.