Skip to content

The Grid bot card: PnL and fills

The card is the main screen of a running bot: it shows its status, the grid parameters, the profit and the control buttons. The data in it is refreshed every time you open it and with the 🔄 Refresh button.

Where it is in the bot

Main menu → 🪜 Grid Bots → tap a bot in the list. If there are no bots yet, the bot writes: “You don't have any Grid bots yet. … Press 'Create Grid Bot' to begin.” A summary of all bots at once (Signal, DCA, Grid) is in the 📊 My Bots (Overview) section, see The unified My Bots overview.

What the card shows

The first line is the bot name and the status, for example “BTC grid — Active”. Then:

LineWhat it means
“📈 Symbol: BTCUSDT”the trading pair
“📐 Direction: Long”Long / Short / Neutral
“📏 Mode: Arithmetic”or Geometric
“📊 Range: 60000 — 66000”for an Infinity Grid there is “∞” instead of the upper bound
“📊 Levels: 11”for Infinity — “📊 Levels created: 31, top @ $72000”
“💰 Investment: 110 USDT”the amount per level × the number of levels
“⚡ Leverage: 2x | CROSS”the leverage and the margin type; on spot — 1x
“🎯 Active window: 10 levels (two-layer buffer)”only if the window is set
“⚠️ Liquidation (estimate): ~$55000 (-8%)”on futures only, with leverage above 1
“💵 Realized P&L: 1.20 USDT”the profit of closed level cycles
“📈 Unrealized P&L: -0.40 USDT”the floating result of the open position; on futures it is refreshed every 60 seconds
“💸 Funding: -0.05 USDT”futures; refreshed every 30 minutes, shown when it is not zero
“🔄 Fills: Buy 12 / Sell 10”how many buy and sell orders were filled

Realized P&L grows with every closed cycle: the sum of the profits from the notifications “💰 … SELL filled at price … Profit: +X USDT” equals the Realized P&L in the card. If you closed the position by hand on the exchange, the bot does not count that result in Realized P&L.

Fills are the fill counters. In a Long grid every pair “buy → sell” is one closed cycle, so the difference Buy − Sell roughly shows how many levels currently hold a position and wait for the sell.

Statuses

StatusMeaning
Creatednot started yet
Waiting triggerwaiting for the activation price, there are no orders
Activatingthe orders are being placed
Activeworking
Paused / Soft pausedthe orders stay, new ones are not placed
Hard pausedall orders are removed
Out of range (above) / Out of range (below)waiting for the price to come back, see Protections
Lockedstopped by an administrator
Closing / Closedthe work is finishing
Errorneeds attention

Buttons

The set of buttons depends on the status:

  • running: ⏸️ Pause, ⏸️⏸️ Hard pause;
  • in any pause: ▶️ Resume; in the status “Waiting trigger”: 🎯 Activate now;
  • while the bot is not closed: ⏹️ Stop, 💼 Stop (keep orders), 🚫 Cancel orders only, 🎯 Change active window;
  • “Active” and the soft pauses: 📐 Change boundaries, 🔢 Change density, 💵 Change order size, 🔄 Recreate grid (not for an Infinity Grid);
  • “Out of range (above)” and “Out of range (below)”: out of the editing buttons only 🔄 Recreate grid, and there is no ▶️ Resume button;
  • always: 🔔 Notifications: Realtime (switches the mode) and 🔄 Refresh.

What each button does is described in Pause and stop and Editing a running bot.

Example with a calculation

A Long grid 60,000 — 66,000, 11 levels of 10 USDT, a step of 600 USDT (1 % of the lower bound). Over a day the card shows “🔄 Fills: Buy 12 / Sell 10” and “💵 Realized P&L: 0.85 USDT”.

  • There are 10 closed cycles (as many as the sells). Every cycle gives about 0.10 USDT before fees, that is up to 1 USDT a day; the fees on the buy and the sell for your keys brought the result down to 0.85 USDT — and it is exactly this figure, after fees, that Realized P&L shows.
  • Buy − Sell = 2: two levels are bought and wait for the sell; their result is in “📈 Unrealized P&L”.
  • The daily summary in the notification bot shows the same result: “📊 BTC grid (BTCUSDT) Daily summary: … trades, Day PnL: 0.85 USDT”.

Exporting the history

The command /export_grid_history <gridBotId> sends a CSV file with the level history: “📊 Grid bot #12 levels history. CSV file (Excel-compatible).” The errors: “ℹ️ Usage: /export_grid_history <gridBotId>”, “❌ ID must be a number.”, “❌ Grid bot with this ID was not found or belongs to another user.” This is a convenient way to reconcile Realized P&L with the trade history on Bybit for this pair once a day (the difference is fees and funding).