Skip to content

Technology

The bidirectional token engine.

A bonding curve prices a token against a base asset as a deterministic function of circulating supply. Because it quotes both sides of the trade, liquidity is permanent and two-way, and solvency stops being a promise and becomes a property of the system.

6.1Bidirectional cryptographic tokens

A bonding curve is an automated market maker (AMM) that sets a token's price against a base asset — in our deployments, USDC — as a function of circulating supply. Buying mints new tokens and moves the price up the curve; selling burns tokens and moves it back down.

Because the curve prices both buys and sells, liquidity is permanent and two-way. A holder can always exit at the curve price without any external liquidity provider, any counterparty willing to take the other side, or any order book deep enough to absorb the trade. The protocol is the counterparty, and it is always solvent.

6.2The price function

The default price function is the square-root curve:

P = S^0.5
P is the price in the base asset; S is circulating supply.

Early buyers get a low price. Increases decelerate as supply grows, so the curve rewards conviction without producing the runaway convexity of a linear or exponential shape. It is continuous and deterministic: the same supply always yields the same price, computed on-chain, with no oracle in the loop.

The exponent is not sacred. It is the first parameter we tune per asset — a curve for a fractionalised building behaves differently from a curve for a royalty stream, and both differ from a curve for a commodity warehouse receipt.

6.3The reserve function

The reserve R — the base asset actually held by the protocol — is the area under the price curve:

R = ∫₀ˢ x^0.5 dx = (2/3) · S^1.5 ≈ 0.666667 · S^1.5
The reserve is the definite integral of price over circulating supply.

This is the entire trick, and it is worth stating plainly: the reserve is not a number chosen by a treasurer. It is the integral of the function used to price every purchase. Whatever was paid in, along the curve, is exactly what is owed back out along the same curve.

6.4Invariant pricing

When supply moves from S to S + ΔS and a buyer deposits ΔR, the system holds the invariant:

S_new = ( S^1.5 · (R + ΔR) / R )^(2/3)R_new = R · (S + ΔS)^1.5 / S^1.5
Evaluated on-chain on every buy and every sell.

These run on-chain on every transaction, so the invariant holds regardless of the order in which trades arrive or the size of any one of them. There is no sequencing assumption to violate, and no state in which a large trade leaves the reserve short.

6.5The solvency theorem

The proof sketch is the reserve function itself. If the reserve is by construction the definite integral of the price function over the circulating supply, then redeeming all S tokens back down the same curve returns exactly R. Not approximately. Exactly. A bank run is not a failure mode of this design; it is just every holder walking down the curve they walked up.

6.6The untouchable reserve

There is no instruction that can withdraw the base asset from the reserve except a holder selling — and therefore burning — their tokens. Any administrative "transfer reserves" path is removed from the program before deployment, and its absence is verifiable by anyone reading the deployed bytecode.

The consequences follow directly:

  • The token issuer cannot defraud buyers — there is no function that would let them.
  • The platform cannot defraud users, including TokSol. We hold no key that reaches the reserve.
  • A compromise of the website or front end cannot reach on-chain funds. There is nothing on the front end that could.
  • Solvency is auditable by anyone, in real time, directly from chain state.

6.7Technical stack

Programs are written in Rust using the Anchor framework and deployed on Solana. The rationale is throughput and cost: asset transactions are frequently small and frequently repeated, and a chain whose fees exceed the value of the trade cannot host them.

Throughput
~65,000 TPS
Finality
~400 ms
Cost per transaction
~$0.00025

On-chain state is verifiable on Solana Explorer. Anyone can read the reserve balance and the circulating supply and check the invariant themselves, without asking TokSol or the issuer for anything.

6.8Configurable fees

Fees are set at creation and verifiable on-chain: a platform fee and a configurable issuer fee, applied symmetrically to buys and to sells. They are distributed before the reserve state updates, so the solvency invariant always holds on the net reserve — a fee can never be paid out of the money owed to holders.

Exact parameters are defined per engagement, alongside the curve. We do not publish rates here because there is no single rate to publish.