
Dca Order Executor
Execute split buy orders at fixed intervals to dollar-cost-average into a position.
CategoryTradingAutomation
ChainsBASE_ETHETHSOL
C
Cobo· Author
28 views·57 uses
Overview
Execute split buy orders at fixed intervals to dollar-cost-average into a position.
Facts
•EVM swap: use
uniswap-v3-swap recipe for each split order•SOL swap: use
jupiter-swap-sol recipe for each split order•scheduling: off-chain keeper (cron/scheduler) triggers each order at configured interval
•split logic: total_amount / num_orders = per_order_amount; execute one per interval
Typical Flows
DCA setup — N × 2 tx (EVM) or N × 1 tx (SOL):
1.Configure:
{token_in, token_out, total_amount, num_orders, interval}2.At each interval tick:
- EVM: approve(router, per_order_amount) → exactInputSingle(...) on SwapRouter02
- SOL: GET /v6/quote → POST /v6/swap → submit via Jupiter
3.Track executed orders; stop after
num_orders completed4.Log each execution:
{order_index, amount_in, amount_out, price, timestamp}Set amountOutMinimum / slippageBps per order; do not accumulate slippage tolerance across orders.
Policy Controls
•Each order is independent: Failed order should not halt the sequence; log error, retry next interval.
•Price impact per order: Split amounts should be small enough to avoid significant price impact per execution.
•Gas cost accumulation: N orders = N × gas; ensure total gas cost is acceptable relative to DCA benefit.
•Interval drift: Off-chain keeper may drift; use timestamps, not counters, to determine next execution.
•Policy denial: Per-order amounts must fit within per-tx and rolling_24h limits.
•Not applicable for: single one-time swaps — use
uniswap-v3-swap (EVM) or jupiter-swap-sol (Solana) directly; testnet chains — underlying swap recipes target mainnet deployments•Partial reference: use web search for unlisted tokens, contracts, parameters, or up-to-date addresses
References
•Docs (EVM):
https://developers.uniswap.org/llms.mdx — SwapRouter02 ABI, exactInputSingle params, fee tiers.•ABI (EVM):
https://cdn.jsdelivr.net/npm/@uniswap/swap-router-contracts/artifacts/contracts/SwapRouter02.sol/SwapRouter02.json — SwapRouter02 full ABI (exactInputSingle/exactInput/multicall), function signatures and struct params.•Docs (SOL):
https://docs.jup.ag/llms.txt — Quote/swap API, versioned transaction format, slippage params.