aleatory#

build rtd pypi pyversions

Aleatory (/ˈeɪliətəri/) is a Python library for simulating and visualising stochastic processes. It introduces objects representing continuous-time stochastic processes \(X = \{X_t : t\geq 0\}\), and provides functionality to:

  • generate realizations/trajectories of each process over discrete time sets

  • create visualisations to illustrate the processes properties and behaviour

https://raw.githubusercontent.com/quantgirluk/aleatory/main/docs/source/_static/vasicek_process_drawn.png

Currently, aleatory supports the following processes:

  1. Brownian Motion

  2. Brownian Bridge

  3. Brownian Excursion

  4. Brownian Meander

  5. Geometric Brownian Motion

  6. Ornstein–Uhlenbeck (OU) process

  7. Vasicek process

  8. Cox–Ingersoll–Ross (CIR) process

  9. Constant Elasticity Variance (CEV) process

  10. Chan-Karolyi-Longstaff-Sanders (CKLS) process

  11. Bessel processes

  12. Squared Bessel processes

  13. Poisson process

Installation#

Aleatory is available on pypi and can be installed as follows

pip install aleatory

Dependencies#

Aleatory relies heavily on

  • numpy and scipy for random number generation, as well as support for a number of one-dimensional distributions, and special functions.

  • matplotlib for creating visualisations

Compatibility#

Aleatory is tested on Python versions 3.8, 3.9, 3.10, and 3.11.

Documentation#

Indices and tables#