com.apama.firewall.rules
Event ClientCreditLimitRiskFirewallRule


The Client Credit Limit Firewall rule is designed to check the total value of all orders that are being placed by a specific trader, or set of traders, does not breach the maximum credit limit that they are allowed to trade.

Note: This Firewall rule implementation relies on the order price being available when an order is placed against it, so that the rule can determine the order value. Therefore, this rule will not operate as expected for Market orders being placed with a zero price value. In this case, the initial order may be allowed through the Firewall. When the order receives a fill, then the Firewall rule instance will be updated to reflect the current client credit position. At which point, any new orders, including Market orders, will be rejected.

Note: This Firewall rule implementation is not designed for foreign exchange (FX) or mixed markets, as this implementation does not normalise the order values to a base currency value. It will use the value in the native currency for that order.

This Risk Firewall Rule checks both the Open and Pending positions of matching orders.

Either an individual minimum and maximum limit can be set, or alternatively a symmetric limit can be set (e.g. 100 would set a positive limit to +100 and a negative limit to -100).
Since:
CMF 5.1.0
Version:
10.3

Action summary
 com.apama.firewall.RuleClasscreate(context mainContext, string openPositionTrackerName, string pendingPositionTrackerName)

This action creates a fully populated Rule Class Interface for the Position Limit Rule ready to be registered with a Risk Firewall.
 voidresetAllPositions()

This action can be called by the application to reset all of the positions being calculated for all current instances of the Position Limit Rule Class.
 voidresetPosition(integer instanceId)

This action can be called by the application to reset the current positions being calculated for a specific instance of the Position Limit Rule Class.
 
Action detail

create

com.apama.firewall.RuleClass create(context mainContext, string openPositionTrackerName, string pendingPositionTrackerName)
This action creates a fully populated Rule Class Interface for the Position Limit Rule ready to be registered with a Risk Firewall.
Parameters:
mainContext
openPositionTrackerName
pendingPositionTrackerName
Returns:
A fully populated Rule Class Interface.
See Also:
com.apama.firewall.RiskFirewall#registerRuleClass - The action to call on the Risk Firewall to register this RuleClass object

resetAllPositions

void resetAllPositions()
This action can be called by the application to reset all of the positions being calculated for all current instances of the Position Limit Rule Class.

resetPosition

void resetPosition(integer instanceId)
This action can be called by the application to reset the current positions being calculated for a specific instance of the Position Limit Rule Class.
Parameters:
instanceId - The identifier for the specific Rule Class instance.