Skip to main content
Owly Grid Bot automates grid trading within a price range you define. It is designed for users who want a rules-based way to place, maintain, and rebalance orders without managing every level manually.

What Is Supported Today

Perpetual (perp) grid trading is live today
neutral, long, and short modes are supported
arithmetic and geometric grid spacing are supported
Trigger price, trailing range, take profit, and stop loss are supported
cross and isolated margin modes are supported
unifiedAccount is the current default account mode in the user-facing product
Spot 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:
  1. Read the current market price.
  2. Wait for the trigger condition if a trigger price is configured.
  3. Build the target grid orders within your selected range.
  4. Compare current live orders with the target grid and only adjust what needs to change.
  5. Exit through a risk flow if take profit or stop loss is triggered.
These operating rules matter most in practice:
  • 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_limit or trailing_down_limit is 0, 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_position is 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-only take-profit orders.
  • You can enable bootstrap_position to 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-only take-profit orders.
  • You can enable bootstrap_position to build an initial directional position when the bot activates.

Key Parameters

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 price
  • trigger_direction = "below": the bot starts once price is less than or equal to the trigger price
This is useful when you want to:
  • 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_limit controls how far the range may move upward
  • trailing_down_limit controls how far the range may move downward
This can be helpful when:
  • 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_position is enabled and bootstrap_size is not set, the system uses order_size.
Directional grids work best when you start from one of these states:
  • 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 about 10.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 than USDC, 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 of unifiedAccount, 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_position disabled
  • leave trailing disabled
  • avoid aggressive take-profit and stop-loss levels at first
This gives you room to confirm that the order density, notional size, and selected range behave as expected before adding more complexity.

Example Configuration

This example represents a simple first setup:
  • BTC perpetual neutral grid
  • unifiedAccount account mode
  • a moderate range from 95,000 to 105,000
  • no trailing
  • no global take profit or stop loss

What Users Should Keep in Mind

long and short mode are not automatic position repair tools. Make sure your initial position state and base-position plan are already aligned with your strategy.
If you want fewer order updates, widen rebalance_tolerance_bps, avoid ranges that are too narrow, and do not make the grid unnecessarily dense.