TIRIO / ABOUT

About Tirio

What Tirio is, what has been built so far, how the routing engine, the contracts and the order keeper work, what has been measured, what Tirio does not do yet and what is planned.

Last updated

Tirio is a non-custodial DEX aggregator for BNB Chain, in public beta. It has a web app at tirio.io for swaps and for limit, stop and DCA orders, and a public REST API at https://api.tirio.io that needs no key. Tirio has no token.

Timeline

  • 2026-09-28: first Router and Executor deployed on BNB Chain; first swap through Tirio.
  • 2026-09-29: Router v2 and Executor v2: partner fees, EIP-2612 and Permit2 permits, exact-out swaps, capped positive slippage.
  • 2026-09-30: Orders contract and keeper: limit, stop-loss with take-profit and DCA orders, and Tirio's own order book.
  • 2026-10-01: Router protocol fee set to 0, tirio.io charges its 3 bps as a partner fee; benchmarks published.

What has been built

Routing engine

  • One Go service serves quotes, prices, market data and order transactions. Each instance keeps only caches of chain data, so it is built to run as many identical instances side by side; today it runs on one server.
  • Exact local math. Constant-product pools, a port of Uniswap V3's tick math (checked against the chain's QuoterV2 in live tests), Uniswap V4 and PancakeSwap Infinity singleton pools and stable pools are quoted with the same integer math the pools use. Venues that can only be priced by calling them, such as on-chain market makers, hooked pools and launchpad curves, are sampled on chain at several sizes.
  • Deployless contracts. Pool state, token transfer taxes and route simulations are read with contracts that are never deployed: their code is placed at a fixed address for a single eth_call through a state override. One call can read a pool with its ticks.
  • Route search. Paths of up to four swaps through hub tokens and bridge tokens (tokens a long-tail token is mostly traded against, found from recent transfers), with the amount split across up to eight paths, gas counted, and every leg re-quoted with the exact integer amounts the contract will see.
  • Simulation. Every quote a user signs is simulated as the complete Router.swap transaction at the latest block. A route that fails loses its pools and is routed again.
  • Venues. /bsc/protocols lists 60 liquidity sources on BNB Chain as of 2026-10-01: classic and concentrated-liquidity AMMs, Uniswap V4 and PancakeSwap Infinity CL and Bin, stable pools, on-chain market makers such as WOOFi and Tessera, launchpad curves (four.meme, Flap, Genius.fun) and Tirio's own order book.

Follower and mirror

  • A follower reads every block's receipts and writes the state of recently traded pools to a shared mirror.
  • API instances keep a read-only replica of that mirror. A pool whose mirrored state is stale, or that the follower marks as changed, is read from the chain instead.
  • A hot view refreshes the pools of pairs asked for in the last ten minutes every 500 ms, so repeated prices do not wait for the chain.

Contracts

  • Router. The single entry point users approve. It pulls only the token being sold, only up to that swap's budget and only during the swap; it takes the fees, caps positive slippage at 1 % of the quote and reverts if the recipient would receive less than the minimum.
  • Executor. A venue-agnostic interpreter of the packed route the API builds. It knows no DEX, holds no allowances and ends every swap with a zero balance. A new venue is a new route pattern in the API, not a new contract.
  • Orders. Escrow for limit, stop and DCA orders, filled through the same Router. A fill must pay the maker at least their net price; if the keeper stops for more than 15 minutes, anyone may fill limit orders and take-profit legs.
  • Testing. Fuzz and invariant suites, 71 mainnet-fork tests and static analysis; coverage is measured before every release, and the Orders contract went through three internal reviews.
  • Addresses are on Contracts. They were chosen to be the same on every chain the contracts are deployed to; today that is BNB Chain only.

Order keeper

A single keeper service watches open orders every few seconds, simulates each fill before sending it and submits fills through private transaction endpoints first. Its key can only fill orders and report that the keeper is alive.

Measured performance

Measured on production on 2026-10-01 from one client over the public internet, across 185 BNB Chain pairs, with KyberSwap and ParaSwap called in the same run:

MeasureResult
/price for a pair asked recently105 ms median, 176 ms p90
/price for a pair asked for the first time220 ms median, 3.4 s p90
/quote, simulated with calldata307 ms median, 3.1 s p90
KyberSwap /routes and ParaSwap /prices, same run418 ms and 250 ms median
Output for tokens without transfer taxlevel with KyberSwap and ParaSwap at the median
Pairs with a routeTirio 159 of the 184 KyberSwap routed; ParaSwap 87 of 185

The method, the caveats and the reproduction command are on Benchmarks.

Business model

  • Swaps on tirio.io: a 3 bps (0.03 %) Tirio fee, taken from the token the user pays.
  • Positive slippage: on exact-in swaps of tokens without a transfer tax, output above the quote is kept up to 1 % of the quoted output, through the app and the API alike.
  • Orders: 10 bps of each fill, 3 bps between stablecoins.
  • Integrators use the API for free and can add their own partner fee of up to 10 %; the Router keeps 10 % of partner fees.

Plans

  • Robinhood Chain: planned, with no date. No contracts are deployed there.
  • Shorter first requests: reading new pairs from the mirror of recently traded pools instead of discovering them on demand.
  • More long-tail routes: finding routes for pairs that need an intermediate token outside the hubs.

Contact

Tirio has not published a contact channel yet. When it does, partnership, integration and security contacts will be listed on this page.