このプロジェクトについて
## 概要
FlashLoanArbitrageは、フラッシュローンを活用したDeFi裁定取引のためのNode.js製CLIボットです。リポジトリにはローカルスクリプトである`goflash.js`と`package.json`が含まれており、READMEによると、付属のスマートコントラクトがオンチェーンでの取引処理を担います。
## 説明されているワークフロー
1. スクリプトがChainlink(オラクル)、Uniswap V2、SushiSwap、Curve Finance、Balancerの5つのソースからETH/USDC価格を読み取ります。
2. 約60秒ごとに再スキャンを行い、価格の変動方向(上昇、下降、不変)と現在の最大スプレッドを表示します。
3. スプレッドが0.9%以上に達すると、コントラクトを通じて裁定取引をトリガーします。しきい値を下回っている場合は待機し続けます。
4. READMEによれば、コントラクトはUSDCのフラッシュローンを受け取り、価格の安い取引所でETHを購入し、高い取引所で売却し、ローンと手数料を返済した後、残りの利益をETHに変換します。
READMEには、この規模の実際のスプレッドは稀であり、デモンストレーションのためにスクリプトが時折シミュレーション上の機会を表示することがあると記されています。
## リストされているフラッシュローンプロトコル
Aave、dYdX、Uniswap V3、Balancerが挙げられており、それぞれに規定の手数料率とプロトコルごとのUSDC借入上限が設定されています。READMEでは、手数料が低いdYdXまたはUniswap V3が推奨されています。
## 実行方法
`goflash.js`と`package.json`をダウンロードし、`npm install`を実行した後、`node goflash.js`を起動します。初回起動時には、インタラクティブなプロンプト(`inquirer`経由)により、新しいウォレットの作成または秘密鍵によるインポートが可能です。鍵はローカルの`wallet.json`に保存されます。その後、プロトコルの選択、ETHでのローン金額設定、ウォレットの再作成、ウォレットのインポート、裁定取引の開始、および終了を選択できるメニューが表示されます。
依存関係として`ethers`、`inquirer`、`chalk`がリストされています。本プロジェクトは「教育目的として現状のまま」共有されると説明されています。
## 利用前に検討すべき点
このツールは秘密鍵をローカルのプレーンテキストファイルに配置し、実際の資金を用いてトランザクションに署名する必要があるため、READMEにあるセキュリティ上のアドバイスが重要になります。`wallet.json`を絶対にコミットせず、`.gitignore`に追加し、鍵をオフラインでバックアップし、専用のウォレットを使用し、まずは少額でテストすることが推奨されています。また、ガス代、取引手数料(0.1%と記載)、スリッページ(0.05%と記載)がコストとなること、およびウォレットの残高が少ないと選択できるローンサイズが制限されることについても警告されています。READMEには監査結果、実績、または収益性の独立した検証は提供されておらず、利益に関する数値は未検証の主張として扱う必要があります。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.