Understand Contract Cash Evaluating Logic during Processing
When you process contract cash, the system determines whether a given transaction is eligible for contract cash processing to settle it automatically. The system uses the criteria you set up for contract cash processing in the Run Contract Cash panel or corresponding event, the contract cash rule criteria, the currency exclusion rule criteria, if applicable, and the transaction’s criteria.
About Auto Settle Indicator Values for Cash Rows
During Contract Cash processing, the STAR engine finds the contract cash rule for the current event. It then evaluates the rule and the current event to set up the Auto Settle Indicator (tag 58) value on the traded cash row to indicate whether the cash is eligible to be settled by Contract Cash. After evaluating the rule and the event, if the Auto Settle Indicator on the cash row is set to a value of:
C, the row is eligible for Contract Cash to settle it automatically. Of course, you can also manually settle any cash rows row that are marked eligible for Contract Cash processing.Â
N, Contract Cash cannot settle the cash event.
Y, the system will auto settle the cash event and the Contract Cash process will skip it.
The following section describes the process flow that the system uses to set the Auto Settle Indicator value for each cash row. Those transactions assigned a C are then eligible for contract cash processing to settle them.
Process Flow
The system stores the contract cash rule ID for each entity in the RULESdbo.ENTITY_ACCT_BASIS table and adds it to the current event in tag 11832 when it queries Q_ACCT_BASIS during event processing.
When the STAR engine processes a cash trade event, it sets the tag 58 (Auto Settle Trade Indicator) value based on the event and the contract cash rule linked to the event’s entity. Here are the steps it follows:
If the tag 58 value in the current event is Y, the system does not check the contract cash rule and/or update tag 58. Tag 58 = Y indicates that the cash will autosettle.
If the tag 58 value in the current event is not equal to Y, the processing continues.
If a contract cash rule is set up for the current event's entity, the system finds the rule details and the event’s cash category and follows the hierarchy below to determine the value to set up in tag 58.
First, the system checks to see if the rule's Contractual Cash Settlement Type election = None. If yes, the system sets tag 58 = N and exits. If the Contractual Cash Settlement Type is not set to None, processing continues.
Second, the system checks the rule's Contractual Cash Settlement Type election and the current event's Cash Category (tag 62), such that:
If the event's cash category = INCOME and Contractual Cash Settlement Type is not set to Income or Trade and Income, then the system sets tag 58 = N and exits.
If the event's cash category = TRADE and Contractual Cash Settlement Type is not set to Trade or Trade and Income, then the system sets tag 58 = N and exits.
Third, the system checks the current event’s subtype (tag 55), such that:
If the current event subtype = MATURITY and rule's Contractual Maturity Settlement election is set to No, then the system sets tag 58 = N and exits.
If the current event subtype = RECLAIM and rule's Reclaim Exclusion Switch election = Yes, then the system sets tag 58 = N and exits.
Fourth, the system checks the corporate action instance (tag 4268) on the event, such that:
If the current event is a corporate action event and rule's Corporate Actions election = None, then the system sets tag 58 = N and exits.
If the current event is a corporate action event and the current event's cash category = INCOME and the rule's Corporate Actions election is not set to Income or Trade and Income, then the system sets tag 58 = N and exits.
If the current event is a corporate action event and the current event's cash category = TRADE and the rule's Corporate Actions election is not set to Trade or Trade and Income, then the system sets tag 58 = N and exits.
Next, the system checks to see if the contract cash rule includes a Currency Exclusion Rule (tag 11832). If a currency exclusion rule is set up, the system looks through all the currencies listed in the currency exclusion rule and the Exclude Only Cash Dividends value for this Currency election for each currency, as follows:
If the event's local currency (tag 85) matches the exclusion rule's currency and the event is a cash dividend and the exclusion rule’s Exclude Only Cash Dividends For This Currency election is set to Yes, then the system sets tag 58 = N and exits.
If the event's local currency (tag 85) matches the exclusion rule's currency and exclusion rule's Exclude Only Cash Dividends For This Currency election is set to No, or is not blank, then the system sets tag 58 = N for all cash events for that currency, and exits.
Finally, once the system passes through all the previous checks and tag 58 is still not set up — which means the event did not meet any exclusion criteria set up in the contract cash rule and currency exclusion rule — then the cash row is eligible for Contract Cash processing. The system sets tag 58 = C and exits.
When you run Contract cash, only the cash rows with tag 58 = C will be settled, based on the various query options available in the Run Contract Cash panel.
Â