Overview
A price-simulation and agent-strategy backtesting engine, grounded in Avellaneda-Stoikov market-making mechanics. Agents post quotes and fills are modeled probabilistically — as a function of each quote's distance from the mid-price and the size of the order — rather than a full limit-order-book matching engine. That's a deliberate scope choice for now, with a proper order book and matching engine on the roadmap to produce more realistic fill probabilities and transaction costs.
How it works
- Price simulation engine using a jump-diffusion model, with macro shocks and earnings beat/miss events for an arbitrary asset
- Volatility modeled with lasting regimes via an Ornstein-Uhlenbeck process — successive news impacts compound into a cumulative volatility effect and determine how long a regime persists
- Multiple trader strategies: an Avellaneda-Stoikov market maker, a random trader, and a momentum trader
- Fills modeled probabilistically as a function of both quote distance from the mid-price and order size, with independent RNG streams for the price model and fill model
- Per-trader performance metrics: PnL, Sharpe ratio, max drawdown, win rate
Status
Active — the flagship project. A real order book and matching engine is the next major piece of work, to replace the current probabilistic fill model with realistic fill probabilities and transaction costs.