## pricing.Mbbefd


The MBBEFD exposure curve and destruction-rate distribution (Bernegger,


Usage


``` python
pricing.Mbbefd()
```


1997), with `b >= 0` and `g >= 1`; `1/g` is the probability of a total loss.

`G(x)` is the share of a risk's expected loss below the fraction [x](pricing.TabulatedCurve.md#prospicio.pricing.TabulatedCurve.x) of its maximum possible loss (MPL). `Mbbefd.swiss_re(c)` gives Bernegger's one-parameter family: `c = 1.5, 2, 3, 4` are the Swiss Re curves and `c = 5` the Lloyd's curve.


## Parameters


`b: float`  

`g: float`  


## Examples

``` python
>>> from prospicio.pricing import Mbbefd
>>> c3 = Mbbefd.swiss_re(3.0)
>>> top = c3.layer_share(5e6, 5e6, 10e6)
>>> bottom = c3.layer_share(5e6, 0.0, 10e6)
>>> round(top + bottom, 12), top < bottom
```

(1.0, True)


## Attributes

| Name | Description |
|----|----|
| [b](#b) | Parameter [b](pricing.Mbbefd.md#prospicio.pricing.Mbbefd.b). |
| [g](#g) | Parameter [g](pricing.Mbbefd.md#prospicio.pricing.Mbbefd.g). |

------------------------------------------------------------------------


#### b


Parameter [b](pricing.Mbbefd.md#prospicio.pricing.Mbbefd.b).


`b: float`


------------------------------------------------------------------------


#### g


Parameter [g](pricing.Mbbefd.md#prospicio.pricing.Mbbefd.g).


`g: float`


## Methods

| Name | Description |
|----|----|
| [cdf()](#cdf) | Distribution function of the destruction rate at each [x](pricing.TabulatedCurve.md#prospicio.pricing.TabulatedCurve.x). |
| [curve()](#curve) | The exposure curve `G(x)` at each [x](pricing.TabulatedCurve.md#prospicio.pricing.TabulatedCurve.x) (clamped to \[0, 1\]). |
| [layer_share()](#layer_share) | Share of a risk's expected loss in the layer [limit](reinsurance.Layer.md#prospicio.reinsurance.Layer.limit) xs |
| [mean()](#mean) | Mean destruction rate, `1 / G'(0)`. |
| [rate_quantile()](#rate_quantile) | Destruction rate (loss over MPL) at each probability `u` in |
| [swiss_re()](#swiss_re) | Bernegger's curve `c`: `b = exp(3.1 - 0.15 (1 + c) c)`, |
| [total_loss_probability()](#total_loss_probability) | Probability of a total loss, `1/g`. |

------------------------------------------------------------------------


#### cdf()


Distribution function of the destruction rate at each [x](pricing.TabulatedCurve.md#prospicio.pricing.TabulatedCurve.x).


Usage


``` python
cdf(x)
```


##### Parameters


`x: list of float`  


##### Returns


`list of float`  


------------------------------------------------------------------------


#### curve()


The exposure curve `G(x)` at each [x](pricing.TabulatedCurve.md#prospicio.pricing.TabulatedCurve.x) (clamped to \[0, 1\]).


Usage


``` python
curve(x)
```


##### Parameters


`x: list of float`  


##### Returns


`list of float`  


------------------------------------------------------------------------


#### layer_share()


Share of a risk's expected loss in the layer [limit](reinsurance.Layer.md#prospicio.reinsurance.Layer.limit) xs


Usage


``` python
layer_share(limit, attachment, mpl)
```


[attachment](reinsurance.Layer.md#prospicio.reinsurance.Layer.attachment), for a risk with maximum possible loss `mpl`.


##### Parameters


`limit: float`  

`attachment: float`  

`mpl: float`  


##### Returns


`float`  


------------------------------------------------------------------------


#### mean()


Mean destruction rate, `1 / G'(0)`.


Usage


``` python
mean()
```


##### Returns


`float`  


------------------------------------------------------------------------


#### rate_quantile()


Destruction rate (loss over MPL) at each probability `u` in


Usage


``` python
rate_quantile(u)
```


`(0, 1)`: draws with this curve as their exposure curve.


##### Parameters


`u: list of float`  


##### Returns


`list of float`  


------------------------------------------------------------------------


#### swiss_re()


Bernegger's curve `c`: `b = exp(3.1 - 0.15 (1 + c) c)`,


Usage


``` python
swiss_re(c)
```


`g = exp((0.78 + 0.12 c) c)`.


##### Parameters


`c: float`  
Non-negative; 0 is the straight line.


##### Returns


`Mbbefd`  


------------------------------------------------------------------------


#### total_loss_probability()


Probability of a total loss, `1/g`.


Usage


``` python
total_loss_probability()
```


##### Returns


`float`
