# Placing Orders

## Trading Modes

**Personal**: Trade with your own balance **Vault**: Trade with investor capital

All orders execute on Hyperliquid L1.

## Prerequisites

* Connected wallet
* Authorized agent wallet
* Builder fee approval
* USDC balance (wallet or vault)

## Order Types

### Market Order

Executes immediately at best available price. Unfilled portions are canceled.

**Use for**: Guaranteed execution, speed over price precision

### Limit Order

Executes only at specified price or better. Remains active until filled or canceled.

**Use for**: Price control, waiting for favorable price

### Post-Only Order

Only executes if it would add liquidity to the order book. Rejected if it would take liquidity.

**Use for**: Earning maker rebates, avoiding taker fees

## Personal Trading

### 1. Select Asset

Click asset selector and choose your trading pair (BTC, ETH, SOL, etc.)

### 2. Configure Order

1. Select **Order Type** (Market/Limit/Post-Only)
2. Select **Side** (Buy/Sell)
3. Enter **Size**
4. Set **Price** (for limit and post-only orders)
5. Toggle **Reduce Only** (if closing position)

### 3. Submit

1. Review details
2. Check margin requirements
3. Click **Submit Order**

Agent signs and sends to Hyperliquid automatically.

### 4. Monitor

View order status in **Orders** tab:

| State     | Meaning                     |
| --------- | --------------------------- |
| Submitted | Sent to exchange            |
| Resting   | Active, waiting for fill    |
| Filled    | Completely executed         |
| Canceled  | Manually or system canceled |

## Vault Trading

Additional safety checks apply.

### 1. Select Vault

1. Toggle **Vault Mode**
2. Select vault from dropdown
3. Verify status is **ACTIVE**

### 2. Pre-Trade Checks

Automatic verification before each trade:

* Vault not paused
* Vault not closed
* Deal deadline not passed
* Sufficient balance
* Balance data is current

Order rejected if any check fails.

### 3. Submit Order

Same as personal trading. Orders use up to 80% of vault balance (20% reserve for safety).

## Reduce-Only Orders

**Purpose**: Close position without opening new one

**Behavior**:

* Only executes if reducing existing position
* Rejected if no position exists
* Cannot increase position size

## Modifying Orders

Resting limit orders can be modified:

1. Find order in **Orders** tab
2. Click **Modify**
3. Change price or size
4. Submit

**Note**: This cancels original order and places new one.

## Canceling Orders

1. Find order in **Orders** tab
2. Click **Cancel**
3. Confirm

Cancellations are free.

## Fees

Orders are subject to Hyperliquid exchange fees plus minimal platform fees.

**Maker** (adding liquidity): May receive rebate **Taker** (taking liquidity): Standard fee

## Troubleshooting

| Issue                | Solution                                         |
| -------------------- | ------------------------------------------------ |
| Insufficient balance | Deposit USDC (personal) or reduce size (vault)   |
| Vault paused         | Risk limits breached, positions closed           |
| Order rejected       | Check vault status, balance, agent authorization |
| Size too large       | Reduce order size, check position limits         |

## Best Practices

**Risk management**:

* Start with small sizes
* Use limit orders for price control
* Use reduce-only for closing positions

**Vault trading**:

* Monitor drawdown limits
* Keep safety buffer (don't use full balance)
* Check status before large trades

**Order types**:

* Market for urgency
* Limit for precision
* Post-Only for providing liquidity

## Next Steps

* [Position Management](/trading/position-management.md)
* [Risk Controls](/trading/risk-controls.md)
* [Agent Wallets](/trading/agent-wallets.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.atract.app/trading/placing-orders.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
