Skip to content

Grid bot

How spot and futures grid bots work, every setting with its default, Long, Short and Neutral grids, and why a grid loses money when the price trends.

On this page

A grid bot splits a price range into levels. It places buy orders on the levels below the price and sell orders on the levels above. Each time a buy fills, it places a sell one level higher. Each time that sell fills, it buys again one level lower. Every completed buy and sell earns one grid step, minus fees.

A grid does well when the price moves up and down inside the range. It does badly when the price leaves the range and keeps going.

Spot grid or futures grid

Pick Futures or Spot in the market picker of the builder's header, as on Trade.

Spot gridFutures grid
VenueHyperliquid spotHyperliquid and Aster perps
DirectionLong onlyLong (default), Short or Neutral
LeverageNone, no liquidation1x default, up to 3x; 4x and 5x on the deepest markets only. Isolated margin
At the startBuys the coin for the sell levels above the priceOpens a position for the levels above the price (Long)
FundsUSDC in your spot balance. The bot can't move funds, so move them first. See Move between perps and spotFree margin on the account
When stoppedSell the coin, or keep itClose the position, or keep it

A futures grid can't start on a market where the account already has a position. The builder checks this (and, on Aster, one-way position mode and single-asset margin) before you sign, says why, and keeps Continue off until it's fixed.

The settings

The panel asks for the essentials first. A run length fills in every other setting for you (see Run length); the rest sits under Manual adjustment.

In the panelDefaultWhat it does
Direction (futures)LongShort and Neutral on the deepest markets only, with a red risk line
InvestmentWhat the bot may use. 25%, 50% and Max fill in a share of the available balance; Max leaves 1% for fees. On spot the balance is the USDC in your Hyperliquid spot balance not held by orders. More than you have is refused: "Not enough USDC. Available …"
Leverage (futures)1x1x to 3x; 4x and 5x on the deepest markets only. The estimated liquidation price on the chart moves with it
Run length1 to 3 days, 3 to 15 days or 25+ days: ready settings for this coin

Under Manual adjustment:

FieldDefaultWhat it does
GridsA slider for how many grids the range is cut into, with the step it gives and the minimum investment for that many. It only goes as far as counts that can run: past it the step would be under the fees, or the orders would need more than your investment
Lower price / Upper price10% below and above the priceThe range. It must be at least 2% wide
Number of grids202 to 150 on Hyperliquid, 2 to 100 on Aster
Grid stepFrom the range and gridsThe gap between levels. Number of grids and grid step are linked: the one you edited last stays fixed when you move the range
Grid typeGeometricArithmetic: an equal price gap between levels. Geometric: an equal % gap
Stop loss5% below the lower price (Long)Required. Stops the bot and closes the position when hit (spot: sells the coin the bot holds). Short grids put it above the upper price, and Neutral grids also get a Stop loss above the range. If the price is already beyond it, the form asks you to move it or set a trigger price
Profit per gridWhat one completed buy and sell earns after fees, as a range across the levels. It must be above zero

Under Advanced, at the end of Manual adjustment:

FieldDefaultWhat it does
Trigger priceOffThe bot waits until the price crosses it, then starts. Use it when the price is outside your range: without one, a Long grid below its range buys its whole investment at start (the form warns)
Take profitOffThe bot stops when its total PnL reaches this % of the investment
Trailing take profitOffOnce take profit is reached, the bot follows the price and stops when it falls back by this %
Max loss30% of the investment, or more when the loss at your stop is biggerThe bot closes at market when its total PnL reaches this loss. Part of the limits you sign. With leverage the loss at the stop can pass 30%, so the default rises to cover it (plus 10%) and the stop stays the real exit. A max loss you enter below it gets a warning: the bot would close before the price reaches the stop
Trailing up (spot)OffWhen the price leaves the top, the grid moves up one step and the stop moves with it. Needs a Trailing up limit: the grid never moves above it
Pump protection (spot, with trailing up)OnPauses trailing buys while the price moves more than 3% in 5 minutes
Trailing down (spot)OffKeeps buying below your range, down to the Trailing down limit. You can end up holding a falling coin
If the price leaves the rangeKeep runningKeep running waits for the price to come back, the stop still protects it. Stop and close closes the position (or sells the coin). Stop and keep stops and keeps the position with its stop (or the coin)

The chart shows the bot's lines as you set them: the upper and lower price, the grid levels, the trigger and the stop loss, and on futures the estimated liquidation price.

What the form checks

  • Fees: the smallest real step between two levels must be at least 3 times a round trip's fees: your venue maker fee both ways and the Prow fee both ways at its standard rate, even during the promo. Steps under 1% are allowed with a warning: in our tests they lost more.
  • Rounding: levels are rounded to the venue's price ticks. Levels that land on the same price are merged, and the form says how many.
  • Order size: the bot puts the same coin size on every level. The order on the lowest level must still meet the venue's minimum order, so the form says what your settings need. When your investment runs only some of the grids, it says how many fit and offers the amount (or the leverage) for all of them.
  • Liquidation (futures): Prow takes the worst case, every level on the losing side filled, and checks that liquidation would come after your stop fills. If not: "Liquidation at … could come before your stop at …. Lower leverage or move the stop closer." An estimated liquidation close to the price gets a warning too.

Long, Short and Neutral

  • Long holds a position for the levels above the price and buys more as the price falls. It profits from swings and loses when the price falls through the range.
  • Short is the mirror: it sells as the price rises and loses when the price rises through the range.
  • Neutral starts with no position. It goes short above the start price and long below it, with a stop on each side.

Why a grid loses in a trend

An example. A Long futures grid on a coin at 100 USDC, 1x, 1,000 USDC invested, range 90 to 110, 20 geometric grids. The step is about 1%, and each completed buy and sell earns about 0.48 USDC before fees.

  1. At the start the bot buys the coin for the 10 sell levels above 100.
  2. The price falls to 90. Every buy level fills. The bot now holds about 10 coins at an average of about 97.20.
  3. The price keeps falling to the stop at 85.50. The bot closes the position for a loss of about 117 USDC, or about 12% of the investment.

To earn back 117 USDC, the grid would have needed about 240 completed round trips. A grid earns a little many times and can lose a lot once. That is why a stop is required and why the default is 1x.

Tips

  • Pick a range the price has respected recently. The 1 to 3 days, 3 to 15 days and 25+ days run lengths do this from the coin's last 3, 14 or 60 days and keep the settings that held up most consistently across many start dates, not the one with the highest single result. See Run length.
  • Fewer grids mean wider steps: less trading, less fee drag.
  • Compare the figure under the run length ("Last 14 days: +0.6%") with what simply holding the coin did over the same days on the chart. A grid that made 3% while the coin gained 10% did worse than doing nothing, and a grid earns nothing while the price is outside its range.

Last updated