TWAP Orders
Time-Weighted Average Price orders for large trades.
Overview
TWAP (Time-Weighted Average Price) splits large orders into smaller chunks executed over time. This:
- Reduces price impact
- Gets better average execution
- Minimizes slippage on big trades
Supported Chains
TWAP orders are available on EVM chains only — Base, Robinhood Chain, Ethereum, Polygon, Unichain, Arbitrum, BNB Chain and World Chain.
Not available on Solana.
Basic TWAP
Split a large sell — or buy — over time:
"sell $1,000 of BNKR over the next 4 hours"
"TWAP sell $500 of DEGEN over 2 hours"
"buy $2,000 of ETH over the next 24 hours"
When to Use TWAP
TWAP is best for:
- Large positions relative to liquidity
- Tokens with thin order books
- Minimizing market impact
Example Scenario
You hold a large BNKR position and want to sell. A single swap might:
- Move the price significantly
- Get poor execution due to slippage
With TWAP:
"sell all my BNKR over 6 hours"
This executes smaller chunks every few minutes, getting better average price.
Configuration
Duration
How long to spread the execution:
"TWAP sell $500 of DEGEN over 1 hour"
"TWAP sell $5,000 of BNKR over 4 hours"
"TWAP sell $20,000 of DEGEN over 24 hours"
Chunk Size
The total is split into equal chunks, one per execution — at least 10 of them, no closer together than 3 minutes.
Managing TWAP Orders
View Active TWAPs
"show my TWAP orders"
"what automations do I have?"
Cancel TWAP
"cancel my TWAP order"
"cancel TWAP for BNKR"
Canceling stops future executions but doesn't reverse completed chunks.
Tips
Choose Appropriate Duration
- 1-2 hours: Medium positions, moderate liquidity
- 4-6 hours: Large positions
- 12-24 hours: Very large positions, patient execution
Monitor Progress
Check in periodically:
"how's my TWAP order doing?"
Limitations
- Not available on Solana
- Minimum $300 total order value
- You need the first chunk when you create the order, and the balance for each later chunk when it runs
- Gas needed for each chunk execution
- Cannot modify after creation (cancel and recreate)