> For the complete documentation index, see [llms.txt](https://docs.catapult.trade/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.catapult.trade/mechanics-turbo/maths.md).

# Maths

Catapult Turbo uses a discrete-time Geometric Brownian Motion (GBM) model to generate price paths. This stochastic process ensures that prices remain positive and follow a log-normal distribution, providing a realistic simulation of market volatility while remaining mathematically predictable for verification.

### The Core Pricing Formula

The engine calculates the price at each tick using the following recursive formula:

`price_t1 = price_t0 * exp((daily_mu - 0.5 * daily_sigma^2) * delta_t + daily_sigma * sqrt(delta_t) * epsilon_t),`

where:

* `price_t0` — The price at the previous tick.
* `price_t1` — The calculated price for the current tick.
* `daily_mu` — The drift coefficient, representing the expected daily return.
* `daily_sigma` — The volatility coefficient, representing the standard deviation of returns.
* `delta_t` — The time step, rescaled based on the session's accelerated duration.
* `epsilon_t` — A random variable drawn from a standard normal distribution, N(0,1).

### Parameterization

The engine is parameterized on a 24-hour basis. We define a `daily_sigma` and a `daily_mu` for the simulation, which are then compressed into the specific time window of the token (3 minutes, 15 minutes, 1 hour, or 4 hours).

`daily_mu` is set to **0**. This creates a "martingale" environment where the expected future price, before accounting for the variance drag, is equal to the current price. At 0, there is no inherent upward or downward bias in the price path logic itself.

### Sigma

This variable controls the "swing" of the chart. Higher sigma values produce more aggressive price movements and wider potential price ranges.

### Sigma Decay

A characteristic of GBM is sigma decay, or variance drag, represented in the formula by the `- 0.5 * daily_sigma^2` term. Because of this, the median price path tends to drift downward over time, even with a neutral drift (`daily_mu = 0`).

In practice, this means the simulation generates more "downward" charts than "10x" charts. However, the system remains mathematically fair: the high-magnitude gains from a single "up" chart (e.g., a 1000% move) compensate for the frequent, smaller losses of "down" charts. The expected value of the price at any time T remains `price_0 * exp(daily_mu * T)`.

### Mathematical Expectation and Skew

Mathematically, the goal for a Turbo trader is to identify when a path is entering its "right-tail" phase. While the expectation `E[price_t]` is `S_0`, the high variance allows for localized momentum. In the short run, the random shock `epsilon_t` can overcome the `-0.5 * sigma^2` decay, allowing for profitable exits before the long-term mathematical gravity of the log-normal distribution takes over.
