Metadata-Version: 2.4
Name: copul
Version: 0.2.9
Summary: Risk analysis with copulas.
Project-URL: Repository, https://github.com/Corrram/copul
Project-URL: Documentation, https://copul.readthedocs.io
Project-URL: Issue Tracker, https://github.com/Corrram/copul/issues
Author-email: Marcus Rockel <marcus.rockel@finance.uni-freiburg.de>
License-File: LICENSE
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.10
Requires-Dist: matplotlib>=3.9
Requires-Dist: numpy>=2.0
Requires-Dist: pandas>=2.3
Requires-Dist: scipy>=1.14
Requires-Dist: statsmodels>=0.14
Requires-Dist: sympy-plot-backends>=3.1
Requires-Dist: sympy>=1.14
Requires-Dist: typing-extensions>=4.15.0
Provides-Extra: dev
Requires-Dist: black>=24.8; extra == 'dev'
Requires-Dist: build>=0.10.0; extra == 'dev'
Requires-Dist: cvxpy>=1.7.1; extra == 'dev'
Requires-Dist: hatchling>=1.27.0; extra == 'dev'
Requires-Dist: jupyter>=1.0.0; extra == 'dev'
Requires-Dist: mypy>=1.0.0; extra == 'dev'
Requires-Dist: pylint>=2.17.0; extra == 'dev'
Requires-Dist: pytest-cov>=5.0.0; extra == 'dev'
Requires-Dist: pytest-xdist>=3.6.1; extra == 'dev'
Requires-Dist: pytest>=8.3.5; extra == 'dev'
Requires-Dist: ruff>=0.9.9; extra == 'dev'
Requires-Dist: seaborn>=0.13.2; extra == 'dev'
Requires-Dist: sphinx-rtd-theme>=2.0; extra == 'dev'
Requires-Dist: sphinx>=7.4; extra == 'dev'
Requires-Dist: twine>=6.1.0; extra == 'dev'
Description-Content-Type: text/markdown

# copul

**copul** is a package designed for mathematical computation with and visualization of bivariate copula families.

# Install

Install the copul library using pip.

```bash
pip install copul
```

# Documentation

A guide and documentation is available at [https://copul.readthedocs.io/](https://copul.readthedocs.io/).

# Copula families and copulas

The `copul` package covers implementations of the following copula families:

- **Archimedean copula families**: The 22 Archimedean copula families from the book "Nelsen - An Introduction to Copulas" including 
    * Clayton
    * Gumbel-Hougaard
    * Frank
    * Joe
    * Ali-Mikhail-Haq
    * etc.
- **Extreme-value copulas families**:
    * BB5
    * Cuadras-Augé
    * Galambos
    * Gumbel
    * Husler-Reiss
    * Joe
    * Marshall-Olkin
    * tEV
    * Tawn
- **Elliptical copula families**:
    * Gaussian
    * Student's t
    * Laplace.
- **Other copula families**:
    * Farlie-Gumbel-Morgenstern
    * Fréchet
    * Mardia
    * Plackett
    * Raftery


Furthermore, the package provides the following copulas:

- Independence copula
- Lower and upper Fréchet bounds
- Checkerboard copulas

<!--A list of all implemented copulas can be found in `copul.Families`.

> **Note**: The following examples are also available as a Jupyter notebook in the `notes/examples` folder.-->

# Copula properties

The following properties are available for the above copula families and copulas if they exist and are known:

- `cdf`: Cumulative distribution function
- `pdf`: Probability density function
- `cond_distr_1`, `cond_distr_2`: Conditional distribution functions
- `lambda_L`, `lambda_U`: Lower and upper tail dependence coefficients
- `rho`, `tau`, `xi`: Spearman's rho, Kendall's tau, and Chatterjee's xi
- `generator`, `inv_generator`: Generator and inverse generator for Archimedean copula families
- `pickands`: Pickands dependence functions for extreme-value copula families

# Copula methods

The following methods are available for the above copula families and copulas:

- `rvs`: Generate random samples from the copula
- `scatter_plot`: Generate a scatter plot of the copula
- `plot_cdf`: Visualize the cumulative distribution function
- `plot_pdf`: Visualize the probability density function
- `plot_rank_correlations`: Visualize Spearman's rho, Kendall's tau, and Chatterjee's xi
- `plot_generator`: Visualize the generator function
- `plot_pickands`: Visualize the Pickands dependence function
