Description
Stochastic Process Simulation Engine.
Description
A modular simulation engine for a wide range of stochastic processes. Provides exact and approximate simulation methods for Poisson processes (homogeneous and inhomogeneous), Brownian motion (standard, drifted, and bridge), discrete- and continuous-time Markov chains, birth-death processes, the Yule pure-birth process, infinitesimal generator matrix utilities, Markovian queuing systems (M/M/1, M/M/c, M/M/c/K) with exact steady-state statistics, Levy processes (gamma, normal inverse Gaussian, variance-gamma, alpha-stable), Merton jump-diffusion models, Hawkes self-exciting processes, geometric Brownian motion, and Ornstein-Uhlenbeck mean-reverting diffusions. Includes variance reduction techniques (antithetic variates, control variates, importance sampling, stratified sampling), parallel simulation via the 'future' framework, rare-event simulation (cross-entropy and multilevel splitting), path visualisation, and summary statistics. Methods are based on Glasserman (2003) <doi:10.1007/978-0-387-21617-1>, Asmussen & Glynn (2007) <doi:10.1007/978-0-387-69033-9>, Norris (1997) <doi:10.1017/CBO9780511810633>, and Kleinrock (1975, ISBN:0471491101).
README.md
StochSimR
Stochastic Process Simulation Engine for R
A modular, research-grade simulator for stochastic processes with variance reduction, parallel execution, and rich visualization.
Installation
# From source tarball
install.packages("StochSimR_1.0.0.tar.gz", repos = NULL, type = "source")
# Or from local directory
devtools::install_local("path/to/StochSimR")
Quick Start
library(StochSimR)
# Simulate and visualise Brownian motion
paths <- sim_brownian(T_max = 1, n_steps = 1000, n_paths = 100)
plot_paths(paths, show_mean = TRUE, show_bands = TRUE)
# Stock price model (GBM)
stock <- sim_gbm(T_max = 1, n_steps = 252, mu = 0.08, sigma = 0.25,
x0 = 100, n_paths = 50)
plot_paths(stock)
plot_distribution(stock)
path_summary(stock)
See vignette("introduction", package = "StochSimR") for the full tutorial.
Available Processes
| Process | Function | Methods |
|---|---|---|
| Poisson | sim_poisson() | exact, thinning |
| Brownian Motion | sim_brownian() | exact, bridge |
| Markov Chain | sim_markov() | exact |
| Geometric Brownian Motion | sim_gbm() | exact, euler |
| Ornstein-Uhlenbeck | sim_ou() | exact, euler |
| Levy Processes | sim_levy() | stable, gamma, NIG, variance-gamma |
| Jump-Diffusion | sim_jump_diffusion() | euler |
| Hawkes Process | sim_hawkes() | ogata thinning |
License
MIT.