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

# Trading

> Pick a market, choose a direction and size, read the preview, confirm. ryft handles the rest.

ryft handles which exchange — or exchanges — the order goes to, and moves your funds there.

<Steps>
  <Step title="Pick a market">
    `SOL-PERP`, `BTC-PERP`, or anything in the market list.
  </Step>

  <Step title="Choose a direction">
    **Long** profits if the price rises; **Short** if it falls.
  </Step>

  <Step title="Set your size and leverage" />

  <Step title="Read the preview">
    Expected fill, fee, routing, and ETA.
  </Step>

  <Step title="Confirm" />
</Steps>

## Read the preview before you confirm

The preview is read-only — nothing moves while you're looking at it.

<Frame caption="The order book and ticket in the terminal. Every level is tagged with the venue it came from, and the split-fill route updates as you change size.">
  <img src="https://mintcdn.com/ryft-5694ff9b/0UP8BldJg1umuLsB/images/terminal-book-route.png?fit=max&auto=format&n=0UP8BldJg1umuLsB&q=85&s=abf5b65cf4940a3bcdce1df1f6d27a84" alt="ryft trading terminal showing a venue-tagged consolidated order book alongside the order ticket with Long/Short, Market/Limit, leverage and a split-fill route summary" width="1148" height="1400" data-path="images/terminal-book-route.png" />
</Frame>

Two things worth pointing out in that panel. **Route via** compares the smart route against each
venue's own price, so you can see what routing is buying you. And every book level carries a
**source** tag — `HL`, `AST`, `PAC`, `PHO` — so a fill is never anonymous.

| What it tells you       | Why it matters                                            |
| ----------------------- | --------------------------------------------------------- |
| **Expected fill price** | What you'll actually pay, walking the book at your size   |
| **Fee**                 | The taker fee in USD, so the number you compare is all-in |
| **Effective price**     | Fill plus fee — the honest cost                           |
| **Route**               | Which venue, or the split across venues                   |
| **Warm or cold**        | Whether funds are already on that venue                   |
| **ETA**                 | How long until you're filled                              |
| **Bridge cost**         | If funds have to cross a chain, what that costs           |

If the size is bigger than the available depth, the preview says so rather than quoting a price it
can't fill.

## Warm and cold — why the first trade is slower

Your deposit sits in a Solana pool, and exchanges live on different chains. So the first time you
trade on a given venue, your funds have to get there.

* **Warm** — collateral is already on that venue. Fills immediately.
* **Cold** — funds move first. Seconds to about a minute.

| Venue           | Chain     | First trade | After that |
| --------------- | --------- | ----------- | ---------- |
| **Phoenix**     | Solana    | \~5s        | immediate  |
| **Pacifica**    | Solana    | \~8s        | immediate  |
| **Hyperliquid** | Arbitrum  | \~25s       | immediate  |
| **Aster**       | BNB Chain | \~57s       | immediate  |

<Note>
  **A cold trade that seems stuck usually isn't.** Bridging takes as long as it takes; the ETA in the
  preview is the honest estimate. If it exceeds that materially, the job reports an error rather than
  hanging silently. Cold trades run in the background — you can leave the panel.
</Note>

## How routing picks a venue

ryft builds a **consolidated order book** from every live venue and walks it by price to fill your
size as cheaply as possible. If the best fill is 3 on one exchange and 2 on another, the order
goes out as two legs.

The comparison is **fee-adjusted** — a venue with a better headline price but a worse taker fee can
lose, because what you pay is the all-in number.

If you tell ryft how long you plan to hold, routing also prices in the funding you'll pay or earn on
each venue over that period. For a multi-day hold that can outweigh the entry price difference
entirely — see [funding](/concepts/perps-explained#funding).

Routing only considers venues ryft can actually execute on. You can override it and force a specific
venue if you want.

## Market and limit orders

* **Market** — fills now, at the best available price across venues. Use when getting in matters more
  than the exact price.
* **Limit** — fills only at your price or better. Use when the price matters more than certainty of
  filling. It may not fill at all.

## Closing a position

Open the **Positions** panel and close from there. Like opening, closing runs as a background job.

Closing returns your collateral **on that venue** — it stays there, which keeps your next trade on
that venue instant. To bring it back to your Solana pool,
[**reclaim**](/guides/withdrawing) it; to take it off ryft entirely, reclaim then withdraw.

## What can go wrong

| You see                  | What it means                                   | What to do                                                       |
| ------------------------ | ----------------------------------------------- | ---------------------------------------------------------------- |
| "Insufficient depth"     | Your size is larger than the book can fill      | Reduce size, or split across two orders                          |
| Stuck at "executing"     | A cold start — funds are bridging               | Wait for the ETA; it resolves or reports an error                |
| "Not enough collateral"  | Position needs more margin than you've deployed | Fund more into the trade, or reduce size/leverage                |
| Fill worse than preview  | The book moved between preview and confirm      | Normal on fast markets — a preview is a quote, not a guarantee   |
| Failed after funds moved | The bridge landed but the order didn't          | Funds are on the venue, not lost — retry, or check the portfolio |

<Check>
  **Your money is never unaccounted for.** If a job reports `failed`, the error names the stage that
  failed. Funds are always in exactly one of three places: your pool, on a venue, or in a position.
</Check>

<Danger>
  **Risk.** Positions can be **liquidated** — closed automatically at a loss — if the market moves
  against you far enough. At 20× leverage that's roughly a 5% move. ryft shows your liquidation price
  on every open position. Know it before you open, not after.
</Danger>
