Viper Documentation
Welcome to Viper
The fastest multi-chain trading bot, built entirely on Telegram.
Viper lets you trade any Solana, Base, BSC, Ethereum, or Hyperliquid token directly from Telegram. No browser extensions, no separate wallet apps — just paste a contract address and go.
Key Features
- Instant Swaps — Buy and sell tokens on Solana (via Jupiter), Base (via 0x — Uniswap, Aerodrome, SushiSwap, and more), BSC (via 0x — PancakeSwap V2/V3), Ethereum (via 0x — Uniswap V2/V3, SushiSwap), and Hyperliquid (via HyperSwap V3 and Kittenswap) in seconds.
- Stablecoin Swaps — Convert between SOL/ETH/BNB/HYPE and USDC or USDT — and swap USDC ↔ USDT — on all five chains with zero platform fees.
- Bridge — Move SOL, ETH, BNB, HYPE, USDC, or USDT between Solana, Base, BSC, Ethereum, Hyperliquid, and other supported EVM chains via the 0x cross-chain API.
- Limit Orders — Set price targets on Solana, Base, BSC, Ethereum, and Hyperliquid, and Viper executes automatically, 24/7.
- Copy Trading — Mirror any wallet's trades on Solana, Base, BSC, Ethereum, and Hyperliquid in real-time via WebSocket, with automatic take-profit orders.
- Call Channel Auto-Buy — Subscribe to Telegram alpha channels and auto-buy when new tokens are called on Solana, Base, BSC, Ethereum, and Hyperliquid.
- Take Profit — Automatically create sell orders after call channel buys.
- Multi-Wallet — Create or import multiple wallets for Solana, Base, BSC, Ethereum, and Hyperliquid, and switch between them.
- Self-Custodial — Private keys are Fernet-encrypted (AES-128-CBC + HMAC-SHA256) and never stored in plaintext.
- Referral Discounts — Share your link and both you and your friend trade at a reduced fee.
Ready to start? Open
@Viper_Sol_Bot on Telegram and send
/start. Type
/help at any time for a quick feature overview and command list.
Quick Start
From zero to your first trade in under a minute.
- Open the bot — Go to @Viper_Sol_Bot on Telegram and tap Start.
- Create a wallet — The bot automatically generates a new encrypted Solana wallet. You can also create Base, BSC, Ethereum, and Hyperliquid wallets from the wallet menu.
- Fund your wallet — Send SOL (Solana), ETH (Base/Ethereum), BNB (BSC), or HYPE (Hyperliquid) to your wallet address from any exchange or wallet.
- Buy a token — Paste any Solana, Base, BSC, Ethereum, or Hyperliquid token contract address (CA) into the chat. Viper auto-detects the chain, shows token info and quick-buy buttons. Tap a preset amount or enter a custom one.
- Track your position — Use
/positions to see your holdings, current value, and unrealized P&L.
- Sell — From your positions, tap a token and choose a sell percentage (25%, 100%, or custom).
Tip: Solana swaps use Jupiter V2 by default, with a 1% default slippage, automatic priority fees, and MEV protection.
Home Screen
What you see when you open the bot.
The home screen (/start) opens with your total portfolio value, then a per-chain balances block and an expandable wallet-addresses block:
Home screen elements
| Element | Description |
| Total portfolio | Hero USD figure summing native + stable + position values across every chain. |
| Balances block | One row per chain (Base, BSC, Ethereum, Hyperliquid, Solana) with the native USD value and amount. Indented sub-rows surface positions, USDC, and USDT only when they round to ≥ $0.10. |
| Wallet addresses | Expandable blockquote, collapsed by default. Tap to reveal each active wallet address with its explorer link (Solscan, BaseScan, BscScan, Etherscan, HyperEVMScan). |
| Fee tier | Your current fee rate (0.25% standard or 0.2% with referral). Shows "custom" if you have an admin override. |
| Referral link | Your unique referral link to share with others. |
Menu Buttons
The home screen is a fixed 5-row keyboard. Top three rows group trading, automation, and wallet utilities; the fourth row covers account; the last row is a single Refresh button.
- Row 1 — Trading: Positions, Limit Orders, History
- Row 2 — Automation: Copy Trade, Call Channels, Bridge
- Row 3 — Wallet utilities: Swap Stables, Claim, Wallet(s)
- Row 4 — Account: Settings, Referral, Help
- Row 5: Refresh
To buy a token, paste its contract address into the chat or open Positions. There is no longer a dedicated Buy/Sell button on the home screen — trade entry is contract-paste or token-card driven.
The /balance Command
Send /balance to see SOL and token balances across all your wallets on every chain — Solana, Base, BSC, Ethereum, and Hyperliquid — in a single message.
Buying Tokens
Multiple ways to buy any Solana, Base, BSC, Ethereum, or Hyperliquid token.
Paste a Contract Address
The fastest way to buy: paste any Solana, Base, BSC, Ethereum, or Hyperliquid token contract address (CA) directly into the chat. Viper auto-detects the chain and shows a token info card with:
- Token name, symbol, and price
- Market cap and liquidity
- Quick-buy buttons with your preset amounts (SOL, ETH, BNB, or HYPE)
Tap a preset button to execute instantly, or tap Custom to enter a specific amount.
Using the /buy Command
For direct execution: /buy <token_mint> <amount>
The chain is auto-detected from the contract address. Use SOL amounts for Solana tokens, ETH amounts for Base and Ethereum tokens, BNB amounts for BSC tokens, and HYPE amounts for Hyperliquid tokens.
How It Works
- Viper deducts the platform fee from your SOL, ETH, or BNB amount.
- The remaining amount is swapped for the token — via Jupiter V2 (Solana), 0x Protocol (Base), 0x Protocol with PancakeSwap V2/V3 (BSC), 0x Protocol with Uniswap V2/V3 + SushiSwap (Ethereum), or 0x Protocol with HyperSwap V3 + Kittenswap (Hyperliquid).
- The trade is recorded to your history for P&L tracking.
- You get a confirmation message with the amount received, price, and a Solscan (Solana), Basescan (Base), BscScan (BSC), Etherscan (Ethereum), or HyperEVMScan (Hyperliquid) link.
Note: Solana swaps use Jupiter Swap V2 with a 1% default slippage and auto priority fee. Base, BSC, and Ethereum swaps route through 0x Protocol with automatic gas handling. Hyperliquid swaps execute via 0x Protocol, with token pricing from on-chain HyperSwap V3 and Kittenswap QuoterV2.
Selling Tokens
Sell all or part of any position on Solana, Base, BSC, Ethereum, or Hyperliquid.
From Positions
The easiest way to sell: go to /positions, select the token, and tap a sell percentage button (25%, 100%, or custom).
Using the /sell Command
/sell <token_mint> <percentage>
Example: /sell EPjFWdd5... 100 (sells 100% of your holdings).
Auto-Cancel Limit Orders
When you sell a token, Viper automatically checks if you have active limit sell orders for that same token. If any orders exceed your remaining balance after the sell, they are automatically cancelled. The sell confirmation shows how many orders were cancelled.
Note: The platform fee is deducted from the SOL (Solana), ETH (Base/Ethereum), BNB (BSC), or HYPE (Hyperliquid) you receive after the swap.
Positions
Track your holdings and unrealized P&L.
Use /positions to see all tokens you hold across Solana, Base, BSC, Ethereum, and Hyperliquid in one combined view. Each position shows:
- Token name, symbol, and amount
- Current USD value
- Average entry price and cost basis
- Unrealized P&L in native units (SOL, ETH, BNB, or HYPE) and percentage
Transferred-in tokens: if you added a token via ➕ Add Token (or transferred it in from another wallet), the bot has no cost basis for the transferred balance. Until you make your first bot-executed buy, the position shows Avg Entry: N/A with zero P&L — there's no real entry price to compare against. Once you buy, Avg Entry and P&L start tracking from that real buy. Selling still drains the full on-chain balance (transferred-in plus bot-bought), and "Sell 100%" works as expected.
Actions Per Token
For each position, you can:
- Buy more — Quick-buy with preset amounts
- Sell — Choose a percentage (25%, 100%, custom)
- Limit Order — Create a limit buy or sell directly from the position
- Hide — Remove dust or spam tokens from your positions view (tokens remain on-chain)
Sorting
Toggle between sorting by USD value (highest first) or alphabetically by symbol.
Pending Limit Orders
If you have active limit sell orders, Viper shows them in your positions with a note so you know your full holdings including tokens reserved for pending orders.
Hidden Tokens
Tap the Hide button on any position to remove a token from your positions view without selling it. Hidden tokens are tracked per wallet and per chain.
To review or restore hidden tokens, enable Show hidden tokens in /settings → Display. With the toggle on, hidden positions reappear with a 🙈 prefix and an inline Unhide link that restores them in one tap.
Hiding a token is display-only — the token stays in your wallet and remains tradeable through token lookup. Manual hiding is separate from automatic dust hiding (see below).
Dust Tokens
Tokens worth less than roughly $0.10 are hidden from the positions view by default to keep the list focused on meaningful holdings. Dust tokens remain in your wallet and reappear automatically in /positions if their USD value rises back above the threshold.
To show dust in your positions list, enable Show dust positions in /settings → Display.
Token Lookup
Get instant info on any Solana, Base, BSC, Ethereum, or Hyperliquid token.
Paste any Solana, Base, BSC, Ethereum, or Hyperliquid contract address into the chat and Viper will auto-detect the chain and display a token info card with:
- Token name, symbol, and current price
- Market cap and fully diluted value
- 24h price change
- Liquidity (if available)
- Quick-buy buttons with your preset amounts
You can also use /price <token_mint> for a price-only lookup without buy buttons.
Trending
Discover the hottest tokens across every chain.
Use /trending to see the top trending DEX tokens right now across Solana, Base, BSC, Ethereum, and Hyperliquid. The default view is an aggregate leaderboard combining all five chains, ranked by on-chain trading activity.
Drill Down by Chain
The aggregate view opens first. Tap a chain chip — Solana, Base, BSC, Ethereum, or Hyperliquid — to drill into that chain's trending list on its own. Tap the aggregate chip again to return to the combined view.
Timeframe Toggle
Switch the ranking window with the 1h, 6h, and 24h toggle. Each timeframe re-ranks the list by activity over that period, so you can spot fast movers (1h) or sustained momentum (24h).
Buy in One Tap
Each token row carries a 💰 Buy link and a 📊 Chart link. Tap 💰 Buy to open that token's buy card — the same card you reach from a contract-address lookup, with token info and amount presets — then tap a preset amount or enter a custom one to trade instantly. Tap 📊 Chart to view the live DexScreener chart.
Data source: Trending rankings are powered by CoinGecko · GeckoTerminal on-chain pool data and are cached briefly to stay fast.
Trade History
Lifetime P&L and closed trade log.
Use /history to see your realized trading performance across all chains. The history view shows:
- Lifetime P&L — Total realized profit/loss broken out per chain (SOL, ETH, BNB, and HYPE)
- Win/Loss stats — Number of winning and losing trades, with win rate percentage
- Last 10 closed trades — Combined from all chains, sorted by date, with token, cost, proceeds, and P&L for each
When Is a Position "Closed"?
A position is considered closed when you sell all (or more than 95%) of your peak holdings for that token. This triggers a realized P&L calculation based on your total cost basis vs total proceeds.
Wallet Toggle
By default, history shows only trades from your active wallet. Tap Show All Wallets to see combined history across all your wallets.
Swap Stables
Convert between SOL/ETH/BNB and a stablecoin (USDC or USDT), or between USDC and USDT directly — with zero platform fees.
Use the Swap Stables button on the main menu to swap between your native token (SOL, ETH, BNB, or HYPE) and a stablecoin (USDC or USDT), or between USDC and USDT directly. This is useful for parking profits in a stablecoin or rotating between stablecoins.
How It Works
- Select a chain — Choose Solana, Base, BSC, Ethereum, or Hyperliquid.
- See your balances — Viper shows your current SOL/ETH/BNB/HYPE, USDC, and USDT balances.
- Pick a direction — native ↔ USDC, native ↔ USDT, or USDC ↔ USDT.
- Choose an amount — Use a percentage button (25%, 50%, 75%, 100%) or enter a custom amount.
- Confirm — Tap Swap and the trade executes instantly.
Routing
Swap routing by chain
| Chain | Route |
| Solana | Jupiter Swap V2 (SOL ↔ USDC, SOL ↔ USDT, USDC ↔ USDT) |
| Base | 0x Protocol (ETH ↔ USDC, ETH ↔ USDT, USDC ↔ USDT) |
| BSC | 0x Protocol (BNB ↔ USDC, BNB ↔ USDT, USDC ↔ USDT) |
| Ethereum | 0x Protocol (ETH ↔ USDC, ETH ↔ USDT, USDC ↔ USDT) |
| Hyperliquid | 0x Protocol (HYPE ↔ USDC, HYPE ↔ USDT, USDC ↔ USDT) |
Gas Reserve
When swapping 100% of a native token (SOL, ETH, BNB, or HYPE), Viper automatically holds back a small amount for gas fees:
Solana: a fixed 0.01 SOL is reserved for transaction fees and account rent.
Base, BSC, Ethereum & Hyperliquid: the reserve is dynamic. It tracks the current network gas price — roughly 3× the estimated cost of one swap — so a sudden fee spike can't leave your wallet unable to cover gas, and it's capped so it never holds back more than needed. It never falls below a floor of 0.0025 ETH on Base, 0.001 BNB on BSC, 0.0025 ETH on Ethereum, or 0.02 HYPE on Hyperliquid; when gas is cheap you'll see close to the floor, and when gas is high the reserve rises automatically.
When swapping a stablecoin (USDC or USDT), the full amount is used since gas is paid in the native token.
Stablecoin Balances on Home Screen
Your USDC and USDT balances are displayed on the home screen alongside your SOL/ETH/BNB/HYPE balance whenever each is at least $0.10.
No fees: Stablecoin swaps are completely free — no platform fee is charged on any direction (native↔USDC, native↔USDT, or USDC↔USDT) on any chain. Stablecoin swaps also do not count toward your daily P&L and are not shown in your trade history.
Bridge
Move funds across chains via the 0x cross-chain API — between Solana, Base, BSC, Ethereum, Hyperliquid, and other supported EVM chains.
Use the 🌉 Bridge button on the main menu, or send /bridge, to start a guided cross-chain transfer. Bridges are routed through the 0x cross-chain API, an aggregator that finds the best route across underlying bridges and DEX paths.
Supported Routes
- Source chains: Solana, Base, BSC, Ethereum, Hyperliquid (your bot wallet sends the funds).
- Destination chains: Solana, Base, BSC, Ethereum, Hyperliquid, plus EVM destinations Arbitrum, Optimism, Unichain, Polygon, Monad, Sonic, Worldchain, Abstract, Mantle, Mode, Avalanche, Ink, Linea, Berachain, Scroll, Blast, and Plasma — and Tron (non-EVM). Coverage tracks 0x's supported routes for the selected source chain — the list expands as 0x adds chains.
- Tokens: Native (SOL / ETH / BNB / HYPE), USDC, or USDT on either side.
How It Works
- Pick the source chain — the chain you're sending FROM.
- Pick the source token — native, USDC, or USDT.
- Enter an amount — preset percentages (25 / 50 / 75 / Max) or a custom value.
- Pick the destination chain — pagination supports 12 destinations.
- Pick the destination token — native, USDC, or USDT.
- Pick the destination address — your bot wallet on the destination chain (default, when available), or paste a custom address.
- Review the quote — expected receive amount, minimum receive, slippage, ETA, and bot fee.
- Confirm — the bot broadcasts on the source chain, then polls 0x for status updates.
Tracking In-Flight Bridges
Send /bridges to see your in-flight and recent transfers. Tap any row for a detail view including the source tx, destination tx (once known), bridge tool used, received amount, and any error details.
Quote Freshness
0x quotes are time-sensitive. If the cached quote is older than ~30 seconds at confirm-time, Viper automatically refetches a fresh quote before broadcasting. If the new quote's buyAmount has dropped by more than 2% compared to the cached value, the confirm is aborted and you'll see a "Quote moved — review and confirm again" message so you can re-confirm at the new rate.
Minimums
Bridges have a hard $5 USD minimum. Viper shows a soft advisory on the destination-chain screen when the picked amount falls below it, and enforces the floor at confirm time: a sub-$5 bridge is blocked before any quote is fetched with Minimum bridge size is $5. When the amount can't be priced in USD (for example a native-token amount with no fresh price), the gate fails open and 0x's own per-route minimum applies — if a quote then comes back with the empty "None of the available routes" error, the bot translates it to Amount is below the minimum bridge size for this route. so you know exactly why the route failed.
Safety
- AllowanceHolder allowlist (EVM): a 0x quote is only signed if its transaction
to matches the canonical 0x AllowanceHolder contract — the same address across all four EVM chains — and any ERC-20 approval spender must equal that same AllowanceHolder.
- Validate-before-sign: chain ID, from address, value, and approval address are checked before any signature.
- Address validation: destination address format is enforced per chain — Solana base58 for Solana, hex for EVM. Pasting a Solana address for an EVM destination (or vice versa) is rejected.
- Idempotency: double-tapping Confirm toasts "Already submitting" and the second tap is ignored.
- Edit-while-submitting: once a bridge is in flight, you can't edit upstream parameters or cancel the builder — the on-chain transaction has already been dispatched.
Bot fee: Bridges use the same per-user trading fee as swaps. Quotes show the bot fee in USD alongside the 0x route.
Perps Transfer
Your Hyperliquid perps hub — open positions, manage trades, and move USDC in and out of your margin.
Send /perps (or tap ⚡ Perps on the main menu) to open your Hyperliquid perps hub. New to perpetual futures? Read Perps Explained first — it defines every term and setting in plain language.
The Hub
Opening /perps shows your perps account at a glance:
- Account value & unrealized PnL — your total perps equity, with combined open-position profit or loss right at the top.
- Free margin & margin used — how much margin is available for new positions versus locked behind open ones.
- Open positions — each position shows its direction (Long/Short), leverage, unrealized PnL, and ROE% (return on the margin you put up). Tap a position chip to expand its details — entry price, mark price, liquidation price, size, and margin.
- 📈 New Position — open the order ticket to place a trade (see below).
- 🔥 Markets — browse every Hyperliquid perp market, sorted by Volume, Gainers, Losers, Open Interest, or Funding. Page through the list and tap any coin to open its order ticket pre-seeded with that market.
- ↻ Refresh — pull fresh balances and prices.
- ⬆️ Deposit / ⬇️ Withdraw — sub-menus for moving USDC in and out of your margin (see Transfers below).
Opening a Position
Tap 📈 New Position, pick a market (or type a symbol to search), and the order ticket opens. From the ticket you set up the trade — every field is explained in Perps Explained:
- Choose ⚡ Market (fills now) or 📊 Limit (rests until your price is reached).
- Pick 🟢 Long or 🔴 Short.
- Set your Margin in USD — tap a shortcut (25% / 50% / Max of your free margin) or enter a custom amount.
- Set your Leverage (up to the market's maximum). Notional = margin × leverage.
- Choose Cross or Isolated margin.
- Optionally tap 🎯 Add TP / SL to set a Take-Profit and/or Stop-Loss that arm the moment your position opens.
- Review the live preview — estimated entry, liquidation price, and fee — then tap Open.
Transfers
The ⬆️ Deposit and ⬇️ Withdraw sub-menus move USDC between your HyperEVM wallet and your Hyperliquid perps margin. These are native Hyperliquid transfers — they do not route through the 0x cross-chain bridge or any external bridge — so they're fast and low-cost.
- 💵 Deposit USDC → perps — move USDC from your HyperEVM wallet into your perps margin.
- 💵 Perps USDC → wallet — move free perps margin back to your HyperEVM wallet.
- ⛽ Deposit HYPE to Core — fund a small amount of HYPE on your Hyperliquid Core account. This is the gas that withdrawals use; if your Core gas is 0, a withdrawal can stall partway. Top it up before withdrawing.
Each transfer screen shows the Available balance for that action — pick a preset (25% / 50% / 75% / Max) or enter a custom amount, then confirm. Viper submits the transfer and confirms it landed by polling your Hyperliquid balances.
Want to fund your margin from another chain? Bridge USDC to your Hyperliquid wallet with /bridge, then use /perps to deposit it into your perps account.
Core → Wallet Recovery
The ⬇️ Withdraw sub-menu also offers one-tap recovery buttons when you hold leftover balances on your Hyperliquid Core account:
- ♻️ Core USDC → wallet — appears if a withdrawal ever left USDC parked on Core (for example, if Core gas ran out mid-transfer). Finishes the withdrawal and sends the USDC to your HyperEVM wallet.
- ♻️ Core HYPE → wallet — appears when you hold HYPE on Core. Sweeps your Core HYPE back to your HyperEVM wallet, keeping a small HYPE gas reserve so future withdrawals can still settle.
Minimums
Deposits have a $5 USD minimum — Hyperliquid will not credit a smaller deposit. Withdrawals have no minimum.
Tip: Start small and with low leverage while you get a feel for how positions move. The order ticket previews your liquidation price and estimated fee before you tap Open.
Perps Explained
New to perpetual futures? Here's every term and setting in plain language.
The basics
- Perpetual future (perp) — a contract that tracks a coin's price and never expires. You can bet the price goes up (long) or down (short) without owning the coin.
- Margin — the money (USDC) you put up to open a position. It's your collateral, not a fee.
- Free / available margin — margin that isn't backing any open position yet. New positions draw from this.
- Margin used — margin currently locked behind your open positions.
- Leverage — a multiplier on your margin. At 10× leverage, $500 of margin controls a $5,000 position. Higher leverage means bigger gains and bigger losses, and a liquidation price closer to the current price.
- Position size (notional) — the total value of your position. Notional = margin × leverage. So $500 margin at 10× = a $5,000 position.
Margin modes
- Cross margin — all your free margin backs the position. Harder to liquidate, but a bad position can draw down your whole account.
- Isolated margin — only the margin you assign to that one position is at risk. The most you can lose is that allocation.
Risk & price terms
- Liquidation price — the price at which your losses use up your margin and the position is force-closed. Stay aware of it; higher leverage moves it closer.
- ROE (return on equity) — your profit or loss as a percentage of the margin you put up (leverage-aware). A +13% ROE on $500 margin is +$65 — even if the coin only moved a little.
- Funding — a small periodic payment exchanged between longs and shorts to keep the perp price near the real coin price. Sometimes you pay it, sometimes you receive it.
Order types
- Market order — fills immediately at the current price (with a little slippage allowance).
- Limit order — only fills at the price you set or better; it rests until then.
- Reduce-only — an order that can only shrink or close a position, never flip or grow it. Closing uses reduce-only.
- Take-profit (TP) — auto-closes the position once it reaches a profit target you choose.
- Stop-loss (SL) — auto-closes the position once it falls to a loss limit you choose, to cap the downside.
Fees
Hyperliquid charges its own small trading fee. Viper adds a small builder fee on top (a fraction of a percent of the position size) — this is how the perps feature is funded. The estimated total fee is shown on the order ticket before you confirm.
Tip: Start small and with low leverage while you get a feel for how positions move. The order ticket previews your liquidation price and estimated fee before you tap Open.
Managing & exiting a position
- Close — exits the whole position immediately at market.
- Reduce — closes part of the position (25/50/75% or a custom amount).
- Add to position — tap ➕ Add to re-open the order ticket pre-seeded with that position's coin and side, with leverage and margin mode locked (so adding can't accidentally re-lever or flip the whole position); you then choose market vs limit and a size, the same as opening a new position.
- Adjust leverage — changes the multiplier on an open position; this also moves its liquidation price.
- Add / remove margin (isolated only) — moves margin in or out of one isolated position to push its liquidation price further away or free up collateral.
- Set TP / SL — adds a take-profit or stop-loss trigger to an already-open position. A take-profit can close a chosen portion of the position (you pick 25/50/75/100% or a custom %), so it can be a partial exit; a stop-loss always closes the full position. Either triggers at market once your trigger price is reached.
- Cancel orders — removes resting limit orders or TP/SL triggers you no longer want.
Risk reminder: Leverage cuts both ways. A position can be liquidated — losing the margin behind it — if the price moves against you to the liquidation price. Set a stop-loss, keep leverage modest, and check the liquidation price before and after any change.
Limit Orders
Automated price-triggered buy and sell orders.
Limit orders let you set a price target and have Viper execute the trade automatically when that price is reached — 24/7, even when you're offline.
Creating an Order
Use /limit or tap Orders from the main menu. Then:
- Select Buy or Sell.
- Enter the token contract address.
- Set the amount (SOL for Solana buys, ETH for Base/Ethereum buys, BNB for BSC buys, HYPE for Hyperliquid buys, tokens or percentage for sells).
- Set the trigger price in USD.
- Choose an expiry (24h, 72h, 1 week, or 30 days).
- Confirm the order.
How Orders Execute
Viper continuously polls prices on all chains. When your trigger price is hit, the swap executes automatically:
- Solana — Prices polled via Jupiter, execution via Jupiter Swap V2.
- Base — Prices polled via Uniswap V3/V4 Quoter, execution via 0x Protocol.
- BSC — Prices polled via PancakeSwap V2/V3, execution via 0x Protocol.
- Ethereum — Prices polled via Uniswap V2/V3 + SushiSwap, execution via 0x Protocol.
- Hyperliquid — Prices polled via HyperSwap V3 and Kittenswap QuoterV2, execution via 0x Protocol.
Funds stay in your wallet until the order triggers — no escrow or lockup.
Limit order parameters
| Parameter | Options |
| Direction | Buy or Sell |
| Trigger price | USD price target |
| Expiry | 24h, 72h, 168h (1 week), 720h (30 days) |
| Slippage | Custom or your global setting |
| Minimum order | $5 USD equivalent |
Editing Orders
You can edit an active order's trigger price, amount, or expiry without cancelling and recreating it. Go to /limit and tap the order to see edit options.
Stop Loss
When creating a sell limit order, you can tap the Stop Loss button to set up downside protection — choose Fixed or Trailing type and configure how much to sell (50%, 100%, or custom %). See Stop Loss for details.
Cancelling Orders
Cancel individual orders from the order list, or cancel all orders at once.
Stop Loss
Protect your positions with automatic downside selling.
Stop Loss creates a limit sell order that triggers automatically when a token's price drops to your floor — either a fixed price target or a trailing percentage from the highest price seen.
Stop Loss Types
Stop loss types
| Type | How It Works |
| Fixed | Triggers when the price drops to a specific USD price you set. The trigger price never changes. |
| Trailing | The trigger price automatically rises as the token's price rises. If you set 20%, the order triggers when the price falls 20% from its highest point since the order was created. |
Setting a Stop Loss
From /positions, select a token and tap 📉 Limit Order, then:
- Switch to Sell direction.
- Tap the Stop Loss button. Choose Fixed or Trailing.
- Fixed: Set a trigger price below the current price — this is your floor.
Trailing: Set the trailing percentage (e.g., 20% = sell when price drops 20% from its high).
- Choose how much to sell: 50%, 100%, or a custom percentage.
- Choose an expiry period (24h, 72h, 1 week, or 30 days).
- Tap CREATE ORDER.
How Fixed Stop Loss Works
- When the token's price drops to or below your stop loss price, Viper executes the sell automatically.
- If the current price is already at or below your stop loss price, you'll get a warning. Enter the same price again to confirm.
- Stop loss prices must be below the current price — entering a price above current is rejected.
How Trailing Stop Loss Works
- Viper tracks the highest price seen since the order was created (high water mark).
- The trigger price is always high water mark × (1 − trailing %). As the price rises, the trigger rises with it — but it never moves down.
- When the price drops to the trigger level, Viper executes the sell.
Example: You set a 20% trailing stop on a token at $1.00. The trigger starts at $0.80. The price rises to $1.50 — the trigger rises to $1.20. The price then falls to $1.20 and the stop loss executes, locking in a $0.20 gain per token.
Stop loss parameters
| Parameter | Options |
| Type | Fixed (price floor) or Trailing (% from high) |
| Sell amount | 50%, 100%, or custom % |
| Trigger direction | Price drops to target |
| Expiry | Same options as limit orders (24h–30d) |
| Slippage | Custom or your global setting |
Tip: Combine stop loss with take profit for a complete exit strategy — take profit captures upside while stop loss protects downside. Use trailing stop loss to let winners run while still protecting profits.
Take Profit
Lock in gains on every trade.
Take Profit (TP) is available on every buy path. Copy trades and call channel auto-buys create TP orders automatically. For manual buys, set a limit sell order from the position card. Viper monitors prices 24/7 and sells when your target is hit.
How It Works
- Auto buys (copy trades & call channels): After the buy executes, Viper waits 2 seconds for on-chain state to settle, then creates a limit sell order at your configured TP target.
- Manual buys: Open the position card and tap Limit Sell to set a take-profit price target.
- When the token reaches the target, the sell executes automatically.
Configuration
Copy trade configuration
| Setting | Options |
| PNL Target | 50%, 100%, 200%, 300%, 500%, or custom percentage |
| Sell Amount | 25%, 50%, 75%, 100% of holdings, or Initials |
"Initials" Mode
Instead of selling a fixed percentage, Initials mode sells just enough tokens to recover your initial SOL investment. The rest rides as pure profit.
Example: You buy 0.5 SOL worth of a token. With Initials mode at 100% TP, when the token 2x's, Viper sells exactly 0.5 SOL worth (recovering your initial) and keeps the remaining tokens.
Copy Trading — Setup
Mirror any wallet's trades automatically.
Copy trading monitors a target wallet in real-time via WebSocket. When the target buys or sells a token, Viper automatically mirrors the trade for you. Copy trading works on Solana, Base, BSC, Ethereum, and Hyperliquid.
Adding a Copy Trade
Use /copy or tap Copy Trade from the main menu, then Add.
- Choose the chain: Solana, Base, BSC, Ethereum, or Hyperliquid.
- Enter the target wallet address you want to copy.
- Choose a sizing mode: Percentage (mirror a % of their trade size) or Fixed (use a fixed SOL/ETH amount per trade).
- For percentage mode, set min and max limits to control your exposure.
- Optionally add a label (e.g., "Smart Money Wallet").
Sizing Modes
Copy trade sizing modes
| Mode | How It Works |
| Percentage | If the target buys 10 SOL and you set 50%, Viper buys 5 SOL (clamped by your min/max). Same logic applies on Base with ETH, BSC with BNB, and Hyperliquid with HYPE. |
| Fixed Amount | Viper always buys with your fixed SOL/ETH/BNB/HYPE amount regardless of the target's trade size. |
Copy Trading — Managing
Pause, edit, or remove copy trades.
From the /copy menu, you can manage all your active copy trades:
- Pause/Resume — Temporarily stop copying without removing the configuration.
- Toggle sell copying — Choose whether to also mirror sell transactions, or only copy buys.
- Edit sizing — Change percentage, fixed amount, or min/max limits.
- Edit label — Rename for organization.
- Stop Loss settings — Enable automatic stop loss on every copied buy (see below).
- Remove — Delete the copy trade entirely.
Stop Loss on Copy Trades
Each copy trade supports an optional stop loss that runs on every position the copy opens for you. Two trigger types are available:
- Fixed — sell when the token price falls a set percentage below the copy's entry price.
- Trailing — sell when the price falls a set percentage from the highest price seen since entry (the trigger auto-raises with rallies).
The sell percentage is configurable (50%, 100%, or custom). Stop loss composes with take profit on the same copy — whichever triggers first wins. On partial sells, the remaining position continues to track the same trigger.
Latency: Copy trades execute as soon as the target wallet's transaction is detected on-chain.
Call Channels — Setup
Auto-buy tokens when they're called in Telegram channels.
Call Channels let you subscribe to Telegram alpha channels. When a new contract address is posted (Solana, Base, BSC, Ethereum, or Hyperliquid), Viper auto-buys with your configured amount.
Adding a Channel
Use /calls or tap Call Channels from the main menu, then Add Channel.
- Choose which chain(s) to auto-buy on — Solana, Base, BSC, Ethereum, Hyperliquid, or any combination (auto-selected if you only have one wallet).
- Enter the channel's
@handle (e.g., @alpha_calls).
- Set the buy amount per call (SOL for Solana, ETH for Base/Ethereum, BNB for BSC, HYPE for Hyperliquid).
- Optionally enable Take Profit (see Take Profit).
- Optionally enable Stop Loss — choose Fixed (% below buy price) or Trailing (% from high), set the percentage, and how much to sell when triggered.
Deduplication
Viper prevents duplicate buys with smart dedup:
Call channel deduplication rules
| Scenario | Behavior |
| Same CA posted twice in one channel | Only buys on the first occurrence |
| Same CA posted in two different channels | Only buys from the first channel to post it |
| CA was posted before you subscribed | Does not buy — already in dedup table |
History Seeding
When you add a channel, Viper scans the past 180 days of messages (configurable) and records all CAs it finds. This prevents the bot from buying old calls when you first subscribe.
Stop Loss on Call Channels
Each call channel you track can run a stop loss on every auto-bought position, configured per channel. The two trigger types mirror copy trading:
- Fixed — sell on a percentage drop below entry.
- Trailing — sell on a percentage drop from the highest price seen since entry.
The sell percentage is configurable (50%, 100%, or custom). Stop loss composes with take profit on the same channel — whichever fires first executes.
Call Channels — Take Profit
Automatically set sell targets for call channel buys.
Each call channel subscription can have its own Take Profit (TP) configuration. When enabled, Viper automatically creates a limit sell order after every auto-buy.
Enabling TP
Enable during channel setup or go to /calls → select a channel → TP toggle.
Settings
- PNL Target — Presets: 50%, 100%, 200%, 300%, 500%, or enter a custom percentage.
- Sell Amount — How much to sell: 25%, 50%, 75%, 100%, or Initials (recover initial investment only).
See Take Profit for full details on how TP orders work.
Call Channels — Managing
Pause, delete, or edit channel subscriptions.
Pause vs Delete
Channel pause vs delete
| Action | Behavior |
| Pause | Stops buying but keeps dedup records. When unpaused, only new CAs trigger buys. |
| Delete | Removes the channel and deletes all dedup records. If re-added later, previously called tokens can trigger buys again. |
Create & Import Wallets
Generate new wallets or import existing ones.
Create a New Wallet
Tap New Wallet from the wallet menu. Choose Solana, Base, BSC, Ethereum, or Hyperliquid — a new keypair is generated and encrypted immediately. The public address is displayed for funding. When creating or importing a Base wallet, BSC, Ethereum, and Hyperliquid wallets are automatically created as companions using the same private key.
Import an Existing Wallet
Use /import in a direct message to the bot (not in a group).
- Solana — Paste your base-58 encoded private key.
- Base — Paste your hex private key. BSC and Ethereum wallets are automatically created using the same key.
- The message containing your private key is deleted immediately for security.
- The key is encrypted with your unique encryption key (derived from your Telegram ID + the bot's master secret).
- The imported wallet becomes your active wallet automatically.
Security: Private keys are Fernet-encrypted (AES-128-CBC + HMAC-SHA256) using a per-user key derived via PBKDF2. They are never stored in plaintext.
Switch & Manage Wallets
Manage multiple wallets from one account.
Use /wallet to open the wallet manager. Wallets are organized by chain. You can:
- View all wallets — See each wallet's public key and balance (SOL, ETH, BNB, or HYPE).
- Switch active wallet — Tap any wallet to make it active for that chain. Each chain has its own active wallet.
- Rename wallets — Add labels for easy identification.
The /listwallets Command
Send /listwallets to see all your wallets at a glance — each wallet's public address and native balance (SOL, ETH, BNB, or HYPE) with the active wallet highlighted.
Withdraw
Send SOL, ETH, BNB, HYPE, or tokens to any external address.
From the wallet menu, tap Withdraw to transfer funds out of your bot wallet.
- Select what to withdraw: SOL/ETH/BNB/HYPE or a specific token.
- Choose an amount: 25%, 50%, 75%, 100%, or enter a custom amount.
- Enter the destination wallet address.
- Confirm the transaction.
After confirmation, you'll receive a Solscan (Solana), Basescan (Base), BscScan (BSC), Etherscan (Ethereum), or HyperEVMScan (Hyperliquid) link to track the transfer.
Export Private Key
Retrieve your wallet's private key securely.
Use /export in a direct message to the bot.
- If you have a PIN set, you'll need to enter it first.
- The private key message includes a 🗑 Delete now button for instant removal, and also auto-deletes after 15 seconds as a fallback.
- This exports the key for your currently active wallet.
Important: Set a PIN with
/setpin to protect against unauthorized exports. See
PIN Security.
Claim SOL
Reclaim rent from empty token accounts.
Every token you hold on Solana requires a token account, which costs ~0.002 SOL in rent. When you sell 100% of a token, the account remains open with a zero balance.
Use the Claim SOL button in the wallet menu (or /claim) to close all empty token accounts and reclaim that rent.
Note: /burn is a Solana-only feature — the EVM chains (Base, BSC, Ethereum, and Hyperliquid) don't use rent-based token accounts, so there's nothing to reclaim or burn there. Accounts with active limit sell orders are skipped to avoid disrupting your orders.
Slippage
Control price impact tolerance on swaps.
Slippage is the maximum acceptable price difference between the quoted price and the execution price. Use /settings to configure.
Slippage is set in basis points via /settings — 100 bps = 1%, 1000 bps = 10%. There are no pre-defined tiers; enter the value that matches your token's volatility.
On Solana
Slippage on Solana defaults to a fixed 1% (100 bps), applied to every Jupiter swap. Change it in /settings — one value used for both buys and sells.
On Base, BSC, Ethereum & Hyperliquid
Each EVM chain stores one slippage value, applied to both buys and sells. Sells often need higher slippage than buys on low-liquidity tokens, so set the value with the riskier direction in mind. Configure via /settings → Base / BSC / Ethereum / Hyperliquid.
Stablecoin Swaps
Stablecoin swaps (native↔USDC/USDT and USDC↔USDT) use a separate slippage value, set once and applied on every chain. It defaults to 25 bps (0.25%). Configure via /settings → 🪙 Stablecoin Slippage.
Priority Fee
Control transaction priority on the Solana network.
Higher priority fees increase the likelihood of your transaction being included in the next block. Configure via /settings.
Priority fee tiers
| Tier | Fee |
| Auto | Jupiter-recommended (default) |
| Default | 0.00005 SOL |
| Fast | 0.0005 SOL |
| Turbo | 0.005 SOL |
| Custom | Any amount in SOL |
Note: Priority fees are Solana-only and default to auto mode — Jupiter V2 optimises them automatically. Switch to manual mode in /settings if you need a fixed tier. Base, BSC, and Ethereum gas is handled automatically by 0x Protocol.
Display
Control what appears on your positions page.
The Display sub-menu in /settings has two toggles that filter your /positions list. Both default to off — the same behaviour Viper has always had.
Show dust positions
When off (default): tokens worth less than ~$0.10 are hidden from the positions list.
When on: dust tokens appear alongside your meaningful holdings so you can review small balances before claiming rent, burning, or consolidating.
Show hidden tokens
When off (default): tokens you've hidden via the Hide button stay out of the positions list.
When on: hidden positions render with a 🙈 prefix and an inline Unhide link. Tap it to restore the token to your regular positions view.
Tip: Both toggles are per-user and apply to every chain. They affect display only — no tokens are ever moved, sold, or burned.
Buy & Sell Presets
Customize your quick-action buttons.
Buy Presets
When you look up a token (by pasting a CA), you see 4 quick-buy buttons with preset amounts. Each chain has separate presets:
Solana: 0.1 SOL · 0.5 SOL · 1.0 SOL · 2.0 SOL
Base: 0.001 ETH · 0.005 ETH · 0.01 ETH · 0.05 ETH
BSC: 0.1 BNB · 0.25 BNB · 0.5 BNB · 1.0 BNB
Ethereum: 0.05 ETH · 0.1 ETH · 0.25 ETH · 1.0 ETH
Hyperliquid: 0.1 HYPE · 0.5 HYPE · 1.0 HYPE · 5.0 HYPE
Customize these in /settings → Buy Options. Changes apply immediately to all buy cards.
Sell Presets
Your positions show 2 quick-sell percentage buttons. The defaults are:
25% · 100%
Customize per chain in /settings → Sell Options (same as buy presets).
PIN Security
Protect sensitive operations with a PIN.
Set a 4–6 digit PIN with /setpin. Once set, you'll need to enter it before:
- Exporting your private key (
/export)
- Withdrawing funds from your wallet
Your PIN is stored as a bcrypt hash (12 rounds) — it cannot be reversed. The messages you type your PIN into are automatically deleted for security.
You can change your PIN at any time by running /setpin again.
To remove your PIN entirely, tap the 🗑️ Remove PIN button in /settings. You'll need to enter your current PIN to confirm the removal.
MEV Protection
Protect your trades from sandwich attacks and front-running.
MEV (Maximal Extractable Value) protection shields your transactions from being exploited by bots that detect pending swaps and manipulate prices around them — commonly known as sandwich attacks and front-running.
Per-Chain Breakdown
Solana
Solana transactions are protected via two mechanisms:
- Jito private relay — Your transaction is routed through Jito's private mempool, keeping it invisible to sandwich bots until it reaches validators.
- Jupiter Beam — Jupiter's private transaction submission endpoint, which keeps your swap invisible to mempool scanners until it lands on-chain.
MEV protection on Solana is on by default and can be toggled via /settings → MEV Protection.
Ethereum
Ethereum transactions route through Flashbots Protect, a private RPC that sends your transaction directly to block builders — bypassing the public mempool entirely. MEV protection is on by default and can be toggled via /settings → Ethereum → MEV Protection.
Base / BSC
MEV protection is not currently available on Base or BSC. Transactions are submitted via standard RPCs. While sandwich attacks are less common on these chains due to shorter block times, they are not fully protected.
How to Toggle
Open /settings, select the chain (Solana or Ethereum), and tap MEV Protection to toggle between on and off. When off, transactions use standard RPCs instead of Jito's private relay / Jupiter Beam (Solana) or Flashbots Protect (Ethereum).
Recommendation: Keep MEV protection enabled on both Solana and Ethereum unless you are experiencing landing issues with specific tokens.
Referral Program
Trade cheaper — together.
Share your referral link and both you and your friend get a permanent fee discount.
How It Works
- Get your code — Open
/referral to see your unique referral link.
- Share it — Send the link to a friend. When they start the bot via your link, they're linked to you.
- Both save — Once linked, both users trade at 0.2% instead of the standard 0.25% — no time limit.
Referral fee structure
| Status | Fee per Trade |
| No referral | 0.25% |
| With referral (either direction) | 0.2% |
Entering a Code
If someone shared their referral link with you, just click it to open the bot. The referral is applied automatically on your first /start.
Fee Structure
Simple, transparent pricing.
Fee structure
| User Type | Fee per Trade |
| Standard user | 0.25% (25 bps) |
| Referred user | 0.2% (20 bps) |
Where Fees Apply
The platform fee is collected on every trade, regardless of how it was triggered:
- Manual buys and sells
- Limit order executions
- Copy trade executions
- Call channel auto-buys
- Trigger order fills
How Fees Are Collected
- Buys: The fee is deducted from your SOL (Solana), ETH (Base/Ethereum), BNB (BSC), or HYPE (Hyperliquid) before the swap. If you buy with 1 SOL at 0.25%, the swap uses 0.9975 SOL.
- Sells: The fee is deducted from the SOL, ETH, BNB, or HYPE you receive after the swap.
The same fee rate applies on Solana, Base, BSC, Ethereum, and Hyperliquid. There are no hidden fees, subscription costs, or withdrawal charges.
Fee-Free: Stablecoin Swaps
Stablecoin swaps are completely free. No platform fee is charged on any direction (native↔USDC, native↔USDT, or USDC↔USDT) on any chain. Stablecoin swaps also do not count toward your daily P&L and are not shown in your trade history. See Swap Stables for details.