slippage

Slippage - Complete API Reference

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "slippage" with this command: npx skills add alsk1992/cloddsbot/alsk1992-cloddsbot-slippage

Slippage - Complete API Reference

Estimate, minimize, and protect against slippage across all trading platforms.

Chat Commands

Estimate Slippage

/slippage estimate "Trump" YES 5000 Estimate for $5000 order /slippage BTCUSDT 1.5 BTC Estimate for futures /slippage ETH 50 --dex uniswap Estimate DEX slippage

Analyze Orderbook

/slippage depth "Trump" Show orderbook depth /slippage impact 10000 Price impact for size /slippage levels "Trump" Show slippage at sizes

Optimize Execution

/slippage optimize "Trump" YES 10000 Find best execution /slippage split 50000 Optimal order splitting /slippage timing "Trump" Best times for low slippage

Protection Settings

/slippage max 1% Set max slippage tolerance /slippage protect on Enable slippage protection /slippage revert-threshold 2% Cancel if slippage exceeds

TypeScript API Reference

Create Slippage Manager

import { createSlippageManager } from 'clodds/slippage';

const slippage = createSlippageManager({ // Default tolerance defaultMaxSlippage: 0.01, // 1%

// Protection enableProtection: true, revertThreshold: 0.02, // Cancel if > 2%

// Data sources orderbookDepth: 20, // Levels to analyze refreshInterval: 1000, // ms });

Estimate Slippage

const estimate = await slippage.estimate({ platform: 'polymarket', market: 'trump-win-2028', side: 'YES', size: 5000, });

console.log(Expected slippage: ${estimate.slippage}%); console.log(Price impact: ${estimate.priceImpact}%); console.log(Effective price: ${estimate.effectivePrice}); console.log(Best price: ${estimate.bestPrice}); console.log(Worst price: ${estimate.worstPrice}); console.log(Confidence: ${estimate.confidence}%);

Analyze Orderbook Depth

const depth = await slippage.analyzeDepth({ platform: 'polymarket', market: 'trump-win-2028', side: 'YES', });

console.log('Orderbook Depth:'); console.log( Liquidity at 0.5%: $${depth.liquidityAt05Pct}); console.log( Liquidity at 1%: $${depth.liquidityAt1Pct}); console.log( Liquidity at 2%: $${depth.liquidityAt2Pct}); console.log( Total depth: $${depth.totalDepth});

console.log('\nSlippage by Size:'); for (const level of depth.slippageLevels) { console.log( $${level.size}: ${level.slippage}% slippage); }

Price Impact Analysis

const impact = await slippage.priceImpact({ platform: 'polymarket', market: 'trump-win-2028', side: 'YES', sizes: [1000, 5000, 10000, 25000, 50000], });

console.log('Price Impact Analysis:'); for (const level of impact.levels) { console.log( $${level.size}:); console.log( Slippage: ${level.slippage}%); console.log( Impact: ${level.impact}%); console.log( Effective: ${level.effectivePrice}); }

Optimize Execution

const optimized = await slippage.optimize({ platform: 'polymarket', market: 'trump-win-2028', side: 'YES', size: 25000, maxSlippage: 0.01, });

console.log('Optimized Execution:'); console.log( Strategy: ${optimized.strategy}); // 'single' | 'split' | 'twap' console.log( Expected slippage: ${optimized.expectedSlippage}%); console.log( vs naive: ${optimized.naiveSlippage}%); console.log( Savings: $${optimized.savings});

if (optimized.strategy === 'split') { console.log('\nOrder Split:'); for (const order of optimized.orders) { console.log( ${order.size} @ ${order.limitPrice} (${order.delay}s delay)); } }

Order Splitting

const split = await slippage.splitOrder({ platform: 'polymarket', market: 'trump-win-2028', side: 'YES', totalSize: 50000, maxSlippagePerOrder: 0.005, // 0.5% max per order minOrderSize: 1000, });

console.log(Split into ${split.orders.length} orders:); for (const order of split.orders) { console.log( $${order.size} - expected ${order.expectedSlippage}%); } console.log(Total expected slippage: ${split.totalSlippage}%); console.log(Execution time: ${split.estimatedTime}s);

TWAP Execution

const twap = await slippage.twapSchedule({ platform: 'polymarket', market: 'trump-win-2028', side: 'YES', totalSize: 100000, duration: 3600, // 1 hour intervals: 12, // 12 orders });

console.log('TWAP Schedule:'); for (const order of twap.orders) { console.log( ${order.time}: $${order.size}); } console.log(Expected avg slippage: ${twap.expectedSlippage}%);

Best Timing Analysis

const timing = await slippage.analyzeTiming({ platform: 'polymarket', market: 'trump-win-2028', side: 'YES', size: 10000, });

console.log('Best Times for Low Slippage:'); for (const window of timing.bestWindows) { console.log( ${window.time}: avg ${window.avgSlippage}% slippage); console.log( Liquidity: $${window.avgLiquidity}); }

console.log('\nWorst Times:'); for (const window of timing.worstWindows) { console.log( ${window.time}: avg ${window.avgSlippage}% slippage); }

Slippage Protection

// Set protection parameters slippage.setProtection({ maxSlippage: 0.01, // 1% max revertThreshold: 0.02, // Cancel if > 2% notifyThreshold: 0.005, // Alert at 0.5% retryOnRevert: true, // Retry with lower size retryReductionPct: 50, // Reduce size by 50% });

// Execute with protection const result = await slippage.executeProtected({ platform: 'polymarket', market: 'trump-win-2028', side: 'YES', size: 10000, });

console.log(Executed: ${result.executed}); console.log(Actual slippage: ${result.actualSlippage}%); console.log(Protected: ${result.protected}); if (result.reverted) { console.log(Reverted: ${result.revertReason}); }

DEX Slippage (Crypto)

const dexSlippage = await slippage.estimateDex({ chain: 'ethereum', dex: 'uniswap', tokenIn: 'USDC', tokenOut: 'ETH', amountIn: 50000, });

console.log('DEX Slippage Estimate:'); console.log( Expected out: ${dexSlippage.expectedOut}); console.log( Min out (1% slip): ${dexSlippage.minOut1Pct}); console.log( Price impact: ${dexSlippage.priceImpact}%); console.log( Route: ${dexSlippage.route.join(' → ')});

Historical Slippage

const history = await slippage.getHistory({ platform: 'polymarket', period: '30d', });

console.log('Historical Slippage:'); console.log( Avg slippage: ${history.avgSlippage}%); console.log( Max slippage: ${history.maxSlippage}%); console.log( Trades with > 1%: ${history.tradesOver1Pct}); console.log( Total slippage cost: $${history.totalCost});

Slippage Factors

Factor Impact Mitigation

Order size Larger = more slip Split orders

Liquidity Thin = more slip Check depth first

Volatility High = more slip Use limit orders

Time of day Off-hours = more slip Trade peak hours

Market type New = more slip Avoid illiquid markets

Protection Modes

Mode Behavior

warn

Alert but execute

confirm

Require confirmation

block

Cancel if exceeds

retry

Retry with smaller size

Best Practices

  • Always estimate first — Check slippage before trading

  • Split large orders — Reduce impact on thin orderbooks

  • Use limit orders — Protect against unexpected slippage

  • Trade liquid markets — Higher volume = lower slippage

  • Monitor execution — Track actual vs expected slippage

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

binance-futures

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

trading-futures

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

tts

No summary provided by upstream source.

Repository SourceNeeds Review