Trigger¶
Emits subject loss records based on control losses that satisfies a trigger condition. This can be used to implement a variety of different triggers such as:
Industry Loss Triggers
Company Loss Triggers
Exclusive Triggers (Step Layers)
Aggregate Triggers
Structure¶
{
"_schema": "Trigger_1.0",
"threshold": 100.0,
"op": "LESS_THAN",
"control_record_type": "Control",
"accumulation_class_columns": ["Trial"]
"accumulation_prefix_class_columns": ["Trial", "Time", "Occurrencekey"]
"exclusive": false,
"currency": "GBP"
}
Parameters¶
Parameter Name |
Required |
Type |
Description |
---|---|---|---|
|
Yes |
|
The trigger |
|
Yes |
|
Operator to be used in comparing threshold. Allowed values are |
|
Yes |
|
The record type string used to identify the control loss records. |
|
No |
|
List of column names. Defines the accumulation equivalance class. This will always include the |
|
No |
|
List of column names. Defines the accumulation prefix class. This will always include the |
|
No |
|
Specifies if the current prefix increment should be excluded from the threshold. |
|
No |
|
The currency in which the |
Behaviour¶
Control losses are accumulated within accumulation equivalance classes, which are
defned by the column values specified by accumulation_class_columns
. Records
sharing identical values specified by the accumulation_class_columns
constitute an equivalance class. The aggregation of control losses occures
through accumulation prefix increments, which are equivalence classes congruent
to or subclasses of the accumulation equivalance classes. The set of columns
whose values defined by accumulation_prefix_class_columns
must be identical
or a super set of the columns specified by accumulation_class_columns
. A
running total of the accumulation prefix is maintained as a prefix sum. This
prefix sum undergoes evaluation against the trigger condition. For exclusive
triggers, the trigger condition evaluation is conducted before incorporating the
current prefix increment. For each prefix sum meeting the trigger condition test,
subject losses falling with the same equivalence classes at the current prefix
increment are emitted. Subject losses are those records where its value of the
column name Type
is not equal to the control record type specified by
control_record_type
.
Example¶
For example, an occurrence industry loss trigger with a trigger value of $100 will only pass those subject losses if the industry losses for the same occurrence that are less than or equal to $100 in losses. This example is illustrated in the input ledger below:
Trial |
Time |
Type |
Value |
EventId |
LOB |
---|---|---|---|---|---|
1 |
1 |
Control |
-50 |
1 |
A |
1 |
1 |
Loss |
-500 |
1 |
A |
1 |
1 |
Control |
-100 |
2 |
B |
1 |
1 |
Loss |
-1000 |
2 |
B |
If we use Trigger primitive with the following attributes:
{
"_schema": "Trigger_1.0",
"threshold": 100.0,
"op":"LESS_THAN_EQUAL",
"control_record_type":"Control",
"accumulation_class_columns":["Trial", "Time", "OccurrenceKey"]
"accumulation_prefix_class_columns":["Trial", "Time", "Occurrencekey"]
"exclusive": false
}
We will get the following output:
Trial |
Time |
Type |
Value |
EventId |
LOB |
---|---|---|---|---|---|
1 |
1 |
Loss |
-1000 |
2 |
B |