Skip to main content سوق المهارات اكتشف واستكشف مهارات الذكاء الاصطناعي التي بناها المجتمع.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
نسخ Promptعرض تفاصيل Prompt يتجاوز الأمر المباشر Prompt المخصّص للمراجعة. افحص المصدر قبل تشغيله.
npx skills add https://github.com/shreed27/DAIN --skill arbitrageيبقى الأمر في سطر واحد. مرّر أفقيًا لمراجعته كاملًا قبل النسخ.
تفضّل نسخة محلية؟ نزّل الملفات المتاحة حاليًا لدى SkillsMP.
تحميل Zip جاري التحميل... المهن ذات الصلة SOC
استنادا إلى تصنيف SOC المهني
name arbitrage description Automated cross-platform arbitrage detection and monitoring emoji ⚖️ gates {"envs":{"anyOf":["POLY_API_KEY","KALSHI_API_KEY"]}}
Arbitrage Service - Complete API Reference
Automated detection and monitoring of arbitrage opportunities across prediction market platforms.
Supported Platforms
Polymarket
Kalshi
Manifold
Metaculus
PredictIt
Drift
Betfair
Smarkets
Chat Commands
Monitoring Control
/arb start # Start arbitrage monitoring
/arb stop # Stop monitoring
/arb status # Check monitoring status
/arb config --interval 60 # Set check interval (seconds)
Manual Scanning
/arb check # Run one-time scan
/arb check "election" # Scan with keyword
/arb check --platforms poly,kalshi # Specific platforms
Market Comparison
/arb compare <market-a> <market-b> # Compare two specific markets
/arb compare poly:12345 kalshi:TRUMP # By platform:id
View Opportunities
/arb opportunities # List current opportunities
/arb opportunities --min-spread 2 # Min 2% spread
/arb opportunities --format table # Table format
/arb opportunities --format detailed # Detailed view
Market Linking /arb link <market-a> <market-b> # Manually link markets
/arb unlink <market-a> <market-b> # Remove link
/arb links # View all links
/arb auto-match # Auto-detect matches
Statistics /arb stats # Arbitrage statistics
/arb stats --period 7d # Last 7 days
/arb history # Historical opportunities
TypeScript API Reference
Create Arbitrage Service import { createArbitrageService } from 'clodds/arbitrage' ;
const arbService = createArbitrageService ({
platforms : ['polymarket' , 'kalshi' , 'manifold' , 'betfair' ],
checkIntervalMs : 30000 ,
minSpread : 0.5 ,
minLiquidity : 100 ,
polymarket : { apiKey, apiSecret, passphrase },
kalshi : { apiKey },
});
Start/Stop Monitoring
await arbService.start ();
arbService.on ('arbitrage' , (opp ) => {
console .log (`⚖️ Arbitrage found!` );
console .log (` ${opp.marketA.platform} : ${opp.marketA.price} ` );
console .log (` ${opp.marketB.platform} : ${opp.marketB.price} ` );
console .log (` Spread: ${opp.spread.toFixed(2 )} %` );
});
arbService.on ('arbitrageExpired' , (opp ) => {
console .log (`Arbitrage expired: ${opp.id} ` );
});
const isRunning = arbService.isRunning ();
await arbService.stop ();
One-Time Check
const opportunities = await arbService.checkArbitrage ({
query : 'trump' ,
platforms : ['polymarket' , 'kalshi' ],
minSpread : 1 ,
});
for (const opp of opportunities) {
console .log (`${opp.question} ` );
console .log (` Buy on ${opp.buyPlatform} @ ${opp.buyPrice} ` );
console .log (` Sell on ${opp.sellPlatform} @ ${opp.sellPrice} ` );
console .log (` Spread: ${opp.spread.toFixed(2 )} %` );
}
Compare Specific Markets
const comparison = await arbService.compareMarkets (
{ platform : 'polymarket' , id : 'market-123' },
{ platform : 'kalshi' , id : 'TRUMP-WIN' }
);
if (comparison.hasArbitrage ) {
console .log (`Arbitrage exists!` );
console .log (` Buy ${comparison.buySide} on ${comparison.buyPlatform} ` );
console .log (` Sell ${comparison.sellSide} on ${comparison.sellPlatform} ` );
console .log (` Spread: ${comparison.spread.toFixed(2 )} %` );
} else {
console .log (`No arbitrage. Price difference: ${comparison.priceDiff.toFixed(2 )} %` );
}
Market Linking
await arbService.addMatch (
{ platform : 'polymarket' , id : 'market-123' , question : 'Will Trump win?' },
{ platform : 'kalshi' , id : 'TRUMP-WIN' , question : 'Trump wins 2024' }
);
await arbService.removeMatch ('polymarket:market-123' , 'kalshi:TRUMP-WIN' );
const autoMatches = await arbService.autoMatchMarkets ({
minSimilarity : 0.85 ,
});
console .log (`Found ${autoMatches.length} auto-matches` );
Get Opportunities
const opportunities = await arbService.getOpportunities ({
minSpread : 1 ,
sortBy : 'spread' ,
});
const formatted = await arbService.formatOpportunities (opportunities);
console .log (formatted);
Statistics
const stats = await arbService.getStats ({
period : '30d' ,
});
console .log (`Total opportunities: ${stats.totalOpportunities} ` );
console .log (`Avg spread: ${stats.avgSpread.toFixed(2 )} %` );
console .log (`Max spread seen: ${stats.maxSpread.toFixed(2 )} %` );
console .log (`By platform pair:` );
for (const [pair, count] of Object .entries (stats.byPlatformPair )) {
console .log (` ${pair} : ${count} ` );
}
Arbitrage Types Detected
1. Cross-Platform Price Difference Market: "Trump wins 2024"
Polymarket YES: 52¢
Kalshi YES: 55¢
Strategy: Buy Polymarket YES, Sell Kalshi YES
Spread: 3¢ (5.8%)
2. Internal Arbitrage (Rebalancing) Market: "Will X happen?"
YES: 45¢
NO: 52¢
Total: 97¢
Strategy: Buy both YES and NO
Guaranteed profit: 3¢ per $1
3. Inverse Markets Market A: "Trump wins" = 55¢
Market B: "Trump loses" = 48¢
Total: 103¢ (should be 100¢)
Strategy: Sell both, pocket 3¢
Configuration arbService.configure ({
checkIntervalMs : 30000 ,
batchSize : 50 ,
minSpread : 0.5 ,
minLiquidity : 100 ,
minConfidence : 0.7 ,
autoMatchEnabled : true ,
minMatchSimilarity : 0.85 ,
alertOnNewArb : true ,
alertThreshold : 2 ,
});
Best Practices
Verify matches manually - Auto-matching can have false positives
Check liquidity - Ensure you can actually execute
Account for fees - Platform fees reduce spreads
Move fast - Arbitrage disappears quickly
Use limit orders - Avoid slippage
Track all outcomes - Build performance data