quantgirluk/aleatory
📦 Python library for Stochastic Processes Simulation and Visualisation
What it solves
Aleatory is a Python library designed to simplify the simulation and visualization of stochastic processes. It provides a standardized way to generate trajectories (realizations) of various random processes over discrete time sets and create visual representations of their behavior.
How it works
The library introduces objects representing different stochastic processes. Users can instantiate these process objects and use built-in methods to generate data points and create plots. It leverages numpy for random number generation and scipy, statsmodels, and matplotlib for distribution support and visualization.
Who it’s for
It is primarily for researchers, students, and practitioners in fields like quantitative finance, physics, and mathematics who need to simulate random walks, Brownian motions, and other complex stochastic models.
Highlights
- Extensive Process Library: Supports a wide range of 1D processes including Brownian Motion, Gaussian Processes (with various kernels), Hawkes processes, and the Vasicek process.
- Multi-dimensional Support: Includes 2D stochastic processes such as Correlated Brownian Motions and 2D Random Walks.
- Concise API: Allows for the generation and visualization of complex trajectories with minimal code.
- Integrated Visualization: Built-in
.draw()methods for quick visual analysis of process properties.