Knowledge · Strategies · Grid Trading

Grid Trading

Very old (manual trading); automated in crypto from ~2018 by 3Commas, Pionex, Bitsgap
Market Making Evidence: Moderate continuous cryptofx
4/10
Relevance for Botty
Places buy/sell orders at fixed intervals within a price range. Profits from volatility without a directional view. Ideal in sideways markets.
Buy and sell orders are placed at fixed intervals within a defined price range. Each filled buy is automatically converted into a sell one grid level higher (and vice versa). Profits from oscillations without a directional signal. Dangerous in trending markets when price breaks out of the range.
Relevance Score 4/10
BTC perp has occasional ranging phases (several weeks), then strong moves. A grid could only be activated in ADX<20 phases and would have to be aggressively deactivated at trend onset. Conceivable as an add-on to Botty, but the risk-management overhead is high.

Entry

  • Define range [low, high] and number of grids N
  • Grid spacing d = (high - low) / N
  • Place N/2 buy orders below the current price, N/2 sell orders above it
  • When a buy executes: automatic sell at the next grid level (+d)

Exit

  • Manual exit decision when price leaves the range
  • Automatic 'exit all' when N% above/below the range (stop level)
  • Re-balancing when rolling over into a new range
NameTyp. valueDescription
range_low_high ±15-30% around current price Range boundaries
grid_count 10-40 Number of levels
profit_per_grid grid_distance × position_size Profit per filled pair

Pros

  • Profits in sideways markets where trend strategies lose
  • Fully mechanical
  • No signal timing needed
  • Constant 'yield' as long as price stays in range

Cons

  • Capital-inefficient — many orders tie up capital
  • Catastrophic loss when price breaks out of the range — the open long position keeps falling
  • Fees can eat up grid profits (maker rebates help)
  • No real alpha — makes money from volatility, not from edge
notes
No directly documented profitable Sharpe ratios; depends on the volatility regime. Can be stabilized with a hedge (perp short as tail protection).
annualized
~6-25% in a favorable volatility regime, can be strongly negative in strong trends
monthly return
0.5-3% in ideal ranging phases
Perfect for algorithms — but range selection is either manual or via an auxiliary model.

Core idea

A grid bot lays out a grid of buy and sell orders at regular price intervals. Every filled buy order automatically triggers a sell order one level higher; every filled sell order triggers a buy order one level lower. In an oscillating market, pairs are closed continuously, and each completed pair is a small profit.

Example

BTC range [90,000, 110,000], 10 grids, current price 100,000:

110,000 ───── Sell 5 (Grid 5)
108,000 ───── Sell 4
106,000 ───── Sell 3
104,000 ───── Sell 2
102,000 ───── Sell 1
100,000 ───── current
 98,000 ───── Buy 1
 96,000 ───── Buy 2
 94,000 ───── Buy 3
 92,000 ───── Buy 4
 90,000 ───── Buy 5

Price drops to 98,000 → Buy-1 fills → new sell order at 100,000. Price returns to 100,000 → Sell-1 fills → profit = 2,000 × grid size. New buy placed at 98,000. Cycle repeats.

When it works

  • Ranging market with lots of oscillation — ideal
  • Mild trend with lots of noise — works but suboptimally
  • Strong trend out of the range — catastrophic loss (open buys keep running deeper)

Real-world results

Vendors like Altrady, Pionex, Bitsgap typically report 0.5-2% monthly return in favorable ETH/USDT ranges with a 20% range spread and 20 grids. Annualized 6-25% in reality, because not every month is a ranging month.

Peer-reviewed research (Stevens Institute) shows: grid trading with additional hedging (e.g. a short perp proportional to the open net-long position) significantly stabilizes performance. Without a hedge, a grid bot is life-threatening in a bear market — it keeps buying into the falling market.

Typical mistakes

  1. Range too tight: the smallest breakout move takes the bot out of the range
  2. Too few grids: few levels = few profits
  3. No stop: once the range breaks, the bot must be actively shut down
  4. Ignoring fees: on venues with a 0.1% taker fee, the grid profit per pair can be completely eaten up

Relevance for Botty

Botty is primarily trend/breakout oriented. A grid would make sense as a complementary module in ranging phases (ADX < 20) — but the overhead costs (auto-detection, range selection, abort logic at trend onset) are high. Rather low priority for a first version.