> ## Documentation Index
> Fetch the complete documentation index at: https://finance.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Market Order

> Buy or sell an equity immediately at the best available price. The simplest order type — no price fields, just symbol, side, and quantity.

A **market order** executes immediately at the best price currently available. You are trading **speed and certainty of execution** for **price uncertainty** — you'll get filled, but you don't control the exact price. Use it when getting in or out *now* matters more than the precise fill price.

<Note>
  New to the Orders module? Read [Order Flow](/api-reference/orders/order-flow) first for the big picture — one endpoint, how the type is inferred, and how to listen for updates. This page assumes you've connected and authenticated.
</Note>

***

## When to use it

* You want to be filled right away and accept the prevailing price.
* The instrument is liquid (tight spread), so the market price is close to what you see.

Avoid market orders on illiquid or fast-moving names — a wide spread or a gap can fill you far from the last-traded price. In those cases use a [Limit order](/api-reference/orders/limit-order).

***

## How it works

1. You `POST /v1/orders` with `type: "MARKET"` and **no price fields**.
2. The order is accepted (`PENDING_NEW` → `NEW`) and routed immediately.
3. It fills — often instantly and in full, sometimes in pieces (`PARTIALLY_FILLED` → `FILLED`).
4. Each step arrives as an `account.order` event on the [Account WebSocket](/websockets/account-updates).

A `DAY` market order placed during regular hours essentially always fills the same session.

***

## Request

| Field       | Type   | Required | Description                                         |
| ----------- | ------ | -------- | --------------------------------------------------- |
| `type`      | string | yes      | Must be `"MARKET"`.                                 |
| `side`      | string | yes      | `BUY`, `SELL`, `SELL_SHORT`, or `BUY_TO_COVER`.     |
| `qty`       | string | yes      | Number of shares as a decimal string.               |
| `price`     | string | —        | **Do not send.** Market orders have no limit price. |
| `stopPrice` | string | —        | **Do not send.** Market orders have no trigger.     |

### Example — buy 100 shares of AAPL at market

```bash cURL theme={null}
curl -X POST https://api.aries.com/v1/orders \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "tradingAccountId": "ACC123456",
    "symbol": "AAPL",
    "side": "BUY",
    "type": "MARKET",
    "qty": "100",
    "timeInForce": "DAY"
  }'
```

```json Request body theme={null}
{
  "tradingAccountId": "ACC123456",
  "symbol": "AAPL",
  "side": "BUY",
  "type": "MARKET",
  "qty": "100",
  "timeInForce": "DAY"
}
```

<Info>
  That's the entire body. No `price`, no `stopPrice`. The absence of a `legs` array makes this an **equity** order.
</Info>

### Example — sell to close 50 shares

```json theme={null}
{
  "tradingAccountId": "ACC123456",
  "symbol": "TSLA",
  "side": "SELL",
  "type": "MARKET",
  "qty": "50",
  "timeInForce": "DAY"
}
```

***

## Response

```json theme={null}
{
  "success": true,
  "clOrdId": "CLIENT-001",
  "status": "NEW",
  "symbol": "AAPL",
  "side": "BUY",
  "qty": "100",
  "cumQty": "0",
  "leavesQty": "100",
  "avgPrice": "0",
  "transactTime": "2024-01-15T10:30:00Z"
}
```

Keep the `clOrdId` — it identifies this order in every WebSocket update and is what you pass as `origClOrdId` to cancel it.

***

## Watch it fill

A market order typically fills moments after acknowledgement. You'll see the fill as an `account.order` event with `ordStatus: "FILLED"` and a real `avgPrice`:

```json account.order event theme={null}
{
  "type": "event",
  "timestamp": "2024-01-15T10:30:01Z",
  "payload": {
    "topic": "account",
    "name": "account.order",
    "target": "account:ACC123456",
    "data": {
      "ordId": "ORD-12345",
      "clOrdId": "CLIENT-001",
      "accountId": "ACC123456",
      "symbol": "AAPL",
      "side": "BUY",
      "type": "MARKET",
      "timeInForce": "DAY",
      "qty": "100",
      "ordStatus": "FILLED",
      "cumQty": "100",
      "leavesQty": "0",
      "avgPrice": "150.45",
      "securityType": "EQUITY",
      "category": "EQUITY",
      "createdAt": "2024-01-15T10:30:00Z",
      "updatedAt": "2024-01-15T10:30:01Z"
    }
  }
}
```

For the subscribe handshake and the full event schema, see [Limit order → Listen for updates](/api-reference/orders/limit-order#listen-for-updates) or the complete [Account Updates WebSocket](/websockets/account-updates) reference.

***

## Common rejections

| `ordRejReason` / reason | Cause                                                                                            |
| ----------------------- | ------------------------------------------------------------------------------------------------ |
| `ORDER_EXCEEDS_LIMIT`   | Not enough buying power for the notional.                                                        |
| `UNKNOWN_SYMBOL`        | The `symbol` isn't recognized.                                                                   |
| `EXCHANGE_CLOSED`       | A `DAY` market order sent while the market is closed. Use a limit order or wait for the session. |
| `TOO_LATE_TO_ENTER`     | Order arrived after the cutoff for the session.                                                  |

***

## Next steps

<CardGroup cols={2}>
  <Card title="Limit order" icon="tag" href="/api-reference/orders/limit-order">
    Control your fill price instead of taking the market.
  </Card>

  <Card title="Stop order" icon="circle-stop" href="/api-reference/orders/stop-order">
    Trigger a market order only once a price level is hit.
  </Card>

  <Card title="Try it live" icon="play" href="/api-reference/orders/place-market-order">
    Interactive reference and full schema for `POST /v1/orders`.
  </Card>

  <Card title="Preview Order" icon="receipt" href="/api-reference/orders/preview-order">
    Estimate cost and buying-power impact before placing.
  </Card>
</CardGroup>
