Future Expiration
Download PDF - Expiration and Exercise
Futures can be expired using Trade Lifecycle > Expiration & Exercise > Future Expiry (menu action reporting.FutureExpiryWindow
).
You can also use the FUTURE_POSITION_EXPIRY scheduled task to expire futures.
See FUTURE_POSITION_EXPIRY Scheduled Task for details.
1. Expiration
» | Enter a value date. |
Note that you cannot expire futures in the future.
» | Check the Include Expired checkbox if you want to undo an expiration or if you want to view expired futures. |
See Undoing an
Expiration for details.
» | Select a trade filter, a pricing env and a contract as applicable. |
Note that the pricing env must have the following pricing parameters:
– | INSTANCE_TYPE set to CLOSE |
– | NPV_FROM_QUOTE set to true |
– | FUTURE_FROM_QUOTE set to true |
You also need closing prices on the value date. Select Tools > Check Quotes to check if the required quotes are available.
» | Then click Load. |
The contracts maturing on the value date and satisfying the search criteria will be displayed.
You can choose Expiry By:
– | Trade - To generate close out trades by open trade |
– | Position - To generate close out trades by position specification |
Check the Expiry checkbox then click Apply to expire the corresponding futures.
Close out trades are created. The trade keyword TerminationType is set to CloseOut and the trade keyword LiquidableWith is set to the expired trade id on the close out trades as shown below.
The trade keyword SettlementType is set to the contract's settlement type.
An automatic liquidation is performed between the expired trades and the close out trades.
If the delivery type is physical, a trade is created for the underlying. For a bond future, the cheapest-to-deliver bond is delivered.
The transfer engine generates REALIZED_PL transfers, provided it subscribes to PSEventLiquidatedPosition, PSEventUnliquidatedPosition and PSEventAggLiquidatedPosition events. The REALIZED_PL transfers are not generated if trade keyword SettlementType = Physical.
Please refer to Calypso Settlements documentation for setup details.
1.1 Tools Menu
The menu items of the Tools menu are described below.
Menu Items |
Description |
Trade Filter |
To define trade filters. |
Check Quotes |
To check if the required market data are available in the pricing environment. |
Clear |
To clear the window. |
Close |
To close the window. |
1.2 Market Data Menu
The menu items of the Market Data menu are described below.
Menu Items |
Description |
Pricing Env |
To define pricing environments. |
Reload |
To reload the pricing environment: definition and market data as of the current valuation date and time. |
Display |
Not applicable. |
Check |
To check if the required market data are available in the pricing environment. |
Quotes |
To open the Quote window. |
2. Undoing an Expiration
To undo an expiration, enter the expiration date in the value date and do the following:
» | Check the Include Expired checkbox to load expired trades. |
» | Select a trade filter, a pricing env and a contract as applicable. |
» | Then click Load. |
The contracts expired on the value date and satisfying the search criteria will be displayed.
Check the UnExpire checkbox then click Apply to cancel the expiration.
Ⓘ [NOTE: You must have the workflow rule UnExerciseExpiry setup to handle this operation for physically settled future contracts. This rule cancels the physical trade created upon Exercise / Expiry when canceling the CloseOut trade. This rule should be set on the CANCEL action of CloseOut future trades (transition VERIFIED - CANCEL - CANCELED)]
3. FUTURE_POSITION_EXPIRY Scheduled Task
The FUTURE_POSITION_EXPIRY scheduled task can be used to automatically expire futures.
From the Calypso Navigator, navigate to Configuration > Scheduled Tasks (menu action scheduling.ScheduledTaskListWindow
), and select
the FUTURE_POSITION_EXPIRY scheduled task as shown below.
» | Select a trade filter, pricing env, and processing org as applicable. |
Note that the pricing env must have the following pricing parameters:
– | INSTANCE_TYPE set to CLOSE |
– | NPV_FROM_QUOTE set to true |
– | FUTURE_FROM_QUOTE set to true |
You also need closing prices on the execution date.
» | Select the market place as needed. |
» | Select EXPIRY BY: |
– | Trade - To generate close out trades by open trade |
– | Position - To generate close out trades by position specification |
» | Then save the scheduled task and execute it as applicable. |
The contracts maturing on the execution date will be expired.
Close out trades are created. The keyword TerminationType is set to CloseOut, and the keyword LiquidableWith is set to the expired trade id on the close out trades.
An automatic liquidation will be performed between the expired trades and the close out trades.
If the delivery type is physical, a trade is created for the underlying. For a bond future, the cheapest-to-deliver bond is delivered.