Listed Options Exercise
Download PDF - Expiration and Exercise
Applies to Future Options and ETO Equity Options.
It allows exercising long positions and assigning short positions. You can exercise and assign positions provided they are in-the-money, otherwise the positions expire.
You can also use the scheduled task ETO_EXERCISE.
1. Workflow Configuration
Make sure that you set the trade workflow rule CheckETOExercise on the transition PRICING-EXECUTE-PENDING (it is applied when the close-out trade is created).
2. Exercise, Assignment and Expiration Process
From the Calypso Navigator, navigate to Trade
Lifecycle > Expiration & Exercise > Fut Option / ETO Exercise (menu action reporting.ETOExerciseWindow
) to exercise / assign future options and ETOs as shown below.
You can configure the display using Data > Configure Columns.
» | Enter a process date. |
Note that you cannot process options in the future.
» | Selection an Action: |
– | Exercise and Assign: To load both long and short positions. |
– | Exercise: To load long positions only. |
– | Assign: To load short positions only. |
» | Select a trade filter, liquidation keys, a pricing environment 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 |
» | In the Contract & Products dropdown, a new Search tool has been implemented. |
-
Contracts appeared when you started typing the word.
» | You can also exclude products that have expired from the drop-down list. |
Example:
Expires On - June 17, 2023
Expires On - Sep 18, 2023
-
When contract NASDAQ100 is selected with process date as Aug 24'2023 only product 2 is displayed.
-
When contract NASDAQ100 is selected with process date as Jun 17'2023 both products displayed.
-
No products displayed when process date is Sept 19'2023.
-
All products included when include expired is checked.
You also need closing prices on the process date. Choose Market Data > Check to check if the required quotes are available.
For the Physical settlement type, the Exercise process does not require the underlying price except if the Contract Size has a decimal. In this case, the underlying price is required to calculate the OPT_CASH_ADJ transfer amount. An exception is raised into the Task Station. The user can enter the underlying price and reprocess the exception.
For the Cash settlement type, the underlying price is required.
» | You can check the Include Expired checkbox if you want to undo an expiration or if you want to view exercised/expired options. |
See Undoing
an Expiration for details.
» | Then click Load. |
The positions maturing on the process date (for European options), or maturing before the process date (for American options), and satisfying the search criteria will be displayed.
Positions for which the CLOSE quote is not set will appear with a red background.
You can choose Expiry By:
– | Trade - To generate close out trades by open trade |
– | Position - To generate close out trades by position specification |
Select the Exercise checkbox, the Expiry checkbox or the Assign checkbox as applicable. The exercise / assign quantity is set to the position quantity by default. You can modify the quantity as needed.
field).
Click Apply to exercise, expire or assign the corresponding positions.
You can check the Internal checkbox to set the Internal trade keyword on the trades. It will be propagated to the CloseOut trades provided it is also added to the domains “keywords2CopyUponExpiry” and “keywords2CopyUponExercise”. You can then setup a static data filter on the Fee Grid to bypass the fee calculation for Internal trades.
» | You can also choose auto exercise. |
See Auto
Exercise Menu for details.
2.1 Exercise / Assignment
Close-out trades are created. The keyword TerminationType is set to CloseOut, the keyword LiquidableWith is set to the exercised / assigned trade id and the keyword OptionMoneyness is set to ATM, ITM or OTM as applicable.
An automatic liquidation will be performed between the exercised / assigned trades and the close-out trades.
If the delivery type is physical, a trade is created for the underlying future.
The system generates one "close-out" FutureOption trade per open trade to liquidate only that trade (specified in the LiquidableWith trade keyword), only for the selected position (specified in LiqConfigId and PosAggId trade keywords). If Position Keeping is configured for multiple Liquidation Configurations and/or Liquidation Attributes (Position Aggregations), the Exercise process must be performed for each unique position.
The close out price and exercise fee are computed as describe below:
Close Out Trade Price = Original Price of the Trade which is closed.
Premium Payment Convention | Settlement Type | Premium Transfer | Exercise Fee |
---|---|---|---|
Conventional |
Cash Settled |
No premium transfer. |
Intrinsic Value of Option * Quantity * Tick Value * Tick Size |
Conventional |
Physical |
No premium transfer |
Amount is set to zero. |
Variation Margined |
Cash Settled |
Premium on the Close Out trade equal to: Trade Price * -1 * Quantity * Tick Value * Tick Size |
Trade Price * -1 * Quantity * Tick Value * Tick Size |
Variation Margined |
Physical |
Premium on Close Trade equal to: Price * -1 * Quantity * Tick Value * Tick Size |
Amount is set to zero. |
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.
If Expiry By = 'Position', Partial Close Out is performed only when the 'Exercise Quantity'/'Assign Quantity' field values are less than 'Quantity' field value.
2.2 Expiration
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 as shown below.
An automatic liquidation will be performed between the expired trades and the close-out trades.
2.3 Report Menu
The menu items of the Report menu are described below.
Menu Items |
Description |
New |
To clear the window. |
Load |
To load contracts based on the search criteria. |
Refresh |
To refresh loaded contracts. |
Trade Filter |
To define a trade filter. |
Close |
To close the window. |
2.4 Data Menu
The menu items of the Data menu are described below.
Menu Items |
Description |
Configure Columns |
To customize the display columns of the results. |
Reset Default Column Configuration |
To reset the column configuration to the default configuration. |
Save Configure Columns |
To save the customized column configuration. |
2.5 Market Data Menu
The menu items of the Market Data menu are described below. Refer to the Calypso Market Data User Guide for details on these menu items.
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 |
To display the market data used by the contracts currently loaded. |
Check |
To check if the required market data are available in the selected pricing environment. |
Quotes |
To open the Quote window. |
2.6 Auto Exercise Menu
The menu items of the Auto Exercise menu are described below.
Menu Items |
Description |
|||||||||
All |
Sets Assign & Exercise fields for both long and short, in-the-money trades. Sets Expiry fields for both long and short, out-of-the-money trades on the expiry date. |
|||||||||
Exercise |
Sets Exercise fields for long, in-the-money trades only. |
|||||||||
Assign |
You can choose the following options:
You can associated a contract with an assignment method using the contract attribute AssignmentMethod: Random or Pro Rata. In this case, you can only use the corresponding assignment method. |
|||||||||
Expiry |
Sets Expiry fields for both long and short, out-of-the-money trades on the expiry date. |
3. Undoing an Expiration
To undo an expiration, enter the expiration date in the process date and do the following:
» | Check the “Include Expired” checkbox to load expired trades. |
» | Select a trade filter, liquidation keys, a pricing env a contract and a product as applicable. |
» | Then click Load. |
The contracts expired and exercised / assigned on the process date, and satisfying the search criteria, will be displayed.
Check the UnExpire checkbox then click Apply to cancel the expiration.
4. Undoing an Exercise
To undo an exercise, you need to apply the CANCEL action on the close-out trade.
The underlying delivery trade, if any, will be canceled as well, provided the UnExerciseExpiry trade rule is placed on the CANCEL transitions in the trade workflow as shown below.
5. Viewing Expiration and Exercise History
Choose Back Office > Exercise/Expiry History to view exercised and expired trades related to trade currently loaded.
» | You can choose Utilities > Configure Columns to customize the display. |
» | Click Close when you are done. |
6. Exercise / Assignment Import from Broker
For firms that use an external broker to clear their ETD business. The broker can provide a file of Exercises & Assignments which have taken place on the firm's accounts and the firm now needs to process these on their own ETD clearing back office system for their own clients.
The broker file is an XML file that can be imported using the scheduled task CLEARING_BROKER_FILE_UPLOAD.
6.1 Setup Requirement
You need to set the account attribute "AssignmentMethod" on the Counterparty Accounts to the assignment algorythm: RANDOM or PRORATA. Default is RANDOM if not set.
6.2 Mapping Requirements
The Account name on the broker file needs to map to the respective CounterParty Account within Calypso. The process will look for open positions under this CounterParty Account to exercise or assign, and then Client_Ref if defined.
From the Account Dashboard, navigate to the Mappings - Account Mapping panel.
» | Select the Interface that will be used under Interfaces. |
» | Select the Calypso Counterparty Account that the Account name on the file will map to under Accounts. |
» | Type in the Account name at the broker in the CounterParty Account field, and click Add. |
Client_Ref Mapping
You may need a Client_Ref mapping which will require both the CounterParty & Client Account code from the broker to be mapped to the Calypso client account.
This will be mapped in the same way as above. In the following example, CounterParty 732000 & Client Account map to Calypso account ABC123_001.
Market Mapping
You may also need mapping for the Market code. This is mapped under the Legal Entity Mapping panel.
» | Select the Interface and Legal Entity. |
» | Enter the market code in the Mapped Id field, and click Add. |
6.3 File Format
Key fields:
Field Name | Description | Mandatory / Optional | Sample data | Mapping Required | Notes |
---|---|---|---|---|---|
Transaction Type |
EXER = Exercise ASSN = Assignment |
M |
ASSN |
No |
|
Run Date |
yyyymmdd format. |
M |
20161007 |
No |
Process date in Calypso |
Trade Date |
yyyymmdd format. |
O |
20161006 |
No |
|
Account |
Account name at the broker (omnibus account). Maps to counterparty account name in Calypso . |
M |
732000 |
Yes – Acct Mapping Table, Source=XXX |
XXX provide 732000, maps to Calypso Counterparty acct = XXXAGT |
Client_Ref |
Client account name. Maps to client account name in Calypso. |
O |
EW3063 |
Yes – Acct Mapping Table, Source=XXX |
Brokers may choose to provide this, or not |
Market |
Exchange of the contract. |
M |
OCC |
Yes |
|
Product |
Contract code mapped to the ClearingExchangeTicker |
M |
AEO |
Yes |
|
Prompt_Date |
Prompt Month/Day in format yyyymmdd. For Monthly the last day of the month is provided e.g. Oct 2016 is 20161031. |
M | No |
|
|
Trade_Type |
F (Futures), P (Puts), C (Calls). |
M |
P |
No |
|
Strike_Price |
Option product strike |
M |
15.790000 |
No |
|
Product_Series |
Series Version Number |
O |
0 |
No |
|
Call / Put |
Put, Call |
M |
P |
Yes |
P=Put C=Call |
Contracts |
Number of lots to exercise or assigned. |
M |
19.000000 |
No |
|
6.4 Import
Configure the scheduled task CLEARING_BROKER_FILE_UPLOAD to import the file.
• | File Path - You can enter a folder and file name format in the File Path field. The file name needs to match the folder and file name format, in particular the valuation date must be the same as the {data} variable. |