Principle:Avhz RustQuant Stochastic Process Simulation
| Knowledge Sources | |
|---|---|
| Domains | Stochastic_Processes, Numerical_Methods, Simulation |
| Last Updated | 2026-02-07 20:00 GMT |
Overview
A numerical framework for generating sample paths of stochastic differential equations using discretization schemes such as Euler-Maruyama, Milstein, and Strang Splitting.
Description
Stochastic Process Simulation refers to the numerical generation of sample paths from a stochastic differential equation (SDE). Given a process defined by drift, diffusion, and optional jump components, a discretization scheme approximates the continuous dynamics over finite time steps.
This is the computational backbone for Monte Carlo pricing, risk analysis, scenario generation, and model validation. The framework supports:
- Multiple discretization schemes: Euler-Maruyama (first-order), Milstein (improved diffusion accuracy), Strang Splitting
- Parallel execution: via Rayon for large path counts
- Reproducible results: optional seed for the random number generator
- Multiple process types: GBM, OU, CIR, Hull-White, Ho-Lee, Heston, Merton Jump Diffusion, fBM, SABR, and more
Usage
Use this principle when you need to simulate paths of any supported stochastic process. Configure the simulation parameters (initial value, time horizon, steps, paths, scheme) and call the generate method on the process.
Theoretical Basis
The general SDE form:
Euler-Maruyama discretization:
where Delta W_t ~ N(0, Delta t).
Milstein discretization (improved):
Strang Splitting decomposes the SDE into drift and diffusion sub-problems solved alternately.
Configuration parameters:
- x_0: initial value
- t_0, t_n: time interval
- n_steps: number of discretization steps
- m_paths: number of Monte Carlo paths
- scheme: discretization method
- parallel: enable Rayon parallelism
- seed: optional RNG seed