risk.esscher_allocation()
Esscher allocation: each component’s mean under the Esscher transform
Usage
risk.esscher_allocation(
pd,
h,
)of the total, E[X_j exp(h S)] / E[exp(h S)].
The contributions sum to esscher(pd, h); at h = 0 they are the means.
Parameters
pd: PredictiveDistributionh: float
Returns
list of float-
One per component, in
pd.components()order.
Examples
>>> from prospicio.distributions import PredictiveDistribution
>>> from prospicio.risk import esscher_allocation
>>> pd = PredictiveDistribution(["lob"], [("motor",), ("property",)],
... [[1.0, 2.0], [4.0, 1.0], [2.0, 5.0], [3.0, 6.0]])
>>> esscher_allocation(pd, 0.0)[2.5, 3.5]