What Is Supported Today
Perpetual (
perp) grid trading is live todayneutral, long, and short modes are supportedarithmetic and geometric grid spacing are supportedTrigger price, trailing range, take profit, and stop loss are supported
cross and isolated margin modes are supportedunifiedAccount is the current default account mode in the user-facing productSpot grid is planned but is not available for execution yet.
How Grid Bot Works
At a high level, Grid Bot follows the same loop throughout its lifecycle:- Read the current market price.
- Wait for the trigger condition if a trigger price is configured.
- Build the target grid orders within your selected range.
- Compare current live orders with the target grid and only adjust what needs to change.
- Exit through a risk flow if take profit or stop loss is triggered.
- Grid Bot primarily uses the mark price for its decision logic.
- If
trigger_price <= 0, the bot becomes active immediately after start. - If
trailing_up_limitortrailing_down_limitis0, that trailing behavior is disabled. - After take profit or stop loss is triggered, the bot exits the normal grid loop and moves into a risk exit flow.
Trading Modes
Neutral
Neutral mode is built for range-bound markets.- Buy orders are placed below the market.
- Sell orders are placed above the market.
- The bot does not automatically build a directional base position.
bootstrap_positionis automatically disabled in neutral mode.
Long
Long mode is built for a bullish view.- Buy orders add long exposure below the market.
- Sell orders above the market are placed as
reduce-onlytake-profit orders. - You can enable
bootstrap_positionto build an initial directional position when the bot activates.
Short
Short mode is built for a bearish view.- Sell orders add short exposure above the market.
- Buy orders below the market are placed as
reduce-onlytake-profit orders. - You can enable
bootstrap_positionto build an initial directional position when the bot activates.
Key Parameters
| Parameter | What it controls | User guidance |
|---|---|---|
coin | Trading symbol, such as BTC | Confirm whether you are trading perp now or preparing for future spot support |
grid_type | Grid market type | Use perp for now; spot is planned |
perp_mode | neutral, long, or short | Match the mode to your market view |
account_mode | Account mode | The user-facing product currently defaults to unifiedAccount |
margin_mode | cross or isolated | If unsure, start with cross |
leverage | Leverage multiplier | Start with lower leverage |
price_lower / price_upper | Grid range | Must be above 0, and the upper price must be higher than the lower price |
grid_number | Number of price levels | More levels means a denser grid |
order_size | Size per grid order | Must still satisfy exchange minimum order requirements |
price_algorithm | arithmetic or geometric | If unsure, start with arithmetic |
sync_interval | Reconciliation interval in seconds | Current minimum is 10; default is 15 |
rebalance_tolerance_bps | Repricing tolerance band | A wider band can reduce frequent cancel-and-replace behavior |
trigger_price | Activation price | 0 means start immediately |
trigger_direction | above or below | Controls when the bot begins placing its grid |
trailing_up_limit | Highest level the range can trail upward | 0 disables upward trailing |
trailing_down_limit | Lowest level the range can trail downward | 0 disables downward trailing |
bootstrap_position | Whether to build an initial directional position | Only meaningful in long or short mode |
bootstrap_size | Size of the initial position | Falls back to order_size if not set separately |
take_profit_price | Global take-profit price | Triggers a risk exit |
stop_loss_price | Global stop-loss price | Triggers a risk exit |
Trigger, Trailing, and Risk Controls
Trigger Price
Use a trigger price if you do not want the bot to place orders immediately after launch.trigger_direction = "above": the bot starts once price is greater than or equal to the trigger pricetrigger_direction = "below": the bot starts once price is less than or equal to the trigger price
- start after a breakout
- wait for price to return to a target area before activation
Trailing Range
Trailing lets the entire grid range move with the market when price leaves the original range.trailing_up_limitcontrols how far the range may move upwardtrailing_down_limitcontrols how far the range may move downward
- a trending market would otherwise leave your grid inactive for too long
- you want a range strategy with limited follow-through
Take Profit and Stop Loss
These are global strategy-level controls, not settings for an individual order. Once triggered, Grid Bot moves into a risk exit flow:- it attempts to close the position
- it cancels related grid orders
- it stops normal grid maintenance
Bootstrap Rules in Directional Modes
bootstrap_position is available in long and short mode, but there are important rules to understand:
- Neutral mode never performs a bootstrap.
- The account must either be flat or already hold a position in the same direction.
- If a same-direction position already exists but is still smaller than
bootstrap_size, the bot does not partially top it up and continue. It exits with an error instead. - If
bootstrap_positionis enabled andbootstrap_sizeis not set, the system usesorder_size.
- a flat account
- a pre-planned base position that already matches the strategy direction
Important Limits Before You Start
Minimum Order Value
Grid orders must satisfy exchange minimums. Based on the current implementation, each order should be large enough to represent at least about10.5 USDC in notional value.
If order_size is too small, or the selected range results in too little notional value, the bot may refuse to start.
Exchange Rules Still Apply
Final order price and quantity are always subject to exchange constraints. Actual execution depends on what the exchange accepts at that moment.Spot Grid Is Not Live Yet
Spot grid is planned, including support across HIP3 venues. If a future HIP3 DEX uses a quote coin other thanUSDC, you will need to prepare that quote asset in your account in advance.
Account Mode Must Match
The user-facing product currently explains Grid Bot in the context ofunifiedAccount, which matches Hyperliquid’s default account model.
Suggested Starting Setup
If this is your first time using Grid Bot, keep the setup simple:- use
neutral + perp + cross + low leverage - leave
bootstrap_positiondisabled - leave trailing disabled
- avoid aggressive take-profit and stop-loss levels at first
Example Configuration
| Item | Example | Meaning |
|---|---|---|
| Symbol | BTC | Run a BTC perpetual grid |
| Grid type | perp | Perpetual grid is the currently supported mode |
| Mode | neutral | Buy below the range and sell above it |
| Account mode | unifiedAccount | Matches Hyperliquid’s default account model |
| Margin mode | cross | Use cross margin |
| Leverage | 1 | Start with low leverage |
| Lower price | 95,000 | Bottom of the range |
| Upper price | 105,000 | Top of the range |
| Grid levels | 10 | Split the range into 10 price levels |
| Order size | 0.001 | Use the same size for each level |
| Price algorithm | arithmetic | Use evenly spaced price levels |
| Sync interval | 15 seconds | Re-check and sync the grid every 15 seconds |
| Rebalance tolerance | 8 bps | Avoid constant rebuilds on small price drift |
| Trigger price | 0 | Start immediately |
| Trigger direction | above | Relevant when trigger price is above 0 |
| Upward trailing limit | 0 | Disabled |
| Downward trailing limit | 0 | Disabled |
| Take-profit price | 0 | Disabled |
| Stop-loss price | 0 | Disabled |
- BTC perpetual neutral grid
unifiedAccountaccount mode- a moderate range from
95,000to105,000 - no trailing
- no global take profit or stop loss