Appearance
Personalize your experience
Bid / Ask Prices
DisplayShow clickable bid and ask price buttons in the Quick Trade bar for one-click limit orders.
Overview
When enabled and Limit is active, compact Bid and Ask price buttons appear in the bar. Clicking Bid places a buy limit order at the best bid price. Clicking Ask places a sell limit order at the best ask price.
How Prices Are Determined
The bid and ask prices displayed in these chips come directly from the exchange order book feed. The system subscribes to a real-time stream that pushes order book snapshots and deltas as they occur. Each update recalculates the best bid ( buy order price) and best ask (lowest sell order price) from the order book data.
- Order book structure — the exchange maintains a sorted list of buy orders () by price, and sell orders (asks) ascending by price. The best bid is the first entry in the bid side; the best ask is the first entry in the ask side.
- Real-time updates — price updates arrive via at variable frequency depending on market activity. In highly liquid markets like BTC/USDT, updates can arrive multiple times per second during high volatility. The price format helper (`formatPanelPrice`) formats values — prices >= 1 use `toFixed(2)`, sub-1 prices use `toPrecision(5)`.
- Fallback logic — if the order book stream has not yet delivered (e.g., during initial ), the system falls back to the current last traded price from the chart. This ensures the buttons always display a price, even before the order book is fully synced.
- Reference price — when placing a market order (non-limit ), the buy side uses the best ask (or current price fallback) and the sell side uses the best bid (or current price fallback). This aligns with standard exchange execution semantics where market buys take and market sells take bids.
Button States
The Bid and Ask chips have distinct and functional states depending on the current context:
Error States
Several error conditions can affect the Bid/Ask chips. Understanding these helps diagnose why prices may not appear or orders may not submit:
- Disconnected market — if the to the exchange drops, the last known prices remain displayed until a heartbeat timeout triggers a connection reset. During reconnection, prices may appear stale. The orders themselves will fail if submitted during a since they route through the same connection.
- Price unavailable — when the order book is empty or the symbol has no , both `bestBid` and `bestAsk` will be undefined or 0. The chips display `--`. Orders placed in this state use the chart current price as fallback, which may also be 0 if the chart has no .
- Stale — the system does not implement a staleness indicator on the chips themselves. If the feed stalls without disconnecting (e.g., exchange-side issue), prices stop updating without . A -reference with the chart's last price can help identify stalls.
- Validation failure — when clicking a chip in the bar, the `handlePlaceOrder` function checks if the is finite and positive. If not (e.g., NaN from empty input), a toast error "Enter a valid limit price" is shown and the order is not submitted.
Interaction with Price Input
The Bid/Ask chips and the controls share the same area of the bar and their is interdependent:
- Chips require Limit — quote chips are only rendered when `isLimitMode` is true. This is controlled by both the `showQuickTradeQuotes` setting and the `orderType` state. Switching to Market mode via the M/L toggle instantly hides both chips.
- coexistence — when both and Bid/Ask chips are enabled in Limit , the bar shows: `[B] [−] [1.000] [+] [S] [L] [42000] [Bid 42,000] [Ask 42,010]`. The chips appear after the price field, maintaining a logical left-to- : side selection → quantity → mode toggle → price → quick-fill chips.
- Chip click behaviour — clicking a chip calls `onOrder` directly with the chip price and `limit` as the override. It does not fill the field — it submits the order immediately. This is distinct from the Price Input interaction where clicking a chip the for manual review.
- Layout spillover — with all features enabled ( + Bid/Ask + default controls), the estimated calculation can reach up to 760px. On narrow chart areas, the bar may overflow or be truncated. The panel caps its width at `min(estimatedPanelWidth, calc(100vw - 16px))`.
One-Click Limit Order Flow
The Bid/Ask chips enable a streamlined limit order workflow. Here is the complete lifecycle from clicking a chip to order confirmation:
- 1Chip click detectedUser clicks the "Bid 42,000" or "Ask 42,010" chip. The `onClick` handler reads `bestBid` or `bestAsk` from the component props. If the price is 0 or undefined, it falls back to `currentPrice`.
- 2Order constructedThe `handlePlaceOrder` callback is invoked with the side (buy for Bid, sell for Ask), the chip price, the quantity from settings, and `"limit"` as the override. The system then calls the parent `onOrder` callback.
- 3ValidationIf the parent `onOrder` leads to `createOrder` in QuickTradeContext, the settings are validated (quantity > 0, leverage 1-125x, TP/SL percentages valid). Invalid settings abort the order and show a toast error.
- 4Execution & feedbackIf is enabled, the order is submitted directly to the exchange API. A success toast appears. If disabled, a confirmation dialog is shown with the price, quantity, and for review before submission.
- 5Chart visual feedbackIf are enabled, a dashed order line appears on the chart at the placed price. The line colour matches the side (green buy, red sell). The line shows the order status (pending → /) with -to-retry support for rejected orders.
Configuration Summary
Use Cases
- Passive limit entry — a trader places a buy limit at the best bid to add liquidity and earn maker rebates. Clicking "Bid 42,000" places a buy limit at the current bid, joining the order book passively.
- limit entry — a trader places a buy limit at the best ask to guarantee immediate (or near-immediate) fill while still getting the price control of a limit order. Clicking "Ask 42,010" after switching to Buy places a buy limit at the ask level, which typically instantly.
- the spread — a scalper alternates between Bid and Ask chips, buying at the bid and selling at the ask to capture the spread. The real-time price updates ensure they always trade at the current inside market.
- Quick price reference — even without placing orders, the chips serve as a persistent reference for the current spread, letting traders assess market liquidity at a glance without opening a separate order book .
Related Settings
- 1.Price Input — Must be enabled for Limit mode — the M/L toggle is required to activate chips
- 2.Default Order Mode — Setting Limit as default means chips are always visible on bar load
- 3.Panel Size — Larger sizes provide more horizontal space for the chip buttons
- 4.Click to Order — Alternative limit order placement via chart click — Bid/Ask chips are a bar-based alternative
- 5.Trade Without Confirmation — Skips the review dialog when placing orders via chip click
Related articles
Related to Bid / Ask Prices
- Chart Overlays
Trading / Quick Trade / Display
Chart Overlays BUY 42,000 Limit order SELL 41,980 Pending order ◀ Quick Order Line ◀ Quick Trade Line ↕ Drag to adjust
- Default Order Mode
Trading / Quick Trade / Display
Set whether the Quick Trade bar uses Market or Limit orders by default.
- Panel Size
Trading / Quick Trade / Display
B S S — 30px B S M — 34px B S L — 38px The bar grows uniformly — buttons, spacing, and hit areas scale proportionally
- Price Input
Trading / Quick Trade / Display
Show or hide the Market/Limit toggle and limit price field in the Quick Trade bar.
- Spread Timeline
Trading / Order Book / Views
Best bid, best ask, micro-price and spread over time, with prints — the touch as a time series.
- Buy / Sell Toggle Location
Trading / Quick Trade / Execution
Choose where the side selector appears when Click to Order is active.
- Chart Click to Order
Trading / Quick Trade / Execution
Click anywhere on the chart to place a limit order at the clicked price.
- Quick Keys to Trade
Trading / Quick Trade / Quick Keys
Use keyboard keys B and S to place instant buy and sell orders from the chart.
- Quick Trade Overview
Trading / Quick Trade
Place orders with a single click from the chart — no tedious form-filling required.