このプロジェクトについて
FlashLoanArbitrageは、リポジトリ名「flashloan-profit-calculator」で公開されているNode.jsコマンドラインプロジェクトであり、READMEではフラッシュローンを用いたDeFi裁定取引ボットとして説明されています。構成は、オンチェーンのスマートコントラクトと、ユーザーが自身のコンピュータでnodeを用いて実行するローカルスクリプト「goflash.js」の2つのパートで構成されています。
READMEに記載された想定フローは以下の通りです:
- コントラクトがUSDC建てのフラッシュローンを受け取る。
- 取引前にユーザーのETHがUSDCに変換される。
- 複数の取引所の中で最も安い場所でETHを買い、最も高い場所で売却する。
- ローン、手数料、ガス代を返済し、残りのUSDCを利益としてETHに再変換する。
価格監視と閾値について:スクリプトは60秒ごとにETH/USDC価格をスキャンし、Chainlinkをベースオラクルとして、Uniswap V2、SushiSwap、Curve Finance、Balancerを利用します。価格差が0.9%以上の場合にのみ動作します。READMEには、Aave (0.05%)、dYdX (0.05%)、Uniswap V3 (0.01%)、Balancer (0.02%)の4つのフラッシュローンプロバイダーと、それぞれの手数料およびサイズが記載されています。
セットアップとインターフェース: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では、ガス代のためにウォレットに資金を保持しておくよう助言されており、取引手数料 (0.1%)、スリッページ (0.05%)、およびガス代が結果から差し引かれることが記されています。
利用前に検討すべき点:
- READMEのトラブルシューティングセクションには、実際の市場で0.9%の価格差は稀であり、スクリプトがデモンストレーション用にシミュレーション上の機会を時折表示することがあると記載されています。したがって、表示される出力は実行可能な利益の証拠ではなく、READMEの収益性に関する記述は未検証の主張として扱うべきです。
- プロジェクト構成セクションにはgoflash.js、package.json、wallet.json、README.mdのみがリストされており、スマートコントラクトのソースコードが含まれているとは記載されていないため、この構成からはオンチェーン側のレビューが不可能です。
- 秘密鍵はwallet.jsonに暗号化されずにディスクに保存されます。READMEでは.gitignoreの使用、オフラインバックアップ、専用ウォレットの使用が推奨されており、これは妥当ですが、設計上、フォルダへのアクセス権を持つあらゆるプログラムが鍵を読み取れる状態になります。
- プロジェクトは教育目的で現状のまま共有されるという一文以外に、ライセンス条項、テストスイート、設定ファイルについての記述はありません。
対話的なターミナル駆動のワークフローと依存関係セットは具体的で確認が容易ですが、取引戦略、手数料の数値、および利益の期待値はREADMEに基づくものであり、リポジトリの説明だけでは独立して検証できません。試行する場合は、ガス代のみを入れた使い捨てのウォレットを使用し、wallet.jsonをバージョン管理から除外し、失っても構わない金額から開始することを推奨します。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.