tango.funDocs

Get started

Key concepts

The ideas every other page builds on, from strategies, vaults, shares and NAV to sub-accounts, settlement, roles and timelocks, each in a few plain sentences.

The Tango docs use a small set of ideas again and again. This page explains each one in two or three sentences, so the rest of the docs are easier to follow. Each idea links to the page that covers it in depth.

Key points

  • A strategy in the Tango app is a vault onchain. Backers deposit USDC into it and receive shares.
  • Shares are priced at NAV per share: the vault's total value divided by the number of shares.
  • Deposits and withdrawals are requests that are settled later, and nothing settles while a price is out of date.
  • Changes that add risk wait behind a timelock of 3, 7 or 14 days. Changes that reduce risk take effect immediately.

Strategy and vault

A strategy is what a creator builds in the Tango app: a set of assets, venues and rules. Onchain, every strategy is a Tango vault, a set of smart contracts that hold the money and enforce the rules. The app says strategy and the contracts say vault, but they are the same thing.

Creator and backer

The creator builds and runs a strategy, and earns the fees they set. A backer, also called a depositor, puts USDC into a strategy. The same person can be both.

Shares

When you deposit USDC, you receive shares of the vault, which are an ERC-20 token (the standard token format on Ethereum-style networks). Your shares are your part of everything the vault holds. Withdrawing means redeeming your shares for USDC.

NAV (net asset value) is the total value of what the vault holds, in USDC: its idle cash plus every sub-account's value, minus fees owed. NAV per share is NAV divided by the number of shares. Deposits and withdrawals are priced at NAV per share at the moment they are settled. See Sub-accounts and NAV.

Stale prices

A NAV is stale when any price it depends on is out of date. Nothing can be settled until the NAV is fresh again. See When NAV is stale.

Sub-accounts

A vault keeps its strategy in sub-accounts: separate contracts, each with its own assets and limits. A tracked sub-account holds tokens the vault can price onchain, and acts only through built-in modules for swapping, lending and liquidity. An attested sub-account reaches offchain venues, such as a perps exchange, and is valued by a posted figure that must stay within strict limits.

Requests and settlement

Deposits and withdrawals start as requests. They are settled later, at one price for the whole batch. Some vaults also allow atomic deposits, which request, settle and deliver shares in a single transaction. See Deposits and Withdrawals.

Forced exit

If a withdrawal request is not settled within 3 days, its owner can force an exit. The forced exit pays them from the vault's cash and tracked sub-accounts, without the creator. See Forced exit.

Oracles and attestations

An oracle is an onchain price feed, such as Chainlink. An attestation is a value posted by an authorised service for something oracles cannot see, like an exchange account balance. Tango vaults use oracles wherever they can, and attestations only where they must.

Roles and timelocks

A role is the permission to take one restricted action, and roles are grouped into profiles such as the VaultAdmin, VaultManager and Sentry. Actions that add risk wait behind a timelock, a delay of 3, 7 or 14 days, while actions that reduce risk are immediate. See Roles and profiles and Timelocks.

Ceilings

Many limits have a ceiling that is fixed at deployment and can never be raised, such as maximum fees, the maximum deposit cap and maximum slippage. Settings can move below the ceiling, but never above it.

Releases

Each vault is deployed from one contract release, a fixed version of the contract code, and keeps it for life. New Tango strategies use release 0.12.0. See Contract releases.