> For the complete documentation index, see [llms.txt](https://docs.alienbase.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.alienbase.xyz/trading/dca-orders.md).

# DCA Orders

A DCA (Dollar-Cost-Average) order splits a single buy or sell into many smaller trades executed at regular intervals. It's the simplest way to enter or exit a large position without timing the market and without taking the price impact in one shot — and with the Epsilon Router upgrade it gained **trigger prices** and **stop-loss protection**.

> *Last updated: July 6, 2026.*

![DCA order](/files/teUlNkULFsyWeuOTqAqp)

## Creating a DCA

1. Open [app.alienbase.xyz/swap](https://app.alienbase.xyz/swap), pick the pair.
2. Order form → **Pro** → **DCA**.
3. **Total to sell** — the full amount to be split (25% / 50% / Max shortcuts available).
4. **Finishes in** — the total duration (default **1 week**).
5. **Sells every** — the interval between chunks (default **1 hour**). Duration ÷ interval = number of trades.
6. (Optional) **+ Trigger price** — the DCA stays dormant until the market reaches this price, then starts executing.
7. Set slippage (default 0.5%) and confirm.

The order rests on-chain in the [Epsilon Router](/trading/epsilon.md#the-epsilon-router). At each interval the **Matcher** executes one chunk, routed through whichever venue gives the best price at that moment. Track progress in the **Active DCAs** tab of the positions panel: chunks completed, amount sold, average fill price, amount received, and countdown to the next order.

![Active DCAs tab — a running DCA with progress and next-order countdown](/files/oEqI1pGuyuvzUgt25AQO)

## Triggered & Short-circuit DCA

When using a trigger price, DCA orders act as gradual stop loss/take profit orders: they are only executed when the price reaches your pre-defined trigger. Through the "Keep Selling" setting you can also finetune its behavior: by default, DCAs are **short-circuiting** and will continue the full trade schedule as soon as the trigger is hit just once. By flipping the setting, you can ensure that each individual order is only executed if the trigger is currently active. This can be great to set up sturdy stop loss orders that do not get filled prematurely on wicks.

## When to use a DCA

* You're entering or exiting a large position and don't want to move the market in one trade.
* You're nervous about timing — DCA averages your entry across many ticks.
* You want "buy the breakout, slowly": set a trigger price above market and let the DCA start only if the level is claimed.

## When *not* to use a DCA

* You've decided this is the price you want — use a [Limit order](/trading/limit-orders.md) instead.
* You expect a binary event (catalyst, unlock) — DCA's averaging works against you here.
* You want to protect gains on an existing position — use a [Trailing Stop](/trading/trailing-stop.md).

## Fees

DCA fees are charged per executed chunk, tiered by asset class, plus a flat **0.05% Protocol execution fee** per fill (full table on [Fees](/reference/fees.md)):

| Order type                  | Stables | Blue chips | Everything else |
| --------------------------- | ------- | ---------- | --------------- |
| **DCA chunk**               | 0.01%   | 0.10%      | 0.20%           |
| **DCA stop-loss execution** | 0.10%   | 0.20%      | 0.45%           |
| *+ Protocol fee*            | *0.05%* | *0.05%*    | *0.05%*         |

Plus the underlying pool fee on whichever venue the chunk routes through, and gas for the initial approval step (placing orders is gasless, and execution gas is handled by the Matcher).

## See also

* [Limit, Take Profit & Stop Loss](/trading/limit-orders.md) — precise-price entries and exits.
* [Trailing Stop](/trading/trailing-stop.md) — price-based selling instead of time-based.
* [Epsilon](/trading/epsilon.md) — the router + matcher underneath.
* [Fees](/reference/fees.md)
