Commodity Payment Frequencies
Calypso out-of-the-box includes the following payment frequencies.
Frequency | Description |
---|---|
Date Rule |
The swap contains periodic swaplets based on the Date Rule that you select. Fixing calendar & Date Rule calendar should be same for correct dates generation. Support for Per Period 'DLY' frequency is supported for the pay frequency Date Rule for Commodity Products. |
Bullet |
There is one payment on a specified date. Manually enter the fixing date. Optional. If there is an FX conversion on the trade, you can select the TZ checkbox to specify a time and time zone. The FX rate that is closest to this specified time will be used in the conversion calculation. |
Daily |
Consecutive daily swaplets beginning on the Swap Start Date and ending on the Swap End Date. Enter the Start Date and End Date for the swap in the fields below. You can set the Fixing Date Policy to Whole Period with this payment frequency. Any of the out-of-the-box policies produce the same result as the swaplet period is one day. |
FutureContractFND |
Generate Commodity Fixings based on the First Notification Date of the contract. |
FutureContractLTD |
Consecutive swaplets generated based on the last trading day of a series of futures from a specified future contract. Select the First Contract and Last Contract for the swap in the fields below. |
Periodic |
The swap contains periodic swaplets based on the Frequency that you select. Enter the Start Date and End Date for the swap in the fields below. WK – Weekly – consecutive Monday through Sunday swaplets beginning on the Swap Start Date and ending on the Swap End Date. MTH – Monthly – consecutive calendar month swaplets beginning on the Swap Start Date and ending on the Swap End Date. QTR – Quarterly – consecutive quarterly calendar swaplets beginning on the Swap Start Date and ending on the Swap End Date. Calendar quarterly periods are flexible, any quarterly period can be set. SA – Semi-Annually – consecutive semi-annual calendar swaplets beginning on the Swap Start Date and ending on the Swap End Date. Calendar semi-annual periods begin on January 1 and July 1. PA – Annually – consecutive annual calendar swaplets beginning on the Swap Start Date and ending on the Swap End Date. Calendar annual periods begin on January 1. |
Periodic: IR Convention |
It generates cash flow period end dates that match the period end dates of an Interest Rate Swap with the same settings (frequency, date roll, holiday calendar, start and end dates). The Frequency drop-down menu displays options so that you can select the frequency and the date roll conventions to use if the calculated period end date falls on a non-business day. The fixing date calendar is used as the holiday calendar for the generator. The stub period is short first by default. Select the Short Last checkbox to use short last. Note that the period start date convention for Commodity Swaps is different from Interest Rate Swaps. For IRS, the period start date overlaps with previous period end date. For Commodity there is no overlapping; the Commodity period start date is always one business day behind the previous period end date. Following is an example. For IR:
For Commodity, the same period should be:
Short First Example
Cash Flow Periods
Short Last Example – The “Short Last” flag is checked in the Frequency drop-down menu.
Cash Flow Periods
|
Whole |
The swap contains one swaplet that begins on the swap start date and ends on the swap end date. Enter the Start Date and End Date for the swap in the fields below. |
Gas Oil Indexation |
Specifies that there is a cash flow for every calendar month. It is possible that several calendar months will have the same payment due date. When using the Gas Oil Indexation Payment Frequency, the only Fixing Policy available is Gas Oil Indexation. Refer to Capturing Commodity Swap 2 Trades for more details. |
[Note: The default start date is the first day of next month from the valdate. You can enter shortcuts for the dates like jan07 (first date of the month and year), Q307 (first date of the quarter and year), and cal07 (first date of the year).]
Custom Frequency Policy
You can code a custom payment frequency policy class, and register it in the Domain Values, so that it appears in the Payment Frequency drop-down menu.
Step 1 - For a custom Payment Frequency, the code should reside in calypsox/tk/product/commodities/schedulegeneration/payment
and be compiled. For reference, please check: calypsox/tk/product/commodities/schedulegeneration/payment/PreviousDayPaymentFrequency.java
Step 2 - The UI component for this custom payment frequency should reside in src/calypsox/apps/trading/commodities
and be compiled. For reference, please check: src/calypsox/apps/trading/commodities/PreviousDayPaymentFrequency.java
.
Step 3 - Add the custom payment frequency policy name to the domain CommodityPaymentFrequency.
Step 4 - Add all appropriate (multiple) fixing date policies entries to the domain CommodityPaymentFrequency.YOUR_PAYMENT_FREQUNCY_NAME.
Domain Name | Value |
---|---|
domainName |
CommodityPaymentFrequency.PreviousDay |
CommodityPaymentFrequency.PreviousDay |
PreviousDay |
CommodityFixingDatePolicy |
PreviousDay |
CommodityPaymentFrequency |
PreviousDay |
CommodityAveragingPolicy CommodityFXAveragingPolicy |
Sample |
CommodityFXAveragingRoundingPolicy CommodityAveragingRoundingPolicy |
Sample |
Also, please add following entry into SchemaData.xml. Make sure fixing_date_policy_id is unique.
<table name="fixing_date_policy" xmlns="">
…
<row cat="Required">
<column name="fixing_date_policy_id">8</column>
<column name="short_name">PreviousDay</column>
<column name="fixing_policy_type">PreviousDay</column>
<column name="int_param_1">0</column>
<column name="int_param_2">0</column>
</row>
…
</table>