Enter app

Asset Acquisition

How collected fees become assets in the Stockpile.

Acquisition is mechanical. The reserve engine takes a settled fee balance and places orders against the configured target weights, in the configured cadence, without discretion.

Order construction

ts
Weights come from src/config/protocol.ts and sum to 100
for (const asset of targetBasket) {
  order[asset] = settledFees * (asset.weight / 100);
}

Drift

Because there is no rebalancing, actual weights drift from targets as prices move. Drift is corrected only by directing future acquisitions, never by selling. The Stockpile view shows target and actual side by side so drift is visible rather than hidden.