> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dionysus.finance/llms.txt
> Use this file to discover all available pages before exploring further.

# Quantitative approach

> The mesh, the yield equation, and the inequality that governs every move.

Standard automated vaults wrap one pool and re-centre on a fixed rule. Dionysus runs positions across pools as **one connected system** — a mesh — under an objective you can read and hold us to.

<div id="dio-mesh" style={{ maxWidth: '560px', margin: '0 auto' }} aria-label="Animated 3D mesh of Robinhood Chain assets — tokens as nodes, pools as edges" />

## The mesh

Tokens are nodes, pools are edges. With $n$ assets there are up to $\tfrac{n(n-1)}{2}$ candidate pools; the [screen](/strategies/how-pools-are-chosen) admits a subgraph, and the agent builds topologies where **every asset sits on more than one edge**. That buys what a silo cannot have:

* **Multiple exit paths.** Every asset has ≥2 routes home — no single pool can strand inventory.
* **Residual recycling.** Re-centring releases skewed inventory (geometry, not error). A silo swaps it back through the market and pays impact; the mesh routes it to an adjacent pool that wants it.
* **Self-directed migration.** Positions accumulate what falls, shed what rises — in a mesh the surplus flows to where it's productive. No router, no oracle.

Allocation is capacity-aware: no position sized past what its pool can absorb without the vault *becoming* the market. A \$10k mesh and a \$1M mesh are genuinely different objects.

## The yield equation

$$
\text{income} = \underbrace{\int f \cdot v_{\text{in}}\,dt}_{\text{fees}} \;+\; \underbrace{\int \frac{L_{\text{you}}}{L_{\text{active}}}\, E(t)\,dt}_{\text{emissions}} \;+\; \underbrace{R}_{\text{incentives}}
$$

Two facts fall out: **concentration is leverage** (halve the range → roughly double the earn rate, while price stays inside), and **out of range earns zero** — not less, zero. Per position, the objective is $L\text{-share} \times \text{time-in-range}$, and the two pull against each other. Most vaults stop there.

We don't, because the portfolio dominates the position:

$$
Y = \sum_i w_i\, y_i \;-\; C(w, \text{moves})
$$

Which pools carry weight matters more than how well any range is tended. Cross-venue, the question isn't *"am I in range?"* — it's *"is this the range worth being in?"* [Rotation](/agent/rotate) answers it; a single-pool vault can't ask it.

## The σ² law

The structural cost of concentrated liquidity scales with the **square** of volatility, while income scales roughly linearly with activity:

$$
\text{drag} \propto \sigma^2
$$

So for every pool there is a σ above which **no width, no trigger, no management is net-positive** — the game is won or lost at *selection*. The screen gates on sustained yield vs. σ²-drag at *realised* volatility (grounded in published LP-microstructure results), which is why a rich APR on a violent token reads as risk compensation, not opportunity.

## The cost of moving

Every action — re-centre, residual swap, rotation — must first clear one inequality:

$$
\Delta y \times H \;>\; C \times m
$$

Expected gain over a payback horizon must exceed the full cost of acting, with margin. $C$ is **measured, not assumed** (impact quoted live at execution size); $\Delta y$ is **persistent, not instantaneous** (smoothed — a trigger that trusts one reading rotates into every transient); $m$ overestimates uncertain costs so estimation error pushes toward *not* acting.

The deepest consequence: **on most days the optimal action is nothing.** An engine that always finds something to do has thresholds tuned to generate activity, not returns. Every move the agent does make lands in your [statement](/vault/statements), its costs booked against its own performance.

## Silos vs. the mesh

The standard product — a public vault wrapping one pool, shares against a common pot — fails on structure, not parameters:

|                         | Single-pool silo                                                                  | Dionysus mesh                                                             |
| ----------------------- | --------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| **Yield migrates**      | Capital can't follow; each depositor exits and re-enters manually, at retail cost | The vault [rotates](/agent/rotate) once, internally                       |
| **Rebalance inventory** | Swapped back through the market, paying impact                                    | Recycled along mesh edges; swaps only where the inequality says they pay  |
| **Trigger**             | Reactive — acts *after* price exits, at any cost                                  | Priced — gain vs. measured cost, persistence-gated                        |
| **Ownership**           | Shares of a pot; NAV decides your slice                                           | [Private vault](/vault/private-vaults) — no shares, no neighbours         |
| **Failure surface**     | One venue, one pair, one incentive program                                        | Many pools, each clearing the yield-vs-drag bar independently             |
| **Selection**           | Made once, at deployment, forever                                                 | Re-made continuously by a live [screen](/strategies/how-pools-are-chosen) |

Silos are simpler to audit and fine for passive exposure to exactly one pair. But sold as *automated yield*, they automate the easy 20% of the job. The hard 80% — selection, allocation, disciplined movement — is where the yield is.

<Note>
  The structure above is the arithmetic of the instrument; we publish it so you can hold us to it. The constants — thresholds, widths, horizons, weights — are closed source, calibrated by replaying the policy against recorded production history.
</Note>
