Documentation

Higher protocol

Custodial leveraged longs on Solana, backed by a USDC Earn vault. Fees from trades flow to LPs — higher on fresh launches.

Mainnet beta

Higher is custodial today. The protocol authority holds vault USDC and position tokens. Size positions accordingly. Anchor on-chain enforcement is parked (USE_ANCHOR=false). The full stack — vault, positions, risk limits, and settlement — is planned to migrate to Anchor programs so critical rules are enforced on-chain.

Introduction

Higher lets you long Solana tokens with leverage against a shared USDC vault, and lets LPs earn from trading fees by supplying that vault.

  • Trade — deposit collateral, borrow from the vault, buy the long via Jupiter into protocol custody.
  • Earn — deposit USDC, receive vault shares, earn fee income (and take bad-debt risk) as share price moves.
  • Risk engine — classifies markets into tiers (fresh → deep), sets max leverage, open/close fees, and liquidation floors.

Cluster: mainnet-beta

Quick start

  1. Connect a Solana wallet (waitlist-approved for beta).
  2. Earn — deposit USDC so the vault has liquidity (or use existing TVL).
  3. Trade — pick a mint, set leverage (1×–tier max), open a long.
  4. Manage size on Positions — partial/full close, or wait for risk exit / liquidation if underwater.

Longs

Opens are long-only. You post USDC collateral; the protocol borrows the rest from the Earn vault, swaps the full notional on Jupiter, and holds tokens in a custody wallet (not your wallet).

Leverage

  • — no borrow, no open/close trade fees.
  • >1× — borrow principal = net collateral × (leverage − 1). Max leverage is tier-capped (1.5× fresh → 3× established/deep).

Position value

Mark PnL uses the risk mark (symmetric EMA), not a single spot tick. Posted margin only changes on partial close / risk reduction — not when mark moves.

Fresh launches

New / thin tokens sit in the fresh tier: higher open fees, lower max leverage, and earlier liquidations. That fee income is what pays LPs for rug / shortfall risk.

Earn

Supplying USDC mints vault shares. Your claim is shares × totalAssets / totalShares. Share price rises when trading fees (and borrow interest) accrue to the vault, and falls when uncovered bad debt is written down.

  • TVL — ledger assets attributed to LPs.
  • Liquid — cash available to withdraw (not lent to open longs), capped by on-hand vault USDC.
  • Locked — principal currently borrowed by open positions.
  • Earn PnL — your claim minus net deposits (deposits − withdraws).
  • APY — trailing estimate from share-price samples; falls back to utilization × ~10% borrow APR when history is thin.

Fee split on fresh/young (LP-first beta): ~90% LPs, ~10% protocol, 0% insurance reserve. Bad debt hits share price after any insurance waterfall.

Risk tiers & fees

Markets are classified by age, liquidity, and venue trust. Defaults (env-overridable):

TierMax levOpen feeClose feeLiq health
Fresh1.5×8%5%100%
Young6%5%96%
Established2%5%96%
Deep1%5%100%

Open fees may add surcharges for price impact / utilization / concentration. Caps also limit borrow vs executable liquidity and vault loss budget.

Liquidations & ADL

  • Hard liquidation / risk exit— when exit value / debt falls below the position's locked health floor (tier + venue). Keeper sells via Jupiter (aggressive slip), repays debt, returns residual if any.
  • Early exit — high-floor tiers (e.g. fresh at 100%) close fully before silent margin bleed.
  • ADL — soft deleverage cuts size when health is stressed but above hard floor, protecting Earn LPs.
  • Bad debt— if sale proceeds < debt after insurance, the shortfall impairs vault totalAssets (share price down).

Architecture

Three layers today:

  • Solana — vault USDC ATA, authority wallet, per-mint custody ATAs, Jupiter execution.
  • Protocol ledger — vault math, positions, shares, consumed signatures, per-mint EMAs / risk books (JSON in Supabase Storage on mainnet).
  • Supabase — Storage for state + event files; Postgres for consumed_signatures and waitlist.

Anchor roadmap

Everything above that today lives in the custodial API + ledger is intended to move onto Anchor programs: vault shares, opens/closes, liquidations, and hard risk limits. The current beta ships without that on-chain enforcement so we can iterate on product and risk; a full Anchor migration is the path to trustless settlement.
Wallet ──USDC──► Vault USDC ATA
                      │
                      ▼
               Next.js API (+ VPS keeper)
                      │
        ┌─────────────┼─────────────┐
        ▼             ▼             ▼
  claim signature   update ledger   Jupiter swap
  (Postgres UNIQUE) (Storage JSON)  → custody ATA

How funds move

Earn deposit

Wallet transfers USDC to the vault. API verifies the transfer, claims the signature, mints shares, persists state.

Earn withdraw

Wallet signs an ed25519 withdraw auth. API burns shares and pays from vault cash (liquid only — not while locked in borrows).

Open long

Collateral lands in the vault → risk engine approves → Jupiter buys into custody → position recorded. Open fee is taken from collateral before sizing the borrow.

Close

Signed close auth → custody releases tokens → Jupiter sells to USDC → debt repaid → residual to trader; close fee on equity (0% at 1×).

Pricing & marks

Spot is pulled from Jupiter / DexScreener-style sources. Each mint keeps a double EMA (spot / symmetric / directional). Liquidation and unrealized PnL use the symmetric EMA risk mark so single-wick prints are less likely to force exits. The Positions UI shows entry, mark, and approx liquidation price.

Security & beta

  • Custodial — authority / custody keys can move vault and escrow funds. Not fully trustless yet.
  • Waitlist — trade/earn APIs require an approved wallet.
  • Replay protection — Postgres unique signature claims + in-ledger consumed map.
  • Deposit attribution — only transfers whose token authority is the claimed wallet are credited.
  • Risk limits (fees, caps, liq floors) are enforced by the backend today. The plan is to migrate the whole protocol surface to Anchor so those rules (and fund custody) are enforced on-chain before trusting large TVL.

Addresses

NameAddress
AuthorityCnKSA8kshD4fD3TzFjqjLNxo4ayLx23qvrTpoy6qcRGT
Vault USDC6tsrEAaCDeiZsVbwAswMXmFNXvXvyS2gSbdEPfNB3Rym
USDC mintEPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v