منصوبے کے بارے میں

FlashLoanArbitrage ایک JavaScript کمانڈ لائن پروجیکٹ ہے جو Ethereum DeFi arbitrage کے لیے flash loans کے گرد بنایا گیا ہے۔ اس کے README کے مطابق، ایک اسمارٹ کنٹریکٹ flash loan کے ذریعے USDC ادھار لیتا ہے، اس جگہ سے ETH خریدتا ہے جہاں یہ سستا ہو، اسے وہاں بیچتا ہے جہاں قیمت زیادہ ہو، قرض اور فیسوں سمیت گیس کی ادائیگی کرتا ہے، اور باقی بچنے والے USDC منافع کو دوبارہ ETH میں تبدیل کر دیتا ہے۔ goflash.js نامی ایک مقامی اسکرپٹ صارف کی مشین پر چلتا ہے، ETH/USDC قیمتوں پر نظر رکھتا ہے، اور موقع ملنے پر کنٹریکٹ کو فعال کرتا ہے۔ ریپوزٹری کی تفصیل میں تکنیکی تجزیے کے ذریعے ETH کی قیمتوں کی نقل و حرکت کی پیش گوئی کا ذکر ہے، لیکن README خود ایک arbitrage execution bot کی دستاویز ہے نہ کہ کسی پیشن گوئی کے ماڈل کی؛ README میں پیشن گوئی یا تکنیکی تجزیے کے کسی جزو کی وضاحت نہیں کی گئی، اور پروجیکٹ کے ڈھانچے میں صرف goflash.js، package.json، wallet.json اور README.md شامل ہیں، اس لیے اس ٹری میں اسمارٹ کنٹریکٹ کے ذرائع نہیں دکھائے گئے ہیں۔ قیمتوں کی نگرانی پانچ ذرائع سے کی جاتی ہے: بنیادی ETH قیمت کے لیے Chainlink بطور orcale، Uniswap V2، SushiSwap، Curve Finance اور Balancer۔ اسکرپٹ کے بارے میں بتایا گیا ہے کہ یہ ہر 60 سیکنڈ بعد ان قیمتوں کو اسکین کرتا ہے اور عمل کرنے سے پہلے 0.9% یا اس سے زیادہ کے فرق کا انتظار کرتا ہے، جس کی وجہ یہ بتائی گئی ہے کہ چھوٹے فرق اخراجات کو پورا نہیں کریں گے۔ کنسول آؤٹ پٹ ہر جگہ کی قیمت کو اوپر، نیچے یا غیر تبدیل شدہ اشارے کے ساتھ دکھاتا ہے اور پلیٹ فارمز کے درمیان زیادہ سے زیادہ فرق (spread) بھی بتاتا ہے۔ چار flash-loan پروٹوکولز درج ہیں، جن کے اعداد و شمار README میں دیے گئے ہیں: Aave 0.05% فیس اور 10,000,000 USDC تک کی لیکویڈیٹی کے ساتھ، dYdX 0.05% اور 500,000 USDC تک، Uniswap V3 0.01% اور 5,000,000 USDC تک، اور Balancer 0.02% اور 1,000,000 USDC تک۔ README کم فیسوں کے لیے dYdX یا Uniswap V3 کی سفارش کرتا ہے اور نوٹ کرتا ہے کہ فیسیں قرض کے سائز کے ساتھ بڑھتی ہیں۔ سیٹ اپ کی دستاویز میں goflash.js اور package.json کو ایک فولڈر میں ڈاؤن لوڈ کرنا، npm install چلانا، اور پھر node goflash.js چلانا شامل ہے۔ پہلی بار چلانے پر اسکرپٹ رپورٹ کرتا ہے کہ کوئی والٹ نہیں ملا اور ایک انٹرایکٹو مینو پیش کرتا ہے: نیا والٹ بنائیں، جو ایک ایڈریس اور پرائیویٹ کی (private key) دکھاتا ہے اور کی کو اسی فولڈر میں wallet.json میں لکھتا ہے، یا 0x-prefixed 64-character پرائیویٹ کی کے ذریعے موجودہ والٹ امپورٹ کریں۔ بعد کے لانچز میں ایک مین مینو نظر آتا ہے جس میں DeFi پروٹوکول کا انتخاب، ETH میں قرض کی رقم (10 ETH سے پروٹوکول کی زیادہ سے زیادہ حد تک)، والٹ دوبارہ بنانا، والٹ امپورٹ کرنا، arbitrage شروع کرنا اور ایگزٹ (exit) کے آپشنز ہوتے ہیں۔ بتائے گئے اخراجات میں 0.1% ٹریڈنگ فیس، 0.05% slippage اور گیس شامل ہیں۔ README مشورہ دیتا ہے کہ 10 ETH سے زیادہ ادھار لیتے وقت گیس کے لیے والٹ میں کم از کم 0.1 ETH رکھیں، اور کہتا ہے کہ والٹ بیلنس صرف گیس کے لیے استعمال ہوتا ہے جبکہ ETH کنٹریکٹ میں منتقل نہیں کیا جاتا۔ اس کی dependencies میں ethers ^6.11.1، inquirer ^8.2.6 اور chalk ^4.1.2 شامل ہیں۔ ٹربل شوٹنگ سیکشن میں ماڈیول فارمیٹ کی غلطیاں، غلط پرائیویٹ کی فارمیٹ، ناکافی فنڈز، ناقابل رسائی RPC endpoints اور غائب V2 pairs کا ذکر ہے۔ README میں کچھ اہم انتباہات بھی دیے گئے ہیں: 0.9% قیمتوں کا فرق حقیقی مارکیٹوں میں نایاب بتایا گیا ہے، اور رپورٹ کے مطابق اسکرپٹ کبھی کبھار مظاہرے کے مقاصد کے لیے ایک simulated موقع دکھاتا ہے، لہذا لائیو منافع بخش عمل کی ضمانت نہیں ہے۔ پرائیویٹ کی wallet.json میں سادہ متن (plaintext) میں محفوظ ہوتی ہے؛ README مشورہ دیتا ہے کہ اس فائل کو کبھی commit نہ کریں، اسے .gitignore میں شامل کریں، آف لائن بیک اپ رکھیں، ایک مخصوص والٹ استعمال کریں اور چھوٹی رقوم سے شروع کریں۔ یہ پروجیکٹ تعلیمی مقاصد کے لیے 'جیسا ہے' (as-is) شیئر کیا گیا ہے اور اس کا استعمال مالک کے اپنے خطرے پر ہے۔