Skip to content

MTrade — Trading Terminal

MTrade is Moono’s free trading terminal for pump.fun-launched tokens. It is not tied to a loan: any registered Moono user can trade supported pump.fun/PumpSwap markets through the Moono routing instructions.

Quote configurationBuyBuy exact quote inSellMigrate button
pump.fun / WSOLmtrade_buy_0mtrade_buy_exact_quote_in_0mtrade_sell_0mtrade_migrate_0
pump.fun / USDCmtrade_buy_2mtrade_buy_exact_quote_in_2mtrade_sell_2Not exposed in UI yet

The program has mtrade_migrate_2, but the frontend integration guide marks the high-level helper as not exported yet. Until helper and e2e coverage exist, the public UI should not advertise a USDC migrate button.

  • One token page before and after graduation — the handler routes through pump.fun or PumpSwap based on market state.
  • One ALT per token — generate an Address Lookup Table once, then reuse it for future trades.
  • Quote-aware balances — WSOL trades use the WSOL quote path; USDC trades use the USDC quote path.
  • No Moono protocol fee — only the underlying pump.fun or PumpSwap fees apply.
  • Delegated trading — trades can be signed by the wallet owner or the profile service wallet.

Open /trade and select the market family:

  • pump.fun / WSOL
  • pump.fun / USDC

The selected configuration determines the quote mint, token accounts, and method family.

Paste a pump.fun-launched base mint. MTrade derives the pump.fun bonding curve and PumpSwap accounts for that token.

MTrade uses an Address Lookup Table because the universal trade instructions need many pump.fun and PumpSwap accounts. Generate the ALT once per token and reuse it for every buy/sell.

Regenerate the ALT if external fee recipients or account tails change.

The token page exposes:

  • Buy Exact — choose exact base tokens out and max quote in.
  • Buy Market — choose exact quote amount to spend and minimum base out.
  • Sell — choose exact base tokens in and minimum quote out.

WSOL flows may wrap native SOL as needed. USDC flows spend and receive SPL USDC directly. Keep native SOL in the wallet for transaction fees either way.

For WSOL markets, if a curve is complete but the PumpSwap pool has not been created, MTrade can send mtrade_migrate_0. After migration, the same token page trades through PumpSwap.

For USDC markets, migration support exists on-chain but is not exposed in the public UI until the frontend helper is added and covered by e2e tests.

Every trade can be signed by either:

  • the profile owner wallet
  • the profile service wallet

Tokens received by the service wallet land in the service wallet’s token accounts. Move them back to the owner wallet through the app or your own wallet tooling.

  • Buy/sell uses ALT-backed transactions.
  • Slippage is enforced by min_*_out and max_*_in arguments.
  • MTrade does not bypass pump.fun or PumpSwap fees.
  • Bring your own token mint until a realtime discovery list is available.