The `Agg`

Language

Aggregate Distributions

An aggregate distribution is specified as

` agg [label] [exposure] [limit]? sev [severity] [frequency] `

The words `agg`

and `sev`

are keywords
(like `if/then/else`

), `[label], [exposure], [limit]?`

etc.
are user inputs, and the limit clause is optional.

For example

` agg Auto 10 claims sev lognorm 10 cv 1.3 poisson `

creates an aggregate with label Auto, an expected claim count of 10, severity sampled from an unlimited lognormal distribution with mean 10 and CV 1.3, and a Poisson frequency distribution. The layer is unlimited because the limit clause missing. The label must begin with a letter and contain just letters and numbers. It can't be a language keyword, e.g. agg, port, poisson, fixed

Exposure can be specified in three ways.

```
123 claim[s]
1000 loss
1000 premium at 0.7 [lr]?
```

The first gives the expected claim count; the `s`

on `claims`

is optional.
The second gives the expected loss with claim counts derived from average severity.
The third gives premium and a loss ratio with counts again derived from severity.
The final `lr`

is optional and just used for clarity.

Limit are entered as layer `xs`

attachment or layer `x`

attachment.

Here are four illustrative examples. The line must start with `agg`

(no tabs or spaces first) but
afterwards spacing within the spec is ignored and can be used to enhance readability.
The newline is needed.

```
agg Example1 10 claims 30 xs 0 sev lognorm 10 cv 3.0 fixed
agg Example2 10 claims 100 xs 0 sev 100 * expon + 10 poisson
agg Example3 1000 loss 90 x 10 sev gamma 10 cv 6.0 mixed gamma 0.3
agg Example4 1000 premium at 0.7 lr inf x 50 sev invgamma 20 cv 5.0 binomial 0.4
```

Here is what each example produces.

`Example1`

10 claims from the 30 x 0 layer of a lognormal severity with (unlimited) mean 10 and cv 3.0 and using a fixed claim count distribution (i.e. always exactly 10 claims).`Example2`

10 claims from the 100 x 0 layer of an exponential severity with (unlimited) mean 100 shifted right by 10, and using a Poisson claim count distribution. The exponential has no shape parameters, it is just scaled. The mean refers to the unshifted distribution.`Example3`

1000 expected loss from the 90 x 10 layer of a gamma severity with (unlimited) mean 10 and cv of 6.0 and using a gamma-mixed Poisson claim count distribution. The mixing distribution has a cv of 0.3 The claim count is derived from the**limited**severity.`Example4`

700 of expected loss (1000 premium times 70 percent loss ratio) from an unlimited excess 50 layer of a inverse gamma distribution with mean of 20 and cv of 5.0 using a binomial distribution with p=0.4. The n parameter for the binomial is derived from the required claim count.

The inverse Gaussian (`ig`

), `delaporte`

,
`Sichel`

and other distributions are available as mixing distributions.
The Aggregate Manual provides more details.

Portfolios

Several aggregates can be combined into a portfolio. They are aggregated assuming independence between the components. Before you roll your eyes and dismiss everything bear in mind 1) a substantial amount of correlation between results is generated by premium correlation (the cycle) and not loss correlation; 2) cats are often genuinely uncorrelated, e.g. East coast wind and Japan quake; 3) using the more advanced features of the language you can share mixing distributions to proxy correlation. A portfolio is entered:

```
port MyPortfolio
agg Example1 10 claims 30 xs 0 sev lognorm 10 cv 3.0 fixed
agg Example2 10 claims 100 xs 0 sev 100 * expon + 10 poisson
agg Example3 1000 loss 90 x 10 sev gamma 10 cv 6.0 mixed gamma 0.3
agg Example4 1000 premium at 0.7 lr inf x 50 sev invgamma 20 cv 5.0 binomial 0.4
```

The first `port`

statement must begin a newline. The `agg`

statements must be indented with one TAB. Use four spaces in the control box for a TAB.

The code above can be cut and pasted into the text box below to create an example. Make sure you remove leading spaced before `agg`

or `port`

.