Calypso Window Forward
A Window Forward trade is treated like a letter of credit, where by either the bank or the customer is allowed to 'Grant' the option at any time between the start date and the settle date. This process is called the Take Up. You may enter multiple take ups until the outstanding balance is zero.
This document details the configuration and capture of Window Forward trades.
1. Window Forward Setup
1.1 Domain Values
The Window Forward is a subtype of the product FXFlexiForward.
Domain Name |
Domain Value |
Comment |
---|---|---|
productType |
FXFlexiForward |
Window Forward is subtype of the FX Flexi Forward product |
FXFlexiForward.Pricer |
PricerFXFlexiForward |
Default pricer |
FXFlexiForward.subtype |
WindowForward |
Default subtype |
productTypeReportStyle |
FXFlexiForward & FXFlexiForwardWindowForward |
Default report style |
sdFilterCriterion.Factory |
FXFlexiForwardWindowForward |
Static Data Filter elements factory for Window Forwards |
tradeKeyword & systemKeyword |
FXFlexiForwardParentTradeId |
On Takeup, a new FX Forward trade is created. This keyword on the new trade provides a link back to the parent Window Forward trade. |
keywords2CopyToWindowForwardRollover & keywords2CopyToWindowForwardTakeUp |
|
Domains to capture any client/custom keywords that should be carried over to the new trades created from rollover or takeup |
workflowRuleTrade |
CheckFXFlexiForwardWindowForward |
Workflow rule to validate amendments and take ups being done on the Window Forward trade |
scheduledTask |
WINDOWFORWARD_TAKEUP |
Domain for scheduled task to automatically take up the outstanding amounts on a window end date. |
eventType |
EX_WINDOWFORWARD_TAKEUP_SUCCESS EX_WINDOWFORWARD_TAKEUP_FAILURE |
Indicates if the Window Forward scheduled task was a success or failure |
exceptionType |
WINDOWFORWARD_TAKEUP_FAILURE WINDOWFORWARD_TAKEUP_SUCCESS |
Indicates if the Window Forward scheduled task was a success or failure |
WindowForwardTakeupRemainingAmount |
true/false |
Used to automatically take up the remaining balance of the non-negotiated amount when the negotiated currency amount is fully taken up. When set to true, if the outstanding amount of the take up currency = 0 after the takeup, the other takeup amount will equal the other entire outstanding balance. If set to false (default), the other takeup amount will be calculated. |
1.2 Position configuration
Although the Window Forward is not position based, it results in currency pair positions when a WINDOW_FORWARD_FEE is added to the trade due to termination. Therefore, the system should be informed that it needs to generate cash positions. If the Window Forward fee positions have to be viewed in a Currency Pair context, it is recommended to add the necessary position aggregation for it.
Below is an example of a Position Configuration. It is showing the recommended FX Flexi Forward configuration. The client should review it and evaluate the configuration that works best for their needs.
Ideally for the FX product suite, it is not recommended to generate 'CurrenyPair' aggregation, but there are FX positions created for the FX Flexi Forward (Window Forward) trades.
There is cash created to represent the Termination / Window Forward Fee. If you want to see that amount in any of the Currency Pair reports, or Position Rollover, it needs to be generated with currency pair aggregation.
1.3 Fee Definition
Upon termination, a Window Forward fee is assessed on the trade to account for the cost of termination. This fee definition entry is not automatically created during Execute SQL.
This fee definition should be added in Calypso manually.
1.4 Workflow
Workflow Rule
There is a workflow trade rule, CheckFXFlexiForwardWindowForward, that can be set on the workflow transitions that require validation.
For example, once a lifecycle action is performed on the Window Forward, financial change (rate, notional, window date changes) may want to be prevented on the Window Forward. In this case, this rule can be added to the appropriate transitions.
Similarly, this rule can be added to the TAKEUP workflow transition to ensure that it is a valid take up.
This rule can also be applied on the FX Forward amend / cancel transitions to prevent changes to any FX Forward trades that were created from Take Ups.
To prevent inadvertent financial changes or cancellations on the Take Up FX Forward trade, the workflow rule ValidFXFlexiForwardWindowForwardTakeUpChange is suggested to be added to FX Forward transitions. This workflow rule will ensure that there are no discrepancies between the take ups and the outstanding balances on the Window Forward.
Note: When the CheckValidAction workflow rule is used on a Window Forward, it only checks on the main trade and for the action ROLLOVER.
Workflow Transition
Below is a sample workflow transition table for Window Forwards. Note that this is just an example and the transitions should be reviewed and adjusted to suit specific needs.
These rules are specific to Window Forwards:
• | Take Ups are always performed with the TAKEUP action, therefore ensure that a valid workflow transition for action TAKEUP is available |
• | Terminations are performed with the TERMINATE action |
• | Rollovers are performed with the ROLLOVER action |
The rest of the workflow AMEND, CANCEL and various UNDOs are similar to other products in Calypso. Any action for "undo" needs to be defined under the domain TradeRejectAction and its workflow transition should include the Reject workflow rule.
1.5 Book Definition
The PositionKeepingBookType for a sales book should be SALES. The DayChangeRule should be FX.
Note: Deals in a Sales Book always price as an FX Forward. Deals in a Prop book price to Worst
2. Trade Capture
A Window Forward trade is booked through Deal Station. From Calypso Navigator, select Trade > Foreign Exchange > Deal Station. Choose Window Forward as the Trade Type.
Field |
Description |
||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Window Forward Type |
PRIMARY, OFFSET or RISK. The Counterparty trades are of type PRIMARY. The backout from the sales book is of type OFFSET. The Forward desk trade is of type RISK. |
||||||||||||
Window Start Date |
Start of the window Window Forward Start Date should not be before the Trade Date |
||||||||||||
Window End Date |
End of the window |
||||||||||||
Spot |
Spot rate for the trade |
||||||||||||
Points |
Worst points for the trade Note: When multiple worst point values are the same: If Points are Negative:
If Points are Positive:
|
||||||||||||
Trader Rate |
Spot + Worst points |
||||||||||||
Total Margin |
Sales margin
|
||||||||||||
Final Rate |
Trader rate +/- margin |
||||||||||||
Prim. Outstanding |
Outstanding amount left in the primary currency |
||||||||||||
Quot. Outstanding |
Outstanding amount left in the quoting currency |
Note: When pricing reciprocal currency pairs, the direction of the trade is determined from the primary currency amount in pair position reference form.
Below are the User Attribute Defaults needed for a Window Forward trade.
3
• | FX Default Currency Pair - Default currency pair for a new deal in Deal Station |
• | FX Default Deal Type - Default trade type for a new deal in Deal Station |
• | FX WindowForward Default End Tenor - For a new window forward in Deal Station, this is the default window end |
• | FX WindowForward Default Start Tenor - For a new window forward in Deal Station, this represents the default window start |
• | The sales person and trader are copied from the User Defaults to the Take Up (FX Forward) trade |
2.1 Manual Take Up
If the counterparty wants to settle part or all of the outstanding amounts, click the Take Up button to execute a manual Take Up. A Take Up can only be executed after the trade has been saved.
Note: Take Up Settle Date defaults to Today / Current Date.
Upon Take Up, the outstanding balance reduces and a new action is visible on the trade.
It is possible to right-click on the take up to see details or to undo the TakeUp.
Additional forward risk routing trades are created upon Take Up.
A new FX forward trade is created to represent the Take Up.
On Take Up, the outstanding on the OFFSET and RISK trades is also reduced.
2.2 Termination
Below is an example of a Termination on a Window Forward trade.
Initial routing on the Window Forward.
Perform a manual termination on the Window Forward.
The spot rate worst points, at the time of termination, feed into the fee amount.
The Termination Fee Date is editable.
Upon Termination, a new TERMINATE action appears on the Window Forward. Its outstanding amount is reduced and a WINDOW_FORWARD_FEE is calculated for the cost of termination.
Upon Termination, the fee is transferred to the trading book and an FX Swap trade is created.
2.3 Rollover
Below is an example of a rollover trade.
[=
Perform a manual rate rollover on the window end date.
» | The default roll to date is 1 business day. The user has the ability to override it to be for a longer period. |
» | The spot rate, points and margin are for the new trade from rollover. By default, they are the current spot and worst points at the time of the rollover. Worst points are calculated using the new trade rollover From Date and the rollover To Date. The user has the ability to override these. |
» | Market Rate Rollover and Historical Rate Rollover can be performed on an FX Window Forward. |
» | The new Window Forward from rollover is treated as a new independent Window Forward for routing, including spot risk and forward risk routing. |
» | The rolled Window Forward trade is updated to reduce the outstanding amount by the rolled amount. There will be spot risk routing for the rolled amount. |
Upon the rollover, there is a new action that points out the new trade created from the rollover.
Upon rollover, the potential margin for the rolled amount can be seen in the rollover action details.
There is also additional spot risk routing for the rollec amount.
The outstanding amounts on the routed trades go to 0.
Below is the new trade from the rollover.
The new trade goes through the same routing as any new Window Forward trade, thereby giving the net 0 spot risk transfer between the original and new trades.
Rollover history is just like an FX Forward rollover history.
2.4 Window Forward Take UP Scheduled Task
The WINDOWFORWARD_TAKEUP scheduled task can be used to automatically create Take Up trades on Window Forwards that are past due and have an outstanding amount.
From Calypso Navigator, choose Configuration > Scheduled Tasks.
The WINDOWFORWARD_TAKEUP schedule task:
• | Looks for FX Window Forward trades that have both an outstanding amount greater than zero and the end date is less than or equal to today's date for the currency pair used in the trade |
• | Creates FX Take Up trades for any outstanding amounts meeting the conditions mentioned above |
• | Creates Task Station information exceptions when the system completes the task and for each take up generated |