প্রকল্প সম্পর্কে

FlashLoanArbitrage হলো একটি Node.js কমান্ড-লাইন প্রজেক্ট, যা flashloan-profit-calculator রিপোজিটরি নামে প্রকাশিত। এর README-তে এটিকে ফ্ল্যাশ লোন ব্যবহার করে DeFi-তে আরবিট্রেজের জন্য একটি বট হিসেবে বর্ণনা করা হয়েছে। এতে দুটি অংশ রয়েছে: একটি অন-চেইন স্মার্ট কন্ট্রাক্ট এবং একটি লোকাল স্ক্রিপ্ট, goflash.js, যা ব্যবহারকারী তার কম্পিউটারে node-এর মাধ্যমে চালান। README-তে বর্ণিত প্রত্যাশিত কার্যপ্রবাহ: - কন্ট্রাক্টটি USDC-তে একটি ফ্ল্যাশ লোন গ্রহণ করে। - ট্রেডের আগে ব্যবহারকারীর ETH-কে USDC-তে রূপান্তর করা হয়। - বেশ কয়েকটি ভেনুর মধ্যে যেখানে ETH সস্তা সেখানে কেনা হয় এবং যেখানে দাম বেশি সেখানে বিক্রি করা হয়। - লোন, ফি এবং গ্যাস পরিশোধ করা হয় এবং অবশিষ্ট USDC মুনাফা হিসেবে পুনরায় ETH-তে রূপান্তর করা হয়। মূল্য পর্যবেক্ষণ এবং থ্রেশহোল্ড: বলা হয়েছে যে স্ক্রিপ্টটি প্রতি ৬০ সেকেন্ড অন্তর ETH/USDC মূল্য স্ক্যান করে, যেখানে Chainlink-কে বেস ওরাকল হিসেবে এবং সাথে Uniswap V2, SushiSwap, Curve Finance এবং Balancer ব্যবহার করা হয়। এটি কেবল তখনই কাজ করে যখন মূল্যের পার্থক্য ০.৯% বা তার বেশি হয়। README-তে চারটি ফ্ল্যাশ-লোন প্রোভাইডারের ফি এবং সাইজ উল্লেখ করা হয়েছে: Aave (০.০৫%), dYdX (০.০৫%), Uniswap V3 (০.০১%) এবং Balancer (০.০২%)। সেটআপ এবং ইন্টারফেস: goflash.js এবং package.json ডাউনলোড করে npm install এবং তারপর node goflash.js চালাতে হয়। ঘোষিত ডিপেন্ডেন্সিগুলো হলো ethers ^6.11.1, inquirer ^8.2.6 এবং chalk ^4.1.2। প্রথমবার চালু করার সময় একটি ইন্টারঅ্যাক্টিভ প্রম্পটের মাধ্যমে নতুন ওয়ালেট তৈরি বা প্রাইভেট কি-র মাধ্যমে বিদ্যমান ওয়ালেট ইমপোর্ট করার সুযোগ থাকে; এই কি-টি একই ফোল্ডারের wallet.json ফাইলে প্লেইন টেক্সটে লেখা হয়। মূল মেনু থেকে প্রোটোকল নির্বাচন, ETH-তে লোনের পরিমাণ নির্ধারণ, ওয়ালেট পুনর্গঠন বা ইমপোর্ট, আরবিট্রেজ শুরু করা অথবা এক্সিট করার সুযোগ থাকে। README-তে গ্যাসের জন্য ওয়ালেটে ফান্ড রাখার পরামর্শ দেওয়া হয়েছে এবং উল্লেখ করা হয়েছে যে ট্রেডিং ফি (০.১%), স্লিপেজ (০.০৫%) এবং গ্যাস ফলাফল থেকে বিয়োগ করা হয়। ব্যবহার করার আগে পাঠকদের যে বিষয়গুলো বিবেচনা করা উচিত: - README-র ট্রাবলশুটিং সেকশনে বলা হয়েছে যে বাস্তব বাজারে ০.৯% স্প্রেড বিরল এবং স্ক্রিপ্টটি মাঝে মাঝে প্রদর্শনের জন্য একটি সিমুলেটেড সুযোগ দেখায়। তাই প্রদর্শিত আউটপুট কার্যকর মুনাফার প্রমাণ নয় এবং README-র মুনাফার দাবিগুলো যাচাইহীন হিসেবে গণ্য করা উচিত। - প্রজেক্ট স্ট্রাকচার সেকশনে কেবল goflash.js, package.json, wallet.json এবং README.md তালিকাভুক্ত করা হয়েছে। স্মার্ট কন্ট্রাক্টের সোর্স কোড অন্তর্ভুক্ত বলে বর্ণনা করা হয়নি, তাই এই লেআউট থেকে অন-চেইন দিকটি পর্যালোচনা করা সম্ভব নয়। - প্রাইভেট কি-গুলো ডিস্কে wallet.json ফাইলে এনক্রিপ্ট না করেই সংরক্ষণ করা হয়। README নিজেই .gitignore, অফলাইন ব্যাকআপ এবং একটি ডেডিকেটেড ওয়ালেট ব্যবহারের সুপারিশ করে, যা যুক্তিসঙ্গত, তবে এই ডিজাইনের অর্থ হলো ফোল্ডারটির অ্যাক্সেস থাকা যে কেউ কি-টি পড়তে পারবে। - প্রজেক্টটি শিক্ষামূলক উদ্দেশ্যে 'as-is' শেয়ার করা হয়েছে এমন একটি বাক্য ছাড়া কোনো লাইসেন্স শর্ত, কোনো টেস্ট স্যুট বা কনফিগারেশন ফাইলের বর্ণনা নেই। ইন্টারঅ্যাক্টিভ টার্মিনাল-চালিত ওয়ার্কফ্লো এবং ডিপেন্ডেন্সি সেটটি সুনির্দিষ্ট এবং সহজেই পরিদর্শন করা যায়; তবে ট্রেডিং কৌশল, ফি-র হিসাব এবং মুনাফার প্রত্যাশাগুলো README থেকে নেওয়া এবং শুধুমাত্র রিপোজিটরি বর্ণনা থেকে স্বাধীনভাবে যাচাইযোগ্য নয়। যারা এটি পরীক্ষা করতে চান তাদের উচিত কেবল গ্যাস ফান্ড থাকা একটি ডিসপোজেবল ওয়ালেট ব্যবহার করা, wallet.json-কে ভার্সন কন্ট্রোলের বাইরে রাখা এবং এমন পরিমাণ অর্থ দিয়ে শুরু করা যা তারা হারাতে প্রস্তুত।