Metadata-Version: 2.1
Name: copul
Version: 0.0.9
Summary: Mathematical computation and visualization of bivariate copulas.
Home-page: https://github.com/Corrram/copul
Author: Marcus Rockel
Author-email: marcus.rockel@finance.uni-freiburg.de
Requires-Python: >=3.10,<4.0
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: interval (>=1.0,<2.0)
Requires-Dist: matplotlib (>=3.8,<4.0)
Requires-Dist: numpy (>=2.0,<3.0)
Requires-Dist: pandas (>=2.2,<3.0)
Requires-Dist: pillow (>=10.3,<11.0)
Requires-Dist: scipy (>=1.14,<2.0)
Requires-Dist: statsmodels (>=0.14,<0.15)
Requires-Dist: sympy (>=1.12,<2.0)
Requires-Dist: sympy-plot-backends (>=3.1,<4.0)
Project-URL: Documentation, https://copul.readthedocs.io
Project-URL: Issue Tracker, https://github.com/Corrram/copul/issues
Project-URL: Repository, https://github.com/Corrram/copul
Description-Content-Type: text/markdown

# copulas_in_systemic_risk

## Copula properties
For any of the copula families below, e.g. `copula = copul.Galambos()`, get the following properties:
* Cumulative distribution function via copula.cdf
* Density function via copula.pdf

## Supported copula families:

### Archimedean Copulas
The 22 copula families from Nelsen, accessible via
`copul.archimedean.Nelsen1`, `copul.archimedean.Nelsen2`, etc.
Let `copula` be any instance of those classes, e.g. `copula = copul.archimedean.Nelsen1()`.

For these families, the following properties are available:
* generator function is available via e.g. `copula.generator`
* inverse generator function is available via e.g. `copula.inverse_generator`
* CI char function is available via e.g. `copula.ci_char`
* the MTP2 char function is available via e.g. `copula.mtp2_char`

### Extreme Value Copulas
* BB5
* Cuadras-Augé
* Galambos
* Gumbel
* Husler-Reiss
* Joe
* Marshall-Olkin
* tEV
* tawn

Let `copula` be any instance of those classes, e.g. `copula = copul.extreme_value.Galambos()`.
Then, the Pickand function is available via e.g. `copula.pickand`.

### Other
* Farlie-Gumbel-Morgenstern
* Fréchet
* Mardia
* Plackett
* Raftery

## Sample Usage
```
import copul

galambos = copul.extreme_value.Galambos()
params = galambos.sample_parameters(3)
galambos.plot_pickand(params)

clayton = copul.archimedean.Clayton()
clayton(theta=1.5).plot_cdf()
clayton(theta=2.5).plot_pdf()
```

