このプロジェクトについて

概要 FlashLoanArbitrageは、Ethereum形式のDeFi市場でフラッシュローン裁定取引を試行するためのローカルコマンドラインスクリプト(goflash.js)です。ユーザー自身のマシン上で動作し、インタラクティブなメニューによって操作されます。リポジトリにはスクリプト、package.json、READMEが含まれており、READMEでは本プロジェクトをユーザーの自己責任で使用する教育用資料として提示しています。 動作原理 起動時、スクリプトはウォレットのオプション(新規ウォレットの生成、または秘密鍵による既存ウォレットのインポート)を提示します。生成された鍵は同じフォルダ内のwallet.jsonファイルに書き込まれます。メニューでは、4つのフラッシュローンバックエンド(Aave、dYdX、Uniswap V3、Balancer)、ETH単位の借入額設定、ウォレットの再作成およびインポート、裁定取引の開始/停止制御、および終了が選択可能です。 実行中、スクリプトは約60秒ごとに5つのソース(オラクルベースのChainlink、および取引所としてのUniswap V2、SushiSwap、Curve Finance、Balancer)からETH/USDCのリファレンス価格をポーリングします。現在の値は上昇/下降/不変のインジケーターと共に表示され、ソース間の最大スプレッドが報告されます。スプレッドが約0.9%に達したときのみ裁定取引コントラクトに処理を引き継ぎ、それ以外の場合は待機し続けます。READMEには、実際の市場でこのようなスプレッドは稀であり、デモンストレーション目的でシミュレートされた機会が時折表示されると記載されています。 記述されているコントラクトの流れは以下の通りです:USDCでフラッシュローンを借り、価格の安い取引所でETHを購入し、高い取引所で売却し、ローンとその手数料を返済し、取引手数料、スリッページ、ガス代を決済した後、残りの利益をETHに変換します。 セットアップと依存関係 リストされている依存関係はethers、inquirer、chalkのみです。使用方法は、goflash.jsとpackage.jsonをフォルダに配置し、npm installを実行した後、node goflash.jsを起動してプロンプトに従います。READMEのトラブルシューティングノートには、モジュール形式のエラー、秘密鍵の形式検証、ガス代のための資金不足、RPCの再接続、および取引ペアの欠落について記載されています。 注意点 - READMEではオンチェーンコントラクトについて説明していますが、リストされているプロジェクト構成にはスクリプト、package.json、wallet.json、READMEのみが含まれており、コントラクトのソースコードは示されていないため、リスティングからオンチェーン側の検証はできません。 - ウォレットファイルは秘密鍵をディスク上にプレーンテキストで保存します。READMEでは、wallet.jsonを.gitignoreに追加し、オフラインバックアップを保持し、専用のウォレットを使用し、鍵を絶対に共有しないよう助言しています。 - READMEでは、ウォレットの残高が約0.1 ETH未満の場合、ガス代が不足する可能性があるため10 ETHを超えるローンを借りるべきではないこと、およびコストにフラッシュローン手数料、約0.1%の取引手数料、0.05%のスリッページ、ガス代が含まれることを警告しています。 - リポジトリの内容によって、パフォーマンス、収益性、または正確性に関する独立した主張は証明されていません。記述された動作は作者自身の説明であり、プロジェクトは教育目的で「現状有姿」で共有されるものであると明記されています。