Appearance
Personalize your experience
Quick Keys to Trade
ShortcutsUse keyboard keys B and S to place instant buy and sell orders from the chart.
Overview
Quick Keys let you place buy and sell orders using only your keyboard. Press B on your keyboard to place a buy order, or S to place a sell order, using the current settings for quantity and .
Key Map Reference
Two keyboard keys are mapped to trading actions. The mapping is hard-coded and cannot be customised through the settings UI:
Both keys are case-insensitive. The keydown event checks `event.key` against `"b"` and `"s"` after lowercasing. Modifier keys (Ctrl, Alt, Meta) are not explicitly blocked — if a browser or OS shortcut uses B or S, it takes precedence and the trade key is suppressed. The keys are not active when the user is typing in an input field (checked via `event.target`).
Execution Behaviour
When a key is pressed, the system follows a deterministic resolution chain to construct and submit the order. Here is the exact execution :
- 1Key press detectedA `keydown` event listener on the chart container fires. The handler checks if the key is B or S (case-insensitive) and if the event target is not an input/textarea element. If both conditions are met, `event.preventDefault()` is called to stop the character from being typed.
- 2Settings snapshotThe handler reads the current QuickTradeSettings snapshot from the context. This includes `orderType`, `quantity`, `leverage`, `timeInForce`, `reduceOnly`, `postOnly`, `tradeWithoutConfirmation`, `takeProfitEnabled`, `takeProfitPercent`, `stopLossEnabled`, and `stopLossPercent`. All values are read synchronously from React state, so the order always uses the latest settings.
- 3Price resolutionFor market orders, the reference price is determined: buy uses `bestAsk` (or current price fallback), sell uses `bestBid` (or current price fallback). For limit orders, the price comes from the input field in the bar (if Price Input is enabled). If Price Input is disabled in Limit , a dialog prompts for the price.
- 4Order construction`createOrder()` builds a `QuickTradeOrder` object with the side, price, quantity, , leverage, time-in-force, reduce-only flag, post-only flag, and calculated TP/SL prices (if enabled). Validation runs at this stage — invalid settings abort with a toast error.
- 5Order submissionIf validation passes and `tradeWithoutConfirmation` is true, the order is submitted directly via the exchange API callback. If confirmation is required, a modal dialog appears with the order preview for the user to review and before submission.
- 6FeedbackA toast notification summarises the result (success with order ID, or error with reason). If are enabled, a dashed order line appears on the chart at the placed price level, following the same lifecycle as click-placed orders.
Focus Requirements
Quick Keys only fire when the chart container has keyboard focus. This is enforced by attaching the `keydown` listener to the chart's DOM container element (via `chartContainerRef.current`), not to `document` or ``. Understanding the focus scope is essential for reliable key detection:
- Chart area focus — the chart container must be the focused element. Clicking anywhere on the chart canvas or any non-input overlay element gives the container focus. A indicator (e.g., focus ring) is typically not shown since the chart container is styled without an outline.
- Input field suppression — when the user is typing in an input field (quantity input, input, search bar), the handler checks `(event.target as HTMLElement).tagName` and skips processing if the target is `INPUT`, `TEXTAREA`, or `SELECT`. This prevents accidental trade placement while editing settings.
- Tab order — the chart container should be reachable via Tab navigation. If the browser tab order skips the chart, clicking the chart once establishes focus. The focus state persists until another element is clicked or Tab is pressed to move to the next focusable element.
- Iframe considerations — if the chart is rendered inside an iframe, the keydown event is scoped to the iframe document. The parent document cannot relay B/S key presses into the iframe. The chart must be focused within the iframe context.
- DevTools interference — opening browser DevTools and clicking the console removes focus from the chart. The keys will not work until the chart is clicked again. This is normal DOM focus behaviour.
Configuration Dependencies
The behaviour of Quick Keys is not determined by a single setting but by the combination of several interdependent settings:
Safety Notes
Quick Keys bypass the graphical order entry process. While fast, they introduce risk if settings are not properly configured beforehand:
- Accidental — pressing B or S while typing anywhere near the chart (e.g., in a search bar that loses focus) can an unintended order. Always verify that the chart does not have focus before typing B or S. The input field check mitigates this but does not eliminate the risk if the chart itself is focused.
- Quantity verification — the quantity used is whatever is currently set in the bar. If you previously set a quantity for a different trade and forgot to reset it, pressing B or S will use that large quantity. Always verify the quantity display before relying on Quick Keys.
- Market order slippage — in Limit , the price is controlled. In Market mode, the order at the current best available price. During high volatility, this can result in significant slippage. Consider keeping set to Limit when using Quick Keys in volatile conditions.
- Leverage exposure — the leverage setting is applied silently. A key press with 125x leverage and a quantity creates substantial position size. Review the leverage setting in Settings before using Quick Keys for high-leverage .
- TP/SL auto-attachment — if Take Profit or are enabled in settings, they are automatically attached to every order placed via Quick Keys. Ensure TP/SL percentages are correctly configured to avoid unwanted automatic exits.
Use Cases
- Rapid — a scalper watching the order book can press B to buy the moment liquidity appears at their level, then press S to sell seconds later for a profit. The keyboard is faster than clicking the B/S buttons in the bar, especially for -trip .
- Hands-on- — a trader who keeps one on the mouse for chart analysis and one on the keyboard can use Quick Keys without moving the mouse to the Quick Trade bar. This is particularly useful with for price selection and B/S for instant execution.
- Accessibility — traders with motor impairments or concerns may find keyboard-only order placement easier than precise mouse clicks on bar buttons. The B and S keys are large, easy to locate by , and require travel distance.
- Multi-monitor setups — on multi-monitor configurations, reaching the bar with the mouse can be a significant arm movement. Quick Keys let traders keep both hands on the keyboard and execute without reaching across screens.
Troubleshooting
- Keys not responding — verify that Quick Keys is enabled in Settings. Click the chart area to ensure it has keyboard focus. Check that no input field is active (e.g., search bar). Ensure the global "Keyboard Shortcuts Enabled" setting is on. Try pressing B or S after clicking directly on the chart canvas.
- Wrong side placed — if you press B and a sell order goes through, check that the B/S toggle in or the is not set to Sell. Quick Keys use the current default , not the Click to Order side toggle. The B key always places a buy and S always places a sell, regardless of the toggle state.
- Confirmation dialog appearing — this means is disabled. The dialog shows the order preview. You can either (Enter) or (Escape). To skip this step in , enable Trade Without Confirmation in Settings > Execution.
- Order — the rejection toast shows the reason (e.g., "Insufficient balance", "Invalid price", "Market closed"). Common causes: quantity exceeds available balance, is outside the allowed range, or the exchange is in maintenance .
- Nothing happens on key press — open the browser console and check for errors. Verify that the chart container is mounted and the Quick Keys `useEffect` has attached the listener. Check that no other Chrome is intercepting B or S key presses.
- Chrome conflicts — some browser extensions use B and S as shortcuts (e.g., Vimium, privacy extensions). Check your extension key bindings or disable extensions when trading. The system cannot intercept key presses that the browser or extensions consume first.
Related Settings
- 1.Trade Without Confirmation — Required for instant execution — otherwise a confirmation dialog appears on each key press
- 2.Default Order Mode — Determines market vs limit order on key press
- 3.Price Input — Controls whether the limit price field is available for limit orders placed via Quick Keys
- 4.Quantity (Default) — Sets the order size used when B or S is pressed
- 5.Keyboard Shortcuts (Global) — Master toggle for all keyboard shortcuts — must be enabled for Quick Keys to work
- 6.Chart Click to Order — Alternative chart-based order placement that works alongside Quick Keys
Related articles
Related to Quick Keys to Trade
- Bid / Ask Prices
Trading / Quick Trade / Display
Show clickable bid and ask price buttons in the Quick Trade bar for one-click limit orders.
- 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.
- 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.
- IDE Keyboard Shortcuts
Coding / IDE / Keyboard
Quatick IDE supports extensive keyboard shortcuts inspired by VS Code. Shortcuts are organized by area. On macOS, replace Ctrl with ⌘ and Alt with ⌥ where…
- 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.
- Quick Trade Overview
Trading / Quick Trade
Place orders with a single click from the chart — no tedious form-filling required.