Module 11: Token Mechanics

What this covers: How BASIS tokens actually work under the hood. Elastic supply mechanics, hybrid multiplier behavior, AMM pricing dynamics, the flywheel of each main, and edge cases that will break assumptions imported from traditional DeFi.

Prerequisites

  • Familiarity with trading basics helps: this module explains why the AMM behaves the way Module 04 says it does
  • For token creation parameters that set these mechanics in motion, see Module 07

Related action modules (where these mechanics get applied)

Examples use the default main, STASIS, whose pair asset is USDG. On another main read "USDG" as that main's pair asset and use its decimals(). The mains of a deployment are listed in /contracts.json (mains[]).


1. Universal Mechanics

Every token on BASIS (Stable+, Utility+, Floor+, Meme+, Yolo+, Yolo and Predict+) shares the same foundation.

Elastic Supply

Supply is elastic: a buy mints and a sell burns. (A Yolo token, reversed at setting 100, is the exception: its supply is fixed and it trades like a plain fixed-supply memecoin.) There is no creator or insider allocation at creation. Every token in a wallet was bought.

Practical consequences:

  • There is no pre-minted allocation for insiders to dump: creators hold no pre-minted supply and cannot mint, and there is no LP a creator can pull; a creator who wants tokens must buy them
  • When a keeper closes an expired loan, the collateral that covers the debt is taken to repay it. 10% of the rest is the liquidation fee, and you claim the remainder within 365 days of the liquidation; after that the leftover may no longer be claimable

The Factory

Factory tokens, market tokens and Up/Down pool tokens all come from the Basis Factory contract (ATokenFactory), each on a registered main. The mains (STASIS on the default pair) are not factory tokens: they are separate contracts registered as pairs on SWAP, and a main's pair asset is an outside token. A cross swap (SWAP.swapCross) can also start or end on an outside token, where a route exists. Creators do not write contracts; they configure parameters within a fixed set of protocol rules. → See Module 07 for the SDK methods that interact with the factory.

Token Creation Parameters

ParameterRangeDescription
symbol-Ticker. Must be CAPITALISED.
name-Full token name
hybridMultiplier1–100Every value is accepted. With reversed, sets the token type: on a normal token 100 = Stable+, 50–99 = Utility+, 1–49 = Floor+; on a reversed token 1–50 = Meme+, 51–99 = Yolo+, 100 = Yolo
startLP1,000–100,000Launch depth: higher = deeper = less price movement per trade. 10,000 is the standard depth
frozenboolNeeds a presale. Gates presale buys by whitelist; sells are never gated. Lifts when the presale completes, or on disableFreeze() (irreversible)
presaleTokens0 or morePresale size in whole tokens (0 = no presale)
autoVest, autoVestDuration, gradualAutovestbool, 1–990 days, boolAuto-vest every buyer's presale purchase
mainTokena registered maincreateTokenFor / createReversedTokenFor only: the main the token trades against
supplyMultiplier1 to main.MAX_SUPPLY_MULTIPLIER()createTokenFor / createReversedTokenFor only: leave at 1 (the app's value)
rewardsEnabledboolcreateTokenFor / createReversedTokenFor only: holder rewards on. Fixed at creation

createTokenFor(params) is payable: send exactly feeAmount(), or 0 if feeWhitelist(you); any other value reverts "Wrong fee". Its struct takes mainToken, supplyMultiplier and rewardsEnabled with the rest. createReversedTokenFor(params) creates a reversed token (Meme+, Yolo+ or Yolo). To pay holders, create with rewardsEnabled: true: it can never be switched on later.

startLP: The Launch Depth

startLP is a depth setting from 1,000 to 100,000, not deposited capital. Higher means a deeper pool and less price movement per trade. 10,000 is the standard depth. A market token launches at startLP 10,000 and an Up/Down pool token at 2,500.

Fees and Where They Go

Every trade and every bet pays a base fee: 0.60% today, or 0.54% when the wallet has an on-chain referrer. A factory token or a market token adds its creator fee (0 to 1%, set by the token's dev; it is 0 until the dev sets it) and, only when the token was created with holder rewards, its rewards fee (0 up to maxRewardsFee: 0.5% at multiplier 100, rising to 10% at multiplier 1, always 10% on a reversed token (Meme+, Yolo+, Yolo)). A main pays the base only. A fee-exempt wallet pays nothing. The dev can change each of the two fees once per cooldown (4 hours today). Read the rate for a wallet with TAXES.getTaxRate(token, wallet) (basis points) and the parts with TAXES.getTokenTaxInfo(token). The base rate is capped at 2% in the contract: read TAXES.baseRate(), do not hardcode it.

The base part of a fee is split:

FeeSOCIAL (Alpha+ author pay)Vault of the token's mainOperationsReferrerSecond-level referrerCreatorBuyback
Trade through SWAP15%10%10%15%5%0the rest (45%, plus any referral share nobody can receive: 65% with no referrer)
Bet0 (to the buyback)10%10%15%5%0the rest (60%, plus any referral share nobody can receive: 80% with no referrer)
Loan side (origination, top-up, extension, the leverage loop fees, the 3% leverage profit tax) and unwon prize money010%10%0020% (the collateral token's creator)60%

The creator fee goes to the token's dev wallets and the rewards fee to the token's holders, on top of the base, in the same transaction. Every leg is paid in the pair asset of the token's main. A creator earns the creator fee they set plus 20% of the base part of loan-side fees on their token; both are paid as they happen, and nothing is claimed.

Presale

A token created with presaleTokens > 0 starts in a presale: buys run through the same curve until presaleSold reaches presaleTarget (= presaleTokens × 1e18). The buy that reaches it emits Bonded, sets presaleComplete and lifts frozen. A frozen token must have a presale; while it is frozen only whitelisted wallets can buy, each up to its cap, which is a number of tokens.

  • Trading starts immediately from block one: the same curve runs throughout; SWAP.buyTokens / sellTokens route to the presale or the AMM by themselves
  • The presale ends on tokens sold, not on volume (presaleComplete() flips to true)
  • After it: trading continues normally and the presale never reopens

Holder rewards. Holder rewards exist only on a token created with rewardsEnabled = true (through createTokenFor or createReversedTokenFor; never on a market token). The token's dev sets a rewards fee; it is shared among all holders in proportion to their balance, and is paid in the pair asset of the token's main. Read getClaimableRewards(holder) on the token; take it with claimRewards(). With rewards off the read is 0.

  1. A buy hands the buyer the full amount the curve gives; nothing is held back.
  2. The share follows the balance: transfer or sell the tokens and the rewards from then on go with them. A leverage position keeps earning; tokens pledged in a hub loan or held in a vesting do not.
  3. Rewards are not tied to the presale: every holder of a rewardsEnabled token earns, for as long as they hold.

2. AMM Pricing Mechanics

How It Works

BASIS prices every token on a proprietary pricing curve. The hybridMultiplier (set at token creation and immutable afterward) sets where the token sits on the stability dial, for both buys and sells. This is not a standard Uniswap-style AMM with a bolt-on mechanism, so every trade (buy or sell) behaves differently from a traditional AMM.

On every trade, slippage stays in the pool, so the price rises on a Stable+ token and the floor rises on every other normal token.

  • hybridMultiplier = 100 (Stable+): Price can only go up (in pair-asset units): both buys and sells increase the price.
  • hybridMultiplier = 45 (upper Floor+): Price moves freely above a floor that keeps rising.
  • hybridMultiplier = 1 (lowest Floor+): The most price freedom, still above a floor that never falls. A Floor+ token at any setting absorbs sell pressure better than a standard AMM token would.

On a reversed token (Meme+, Yolo+, Yolo) the same dial runs the other way: 100 is Yolo, which trades like a plain fixed-supply memecoin.

Price Impact by Multiplier

On a normal (not reversed) token, the same buy moves the price less as the multiplier rises:

hybridMultiplierPrice movement per buy
1 (most volatile)Largest
30Large
60Medium
100 (Stable+)Smallest

Higher multiplier = less price movement per buy. Simulate the trade on the token you are about to trade.

Swap Routing

Each main trades against its own pair asset, and each factory token trades against its main. SWAP.pairs(main) returns (pairAsset, staking, active); a token's main is token.quoteToken().

  • Buying a main: [pairAsset, main] (2-hop)
  • Buying a factory token: [pairAsset, main, token] (3-hop), or [main, token] with the main in hand
  • Selling a factory token: [token, main, pairAsset] (3-hop), or [token, main]

A factory token paired straight with the pair asset is refused: [token, pairAsset] on a sell and [pairAsset, token] on a buy revert "Bad pair". A swap between tokens of different mains, or with an outside token, is one transaction through SWAP.swapCross(path, amountIn, minOut, recipient, deadline, unwrapNative); it still goes hop by hop through each token's main. Quote it with SWAP.quoteCross(path, amountIn, trader) by eth_call (it is nonpayable).

A trade of a factory token also moves its main's pool.

Simulating Output

Use getAmountsOut(amount, path) to preview the output before executing. It excludes the trade fee. With rate = getTaxRate(token, wallet):

  • buy: getAmountsOut(amountIn − amountIn × rate / 10000, path) (the fee comes off the input);
  • sell: getAmountsOut(amount, path) × (10000 − rate) / 10000 (the fee comes off the proceeds).

Set minOut a tolerance below that taxed quote. Never pass 0.

Standard AMM Assumptions That Break on BASIS

  1. Price increases on every trade for Stable+ tokens: buys and sells (in pair-asset units). Any arbitrage strategy that expects sell pressure to create a lower buy entry on Stable+ tokens will fail. Slippage stays in the pool on both sides.
  2. The floor rises after every trade on Floor+ tokens. Each trade (buy or sell) leaves its slippage in the pool, nudging the floor up. Traditional AMM models do not account for this.
  3. HFT does not work. A round trip costs two trade fees (at least 1.2% at today's base, more with a creator or rewards fee) before slippage. Strategies calibrated to 0.05–0.1% fee environments will bleed out.

3. Stable+ Deep Dive

Core Mechanic

hybridMultiplier = 100 on a normal token. Slippage stays in the pool on every trade: buys and sells alike. Price can only go up, in pair-asset units (on a main whose pair asset is not a USD stable, the USD value can still fall).

This is NOT a "rising floor" framing: the price itself never decreases. The floor and the spot are always the same number.

What happens on a sell:

  1. Seller sends tokens to contract
  2. Tokens are burned (supply decreases)
  3. The sell's slippage stays in the pool
  4. Price is now higher than before the sell

What happens on a buy:

  1. Buyer sends the pair asset (SWAP buys the main first)
  2. Tokens are minted (supply increases)
  3. Price increases along the AMM curve
  4. Price is higher than before the buy

Both directions push price up. There is no mechanism for the price to decrease in its pair asset. A sale still receives less than the quoted price after fees and slippage, more so on a large sale.

Trading Fees (Stable+)

ActionFee
Buy or sellbase 0.60% (0.54% referred) + the token's creator fee + its rewards fee (capped at 0.5% at multiplier 100); read getTaxRate
Round-triptwo trade fees + slippage
Creator earnsthe creator fee the dev set (0 to 1%)

Leverage on Stable+

Since the price floor equals the spot price and neither can decrease:

  • LTV: 100% of the floor value (on Stable+ the floor is the price)
  • Leverage: up to about 37x, depending on the token and the size of the buy; the position must be more than 2x (Under 2x); read simulateLeverageLocked / simulateLeverageFactoryLocked
  • No price liquidation: the collateral's price never drops in its pair asset
  • Price cannot liquidate you; expiry, fees, a fall above the floor and contract risk remain
  • Smaller positions on deep pools unlock more loops → higher effective leverage
  • Larger positions face price impact on each loop → fewer effective loops → lower leverage

Important: Leverage is a trading action (leverageBuy() in Module 04), not a loan. A leverage position is opened and closed through SWAP and recorded on the token's main; hub loans live on the loan hub. Manage leverage with client.trading: getLeverageCount(wallet), getLeveragePosition(wallet, index) (1-indexed, per main), and partialLoanSellFor(main, id, pct, true, minOut). The owner can also extend it on its main with main.extendLoan(id, days, true, payInMainPair, refinance) and repay it with main.repayLoan(id, amount, true). client.loans methods act on hub loans only. → See Module 04 §3c–3d.

The Velocity Thesis

Stable+ tokens appreciate through cycle velocity, not passive holding. Each buy-use-sell cycle leaves slippage residue in the pool that permanently raises the price. More cycles = more residue = higher price.

Best use cases: gambling platforms (buy to play, house burns on wins, winners sell), loyalty tokens (earn, spend, earn), access tokens (buy, burn on access), in-game currencies (buy, spend, burn).

STASIS and the Other Mains

STASIS is the main of the default pair (STASIS / USDG). There can be several mains, each with its own name and symbol, its own pair asset and its own pool in the vault.

  • Every trade of a factory token routes through its main
  • 10% of the base part of every fee on a main's tokens goes to that main's vault as staker rewards
  • A main's price can only go up (in its pair asset), because the slippage of all routing stays in its pool
  • Stake it 1:1 in its vault (no receipt token); rewards arrive in the main and are taken with claim() or compound() (Module 06)
  • Usable as loan collateral at 100% LTV

4. Floor+ Deep Dive

Core Mechanic

hybridMultiplier = 1–99 on a normal token (50–99 Utility+, 1–49 Floor+; this section covers both). Price moves freely up and down, but a floor price exists that never decreases.

What happens on a buy:

  • Price increases (not a standard AMM: the multiplier shapes buys too)
  • Floor price also rises (the trade's slippage stays in the pool)

What happens on a sell:

  • Price decreases (partial sell value returns to seller)
  • Floor price does NOT decrease: the slippage that stays in the pool raises the minimum for good
  • The sell impact is dampened versus a standard AMM

The Floor Price

The floor price is the lowest price the contract will trade at. It never falls below the launch price, and it only rises.

Check it: getFloorPrice(tokenAddress) (contract: calculateFloor(), in pair-asset units; every factory token)

The floor only moves in one direction: up. Every trade (buy or sell) leaves slippage in the pool that raises it a little.

Trading Fees (Floor+)

ActionFee
Buy or sellbase 0.60% (0.54% referred) + creator fee + rewards fee (cap from maxRewardsFee: up to 10% at multiplier 1); read getTaxRate
Round-triptwo trade fees + slippage
Creator earnsthe creator fee the dev set

Leverage on Floor+

Loans are valued against the floor price, not the spot price.

  • LTV: 100% of floor price (floor < spot, so you borrow less than market value)
  • No price liquidation: floor never decreases
  • Best entry for leverage: At launch when floor ≈ spot (maximum effective leverage)
  • After large sell events, spot drops closer to floor: another high-leverage window
  • As spot rises far above floor, per-loop yield drops (2% origination fee per loop stays fixed while collateral value per loop shrinks relative to debt)

Loan expiry scenario: debt 200, bag worth 1,000 at expiry. After liquidationTime a keeper liquidates the position. Assume it can happen in the first block after the deadline. Until that transaction lands a repay or a paid extension still goes through; do not plan on the gap. At liquidation the collateral that covers the debt (about 200 worth) is taken to repay it, 10% of the 800 left is the liquidation fee, and you claim about 720, in tokens (claimLiquidation). Claim within 365 days of the liquidation; after that the leftover may no longer be claimable. Worst case (no appreciation): the whole collateral goes to repay the debt and nothing is left to claim, but you never owe beyond your collateral.

The Survival Advantage

Traditional tokens die from panic selling, not from lack of buying. One whale dump → price craters → holders panic → cascade → dead in hours.

Floor+ breaks this cycle. The same dump creates a smaller dip on Floor+, which reads as a buying opportunity rather than a death signal. The paradox: Floor+ tokens go up slower per buy, but they survive sells that would kill standard tokens, giving them the potential to go higher overall.


4b. Meme+, Yolo+ and Yolo Deep Dive (reversed tokens)

A Meme+ token is created with createReversedTokenFor(params); reversed() is true. The dial runs the other way round, and at setting 100 nothing is minted or burned at all.

  • At hybridMultiplier 100: trades like a plain fixed-supply memecoin; floor = launch price.
  • Lower settings keep part of the rising floor and move toward Floor+ behavior.
  • The price can fall, so "price can only go up" never applies to a Meme+ token. The floor never goes below the launch price.
  • Loans value it at its floor, so a Meme+ at 100 borrows against the launch price only.
  • Rewards fee cap: 10% at every setting (maxRewardsFee(multiplier, true)).
  • Presale: at most half the launch supply.

5. Predict+ Deep Dive

Core Identity

Each prediction market creates one Predict+ token: a Stable+ subtype with hybridMultiplier = 100. It has a defined lifecycle tied to the market's duration.

Critical distinction: the most common misconception:

AssetWhat it isHow to profit
Predict+ tokenThe market itself (Stable+ subtype)Buy/sell for price appreciation from volume
Outcome sharesA bet on a specific resultWin the bet → payout by rank

These are separate contracts, separate actions, separate P&L. You can hold both, either, or neither.

Why Predict+ Is the Ideal Stable+ Use Case

A Predict+ token launches with no circulating supply, appreciates fastest during the low-supply early period, and resolves before hitting the supply wall that eventually slows long-lived Stable+ tokens. Short lifecycle + high volume + natural resolution point = optimal Stable+ mechanics.

Trading Fees (Predict+)

ActionFee
Buy or sellgetTaxRate(marketToken, wallet): base 0.60% (0.54% referred) + the market creator's creator fee (0 until set); no rewards fee
Round-triptwo trade fees + slippage
Betthe same rate, once, on the way in; redeeming is not taxed

Predict+ Fee Distribution

A bet fee follows the trade split of §1 without the SOCIAL share, which goes to the buyback. For a 100-unit bet by a wallet with no referrer on a market with no creator fee: base fee 0.60 → vault 0.06, operations 0.06, buyback 0.48 (the 20% referral slot, 0.12, goes to the buyback when there is no referrer). With a referrer the wallet pays 0.54, the slot pays 0.081 and 0.027, and the buyback gets 0.324. The market's creator fee, when set, goes to the creator on top.

A market resolves to a ranking of outcomes. getTrancheBP(market) gives the share of the profit for each rank: [10000] is winner-take-all. A holder of a ranked outcome gets its cost back plus that rank's share of the profit (the losers' money and the seed), pro rata to shares. That is a property of the settlement, not a fee rebate.

Post-Resolution Price Dynamics

After resolution, the sell wave begins. On Stable+ mechanics, sellers burn tokens → slippage stays in pool → price goes up in its base asset as supply decreases. The last seller exits at the highest price. Selling during active trading phases sacrifices potential upside: optimal exit is after resolution when the sell wave has pushed the price to its peak. → See Module 13 for full prediction strategy patterns.

Leverage on Predict+

Same as Stable+: 100% LTV at the floor value (the price), no price liquidation. Leverage reaches up to about 37x, depending on the size of the buy; the position must be more than 2x (Under 2x); read simulateLeverageLocked / simulateLeverageFactoryLocked. Best leverage play: buy at launch with leverage, hold through market activity, exit after post-resolution sell wave.


6. Hybrid Multiplier Reference

1 to 100 is valid. On a normal token 100 = Stable+, 50 to 99 = Utility+ and 1 to 49 = Floor+; on a reversed token 1 to 50 = Meme+, 51 to 99 = Yolo+ and 100 = Yolo.

MultiplierToken TypeFloor BehaviorPrice FreedomUse Case
100Stable+Price IS the floor (up only)None: only up (in pair-asset units)Ecosystem token, staking base, velocity tokens
50–99Utility+ (the app offers 50–90)Strong, fast-rising floorLow to moderateLong-term community tokens
1–49Floor+ (the app offers 1 and 10–40)Rising floor, weaker toward 1Moderate to very highRoom to run with a safety net
1–50, reversed() trueMeme+ (the app offers 10–50)Grows; never below the launch priceFreeMemecoin with a growing floor
51–99, reversed() trueYolo+ (the app offers 60–90)Grows slowly; never below the launch priceFreeBigger swings
100, reversed() trueYoloThe launch price; fixed supplyFreePlain memecoin

Reading token type on-chain:

  1. Read hybridMultiplier() and reversed() on the token (views, no params). reversed() true → 1–50 Meme+, 51–99 Yolo+, 100 Yolo. Otherwise 100 → Stable+, a market token or an Up/Down pool token; 50–99 → Utility+; 1–49 → Floor+.
  2. TAXES.isPrediction(token.DEV()) is true for a token made by a BASIS host: a market token or an Up/Down pool token.
  3. To tell a market token: host.getMarketData(token).marketToken == token on the public or the private market host.

7. The Flywheel (per main)

Every trade of a token routes through its main. This is the economic engine of each pair.

Any token trade → the base fee (0.60% today) → 10% of the base part to the vault of the token's main → staker rewards increase → the main more attractive → 15% + 5% to referrers → the creator fee to the creator (plus 20% of loan-side fees) → the token's main is touched on every swap → its price edges up, because the slippage stays in its pool → deeper liquidity → less slippage → more trading → more trading → more fees → cycle repeats

Why this compounds:

  • A main is Stable+-like: every routed trade pushes its price up incrementally (in its pair asset)
  • Platform growth benefits every position: staked mains earn more, tokens have deeper liquidity, markets attract more bettors
  • The flywheel accelerates: volume → better liquidity → more traders → more volume
  • Platform growth can be non-zero-sum: the fee pool can grow faster than new participants dilute it

Strategic implication for agents: Activities that increase trading volume on a main (quality market creation, referrals, liquidity-attracting token launches) are multipliers on all existing positions on that main through vault rewards and the main's appreciation.


8. Edge Cases and Gotchas

Frozen Tokens

A token launched with frozen = true is whitelist-only until the creator calls disableFreeze() or the presale completes. The unfreeze is irreversible: once public, it cannot be re-frozen. While frozen, only whitelisted wallets can buy, each up to its cap, which is a number of tokens; sells are never gated. If frozen = true, presaleTokens must be above 0.

For agents: Check getTokenState(token).frozen (the contract read is frozen()) before attempting to trade unfamiliar tokens. Buys from non-whitelisted wallets will revert.

Creator and Rewards Fees

The token's dev sets the creator fee with TAXES.setCreatorFee(token, bps) (0 to 100 bps; on a market token the market's creator) and, only on a rewardsEnabled token, the rewards fee with TAXES.setRewardsFee(token, bps) (up to maxRewardsFee(hybridMultiplier, reversed): 50 bps at multiplier 100, up to 1000 bps at multiplier 1 and on every reversed token (Meme+, Yolo+, Yolo)). Each can change once per 4 hours after its first setting, so a fee can change between your quote and your trade.

For agents: read getTaxRate(token, wallet) right before trading.

Presale Timing

  • During the presale (presaleComplete() false), buys run the same curve as after it
  • After Bonded (presaleComplete() true): trading continues normally and the presale never reopens

For agents: Check getTokenState(token).presaleComplete (contract: presaleComplete()). It flips on tokens sold, not on volume.

Closed Tokens

A token cannot be traded when isEcosystemToken(token) is false (SWAP then refuses it, "Alien output" on a buy, "Wrong token" on a sell), when its main's pair is paused (SWAP.pairs(main).active is false: a paused pair refuses buys, sells, new loans and extensions; repaying still works) or when its main has not enabled trading (tradingEnabled() is false). Check all three before routing.

Very Low Liquidity

On tokens with startLP = 1000 (the minimum), even small buys create large price impact. Slippage bounds must be set conservatively. Quote with the fee included (§2 Simulating Output) before every trade.


9. Token Comparison Table

FeatureStable+Utility+ / Floor+Predict+Meme+ / Yolo+ / YoloTraditional AMM
hybridMultiplier10050–99 / 1–491001–50 / 51–99 / 100 (reversed)N/A
Price directionOnly up (in pair-asset units)Free above floorOnly upFree above floorFree
Supply typeElasticElasticElasticElastic; fixed at 100Fixed
Sell impact on pricePrice stays or risesPrice drops, floor holdsPrice stays or risesPrice drops, floor holdsPrice drops
Floor existsYes (floor = spot)Yes (rising, below spot)Yes (floor = spot)Yes, never below the launch priceNo
Trading feebase 0.60% + creator fee + rewards fee: read getTaxRatesamesame (no rewards fee)sameVaries
LTV basisSpot priceFloor priceSpot priceFloor priceN/A
Effective LTV100% of market value100% of floor (<spot)100% of market value100% of floorN/A
Leverage availableup to about 37x; simulatelower: each loop borrows at the floorup to about 37x; simulatelower: borrows at the floorN/A
Liquidation riskNone (time expiry only)None (time expiry only)None (time expiry only)None (time expiry only)Yes (price-based)
Death spiral riskLow: selling can't push the price down in its base assetVery lowNoneSee §4bHigh
Best forEcosystem token, velocity use casesCommunity tokens, speculationPrediction marketsMemecoins-

Quick Reference

QuestionAnswer
How do I check token type?hybridMultiplier() and reversed() on the token. reversed() true = Meme+ (1–50), Yolo+ (51–99) or Yolo (100); otherwise 100 = Stable+/Predict+, 50–99 = Utility+, 1–49 = Floor+ (§6).
How do I check floor price?getFloorPrice(tokenAddress)
How do I preview trade output?getAmountsOut(amount, path): untaxed; see the taxed quote in §2
How do I check a token's fees?getTaxRate(token, wallet), getTokenTaxInfo(token)
How do I check presale status?getTokenState(token).presaleComplete (presaleComplete() on the token): true means the presale has ended
How do I check if token is frozen?getTokenState(token).frozen (frozen() on the token)
What's the swap path for any token?pairAsset → main → token (buy), the reverse to sell; each token through its own main

See Also