Documentation
2. Placing Orders
- Created
- Aug 28, 2026
- Updated
- Sep 1, 2026
There are four ways to send a simulated order: the on-chart trading panel, the order ticket dialog, the chart's right-click Trade menu, and the price-scale + menu. They all feed the same engine and the same Account Manager.
The trading panel
Toggle the panel with the Trading panel toolbar button (the ⇄ icon beside the alerts bell) or ⌥P. It appears at the top-left of the active pane, under the symbol/OHLC line and above the indicator legend (so legend menus never cover it):
[ Sell 64,118.5 ] [ − 0.01 + ] [ Buy 64,120.0 ] [ ⚡ 1-click ]
2 ticks
- Sell shows the bid and Buy shows the ask when the provider exposes them (Binance, OKX, Kraken); otherwise both show the last price. The spread, in ticks, sits above the quantity.
- Quantity steps by the instrument's lot step with the
−/+buttons or by typing (commit withEnteror by leaving the field). The quantity is remembered per symbol, so switching between BTC and a stock brings back the size you last used for each. - Clicking Buy or Sell prepares a market order for the quantity shown. With the panel visible,
⇧Band⇧Sdo the same from the keyboard. What happens next depends on one-click trading (below): off, the prefilled order ticket opens; on, the order is placed immediately. - The ⚡ 1-click toggle at the right end switches one-click trading. While it is on, the toggle is lit amber, the panel border turns amber, and the Sell / Buy sides are filled solid red / green — a standing reminder that a click trades at once. Turning it on or off also shows a toast confirming the new mode.
- A badge in the corner flags feed quality: Delayed (Massive's delayed feed), Stale (a realtime feed has gone quiet: no live tick, and the latest bar is more than two bar intervals plus 30 seconds old), Replay (bar replay is running), or No realtime (CSV data outside replay, where the buttons are disabled).
If the instrument cannot be traded, the buttons are disabled and their tooltip says why.
One-click trading
One-click trading is a broker setting (⚡ on the panel, or Trading properties → One-click trading), off by default. It governs every trading surface drawn on the chart:
| Surface | One-click off (default) | One-click on |
|---|---|---|
Panel Buy / Sell, ⇧B / ⇧S | Opens the ticket prefilled as a market order | Places the market order immediately |
Right-click Buy / Sell at price, price-scale + items | Opens the ticket prefilled with the limit or stop | Places the order immediately |
| Line buttons, the right-click Close position, the Account Manager's Cancel / Close / Reverse, the position dialog | Ask first when Confirm orders is on | Act immediately |
Every surface applies the same rule through one shared policy: is the account tradable right now (not an archived record, not the live account while a replay runs), does the action need a confirmation (Confirm orders on and one-click off), and does a Buy / Sell go straight to the broker (one-click on) or into the prefilled ticket. The order ticket itself is unaffected: it is already an explicit step, and its Preview stage still follows Confirm orders. Every one-click order is validated exactly like any other (quantity, buying power, session, tradability) and shows the usual Order filled / Order rejected toast. A run of quick trades stacks several toasts; the Dismiss all pill beside the stack clears them together.
The order ticket
Open the ticket with Trade in the Account Manager header, with Create new order… in the chart's right-click menu (prefilled with the cursor price), or with the ✎ button / a double-click on an existing order line (which opens it in Modify mode). The ticket is organized top to bottom:
- Side — a Buy / Sell toggle showing the ask and bid.
- Type — tabs for Market, Limit, Stop, and Stop-limit.
- Quantity — with
−/+steppers on the lot step. - Limit price and Stop price — shown for the types that need them, with
−/+steppers that move one tick at a time. - Take profit and Stop loss — optional bracket rows. Each has a unit selector — Price, Ticks, %, or $ — and shows the resulting price and the P&L at that level as you type. See Positions, Brackets & Fills.
- Duration — GTC (default), DAY, GTT with a date and time, or IOC / FOK for limit and stop-limit orders.
- Order info — notional value, commission, buying power after the order, and the risk:reward ratio when both brackets are set.
The footer offers Preview when Confirm orders is on — it lists the order, its brackets, and the costs, plus any warnings — and then Place order. A preview is broker-authoritative, single-use, and valid for 60 seconds; it is bound to the selected account, exact validated order, settings/account revision, and executable quote. Changing any of those, waiting too long, or clicking twice requires a new preview. In Modify mode the type cannot be changed and the button reads Save changes.
Order types
| Type | Use it to | Fills |
|---|---|---|
| Market | Get in or out now | Immediately, at the ask (buy) or bid (sell) quoted when you place it, else the last price, plus slippage |
| Limit | Buy below or sell above the market | At the limit price once the market reaches it |
| Stop | Buy above or sell below the market (breakouts, stop-outs) | Triggers on the last price, then fills like a market order |
| Stop-limit | Trigger like a stop but cap the fill price | Becomes a working limit when the stop triggers |
A buy stop must sit above the market and a sell stop below it; the ticket rejects the reverse. A buy limit above the ask (or a sell limit below the bid) is marketable: it is accepted with a warning and fills immediately, exactly as TradingView's Paper Trading does.
Durations
| Duration | Meaning |
|---|---|
| GTC | Good till canceled — the default |
| DAY | Expires when the instrument's next trading day begins — the US Eastern calendar day for stocks and futures, the UTC day for crypto and forex. The day is stamped from the first price update the order sees, so a replayed order lives on the replayed day |
| GTT | Good till the date and time you choose |
| IOC / FOK | Limit and stop-limit only: resolve immediately against the executable placement quote (including bid/ask-only quotes) or cancel. Because simulated fills are never partial, the two behave the same |
Expired orders move to History with the status canceled and a journal entry.
The right-click Trade menu
Right-click anywhere on a chart and the menu gains a Trade group built around the price under your cursor:
- Buy … at market / Sell … at market — market orders for the remembered quantity.
- Buy limit @ price or Buy stop @ price, and Sell limit @ price or Sell stop @ price — a resting order at the cursor price. The type is chosen for you with TradingView's rule: a level on the near side of the market is a limit (buy below, sell above), a level on the far side is a stop.
- Create new order… — opens the ticket prefilled with the cursor price.
- Close … position — shown only when you hold a position in that symbol.
- Trading properties… — opens the paper-trading settings.
The price-scale + button that creates alerts also offers Buy limit and Sell limit at the hovered price when trading is enabled.
Validation and rejections
Orders are checked before they are accepted. Common reasons for a rejection, shown as a toast and recorded in the journal:
- Quantity below the minimum, above the maximum, or not a multiple of the lot step (the message suggests the nearest valid size).
- A buy stop below the market or a sell stop above it.
- A take profit or stop loss on the wrong side of the entry price.
- A GTT expiry in the past, or IOC / FOK on a market or stop order.
- Not enough buying power: there is no margin. Marked gross exposure from filled positions plus the incremental opening exposure of every working order must fit within equity. Buy and sell reservations are independent, and opening/reversing exposure is checked again at the actual fill price; reducing quantities do not bypass those checks by caller label.
- The instrument is not tradable — CSV data outside replay, or a symbol with no realtime feed.
- A second Close or Reverse while a closing order for that position is still working (waiting for a price): the first one is kept, the repeat is refused.
- Changing the quantity of a bracket order: a bracket always follows its position's size; only its level can be edited.
- A bracket row that is ticked but has no level: the ticket and the position dialog show Enter a level and disable the submit button instead of silently dropping the bracket.
Next steps
See what happens after an order fills.