Go to article content Dydxtrade

Dydxtrade order types govern when perpetual orders can execute and which price constraints apply

Updated -

Dydxtrade order types control how perpetual orders on dYdX Chain become eligible for execution and match liquidity. Market and limit orders govern immediate execution and acceptable prices. Stop and take-profit variants add conditional activation. Expiry and execution policies further determine whether an order can rest, cancel its remainder, or require maker execution.

The trigger that activates an order differs from the price that permits a fill. An open instruction also differs from an open position. These distinctions explain why a triggered stop can remain unfilled and why a limit order can incur taker fees.

Order Amount and Position Exposure

An order's amount states the quantity to buy or sell, while its direction determines how that quantity affects existing exposure. A buy can add to a long or reduce a short; a sell can reduce a long or add to a short. The requested amount describes a change when fills occur, not the resulting position size. Exit instructions therefore involve separate quantities: the requested closing amount and the position's remaining size. Reduce-Only restricts fills to reducing existing exposure and prevents an oversized exit from reversing the position.

Market Orders and TWAP Execution

Market orders seek immediate execution against the prices and quantities available on the opposite side of the order book. Buying consumes available asks, while selling consumes available bids. The displayed price does not establish the execution price for the entire requested amount. Larger orders may need liquidity across several price levels, so their fills can have different prices. At protocol level, the v9.0 documentation also describes time-weighted average price (TWAP) orders, which schedule executions at intervals at the current market price.

The default frontend submits ordinary market orders as Immediate-or-Cancel instructions. Any available immediate fill changes the position; the unfilled remainder cancels without resting on the book. Partial execution therefore represents a smaller position change than the requested amount. Market orders also support closing positions, subject to the same distinction between requested size and completed fills. In the documented frontend, Close Position enables Reduce-Only on market exits. Other market and limit orders leave it off by default; with Reduce-Only enabled, the frontend rejects an order that would increase or reverse exposure.

What Does a Limit Price Control?

A buy limit order can fill only at its limit price or lower. A sell limit order requires its limit price or higher. These boundaries apply to execution prices, including when an order immediately matches existing liquidity. A limit that crosses available orders can execute immediately, so choosing Limit alone does not establish maker treatment.

A resting limit order waits for matching liquidity within its permitted price boundary. Merely touching the limit on a price chart does not establish a completed trade for the full amount. The book must contain enough matching interest, and the order must remain valid. A time-in-force policy determines whether any unfilled quantity can continue waiting.

Stop Orders and Adverse Price Moves

Stop orders connect an adverse price condition to an intended closing instruction for an existing perpetual position. Their market and limit variants differ in the execution constraint that applies after activation. The documented frontend leaves Reduce-Only off by default for stop and take-profit orders. With Reduce-Only enabled, an oversized conditional order resizes to the remaining position when it triggers.

Stop Market Execution

A stop market order seeks market execution when its trigger condition activates. A protective sell stop for a long responds to a downward threshold; a protective buy stop for a short responds to an upward threshold. Available liquidity determines executable prices after activation, within the order's applicable slippage limit. The trigger therefore cannot establish the exact price of the closing trade. Only the quantity that actually fills changes the position, so activation alone does not establish a complete exit.

Stop Limit Execution

A stop limit order adds an execution-price boundary to its trigger. After activation, the resulting limit instruction can match immediately or rest when its policy permits. A sell stop limit retains its minimum sale price; a buy stop limit retains its maximum purchase price.

A rapid adverse move can leave the triggered order without a permitted match. Its price restriction continues to apply, and any unclosed portion of the position remains exposed.


Take-Profit Orders and Favorable Price Moves

Take-profit orders activate an intended closing instruction after a favorable market move for an existing position. They share the market-versus-limit execution distinction that stop orders use. Their trigger direction reflects the intended profit-taking exit.

Long-Position Exits

A long position's take-profit sell uses a trigger above the current market price. The market version then seeks available bids. The limit version also requires its sell limit or a higher execution price. A rising trigger identifies a profit-taking condition without fixing the final exit price.

Short-Position Exits

A short position's take-profit buy uses a trigger below the current market price. Market execution seeks available asks, while limit execution accepts only its buy limit or lower. The buy direction reduces short exposure when that closing quantity fills.

Take-profit limit orders can change from Untriggered to Open before any fill occurs. Trading fees and funding payments also affect realized profit. A favorable trigger does not establish the final profit from a position.

Diagram: Dydxtrade order types: Take-Profit Orders and Favorable Price Moves

View full-size image


Which Price Can Activate a Conditional Order?

The oracle price or the clamped minimum and maximum trade prices from a confirmed block can activate a conditional order. The protocol clamps the traded-price trigger signal within bounds around the oracle price. This limits the effect of a traded price that diverges sharply from the oracle. An outlying raw trade can therefore differ from the signal that the conditional-order mechanism actually evaluates.

Trigger direction also depends on the combination of order side and conditional type. A protective sell stop responds to a downward threshold, while a take-profit sell responds to an upward threshold. The Sell setting describes the trade direction; it does not alone describe the condition that activates that trade.


Expiry and Immediate-or-Cancel Policies

Time-in-force settings determine how long an instruction remains eligible and whether unfilled quantity can stay on the book.

Good-Til-Date Expiry

Good-Til-Date lets an eligible limit order remain open until its specified expiry. The documented v4 frontend default for ordinary limit orders is 28 days, with an editable expiry. That setting limits the life of the unfilled instruction. It does not close a position that earlier fills have already created.

Stop market and take-profit market orders also have an editable Good Til Time for their conditional instructions. That expiry does not turn market execution into a resting Good-Til-Date limit order. The time allowed for activation and the execution behavior after activation describe different properties.

Immediate-or-Cancel Remainders

An ordinary limit order with Immediate-or-Cancel retains its price boundary while allowing no resting remainder. It can fill partly and cancel the balance. A partial fill remains a completed trade for that quantity; canceling the remainder does not reverse it. Immediate-or-Cancel therefore differs from requiring the entire amount to fill. The frontend's April 23, 2026 Reduce Only Order instructions restrict Reduce-Only to Immediate-or-Cancel execution, excluding resting Good Til Time orders.

Post-Only Execution and Trading Fees

Post-Only requires an order to join the book as maker liquidity or cancel if any part would immediately match. This execution policy prevents an immediately marketable limit order from taking liquidity. It also means that an otherwise acceptable price can lead to cancellation instead of placement. A canceled Post-Only instruction does not leave a new resting order.

Maker treatment selects the applicable maker fee; it does not establish a universal fee percentage or free execution. The Portfolio Fees section displays the schedule and account tier. The default taker schedule uses trailing 30-day USD trading volume across perpetual order books. Governance can adjust fee settings, so an order's execution policy and its applicable fee rate remain separate inputs.


Stateful Orders and Account Capacity

Stateful open-order allowances depend on the net collateral of the subaccount that owns those orders. Long-term and conditional orders fall within this equity-tier framework. The applicable configuration determines how many such instructions can remain open across its markets. Governance can change the tiers, and a wallet's total balance does not replace the relevant subaccount's net collateral.

Dydxtrade order types - Stateful Orders and Account Capacity - illustration

View full-size image

Short-term frontend market orders and ordinary Immediate-or-Cancel limit orders do not share that stateful equity-tier restriction. They still face the collateral requirements that apply to their trades. Opening or increasing exposure requires sufficient initial margin for the selected market. Margin modes also determine which collateral backs a position; an order-type selection does not replace that allocation.

Block rate limits constrain placement activity separately from open-order capacity. Subaccounts under the same account share those block limits. An account can face several active block-window conditions, and an attempt must satisfy all applicable conditions. A remaining open-order allowance therefore does not by itself establish that another placement will pass the rate check.

Open Orders, Filled Orders, and Remaining Exposure

Open Orders identifies placed limit instructions that have not completed execution, while Filled Orders records completed fills. Conditional activation and filling describe different events. A take-profit limit that has become Open still needs a permitted match. The positions panel reports the exposure that fills actually created or changed.

Canceling an outstanding instruction removes its remaining opportunity to execute without reversing completed fills. Partial fills can therefore coexist with an unfilled or canceled remainder. The requested order amount, accumulated filled quantity, and current position size answer different questions. Position exposure remains the relevant quantity when assessing how much an exit has actually closed.

Which Settings Fit the Intended Order?

An exit order fits its purpose when its trigger direction, execution rule, and amount match the existing position.

  • For an adverse-price exit, match the stop direction to the existing long or short.
  • For a favorable-price exit, use the corresponding take-profit trigger direction.
  • If a fixed price boundary must remain, select limit execution.
  • If no unfilled amount should rest, use an eligible Immediate-or-Cancel instruction.
  • If execution must add maker liquidity, apply Post-Only where the order supports it.

A triggered sell stop limit with no bid at or above its limit has no permitted match. Its trigger has activated, while its limit still prevents execution. As long as no eligible bid exists, that order cannot complete the intended exit.

What readers ask about Dydxtrade order types

Can I Keep Several Stop Orders for the Same Perpetual Position?

dYdX Chain supports multiple stop orders for a given position. Each instruction has its own amount, trigger, and execution settings. The applicable subaccount equity tier still limits how many stateful orders can remain open, so support for multiple stops does not establish an unlimited order allowance.

Does Canceling an Unfilled Order Incur a Trading Fee?

The default dYdX Chain fee rules do not charge a trading fee for canceling an unfilled order. Trading fees apply to filled quantities. If an instruction partly fills before cancellation, its completed trades retain their applicable execution fees. Canceling the remainder does not undo those fills or their effect on the position. Governance can change fee settings.

Do Failed Stateful Order Attempts Consume the Block Rate Allowance?

The active stateful placement rate limit counts both successful and failed attempts. A failed placement therefore can consume attempt capacity even though it adds no open order. Equity-tier capacity and placement-rate capacity measure different events: one concerns outstanding instructions, while the other concerns placement attempts within the configured block windows.

Are Price Tick Size and Order Step Size Interchangeable?

Tick size constrains price increments, while step size constrains order-amount increments. A market also has its own minimum order size. These requirements concern different input fields, so satisfying a price increment does not establish that the requested amount is valid. The selected market's details determine the applicable increments and minimum size; they are not universal across perpetual markets.

Why Can an Isolated Conditional Order Fail Despite Funds Elsewhere in the Account?

The equity-tier check applies to the isolated position's own supporting collateral. Under the documented v4 setting, a long-term or conditional isolated order needs at least 20 USDC of margin backing that position. A balance elsewhere does not by itself satisfy that requirement. Governance can change equity tiers, so the operative threshold belongs to the applicable isolated-subaccount configuration.

Which Order Actions Remain Available in Frontend close-only Mode?

Close-only mode permits canceling existing orders and submitting reduce-only orders that reduce or close existing positions. It prevents opening or increasing positions. For geolocation enforcement, seven consecutive days in close-only mode move the wallet to Blocked status. That later state prevents trading and withdrawals through the frontend, so the close-only permissions do not remain available indefinitely.