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

このリポジトリは、Solidityスマートコントラクトと外部Python自動化スクリプトを組み合わせて構築されたEthereumアービトラージボットを提示しています。コントラクトはUniswapプールとルーター間のアービトラージ機会を検索・実行し、ETHまたはトークンを自身の残高として保持します。 READMEに記載されているコントラクトの主要機能: - executeArbitrage(): プール/ルーター間のアービトラージ機会を単一トランザクションで検索・実行するメイン関数。 - quickSwap() / quickSwapFromBalance(): 許可されたルーターを通じ、コントラクト残高から直接行うクイックスワップ。 - setRouterAllowed() / setTokenAllowed(): ボットが使用可能なルーターとトークンのホワイトリストを管理。 - setDefaultFee() / setDefaultTokenOut(): プール手数料とデフォルトの出力トークンを設定。 - setMinQuickSwapAmount() / setMaxQuickSwapAmount(): スワップごとの最小・最大制限を設定。 - setPaused(): コントラクトの動作を停止する緊急一時停止。 - revokeApproval(): 以前に付与したトークン承認を取り消し。 - withdraw() / withdrawETH(): オーナーがコントラクト残高からトークンまたはETHを引き出し。 - getBalance() / getOwner() / owner() / TARGET_ADDRESS(): コントラクト状態を読み取るためのビュー用ヘルパー。 設定の変更と資金の引き出しはコントラクトオーナーのみが実行できます。 記載されているセットアップ手順: 1. ブラウザでEtherLabのデプロイページを開く。 2. ファイルマネージャーで新しい.solファイルを作成し、コントラクトコードを貼り付ける。 3. Compilerタブでコンパイラバージョン0.8.20を使用してコンパイルする。 4. Deployタブでウォレット(MetaMaskまたはPhantom)を接続し、コントラクトをデプロイした後、0.5~1 ETHを送金して資金を供給する。 5. Python Automationタブで自動入力されたフィールドと選択されたコントラクトを確認し、Startをクリックし、ウォレットで起動を確認する。ボットの実行中はページを開いたままにする必要がある。 記載されている実行時の動作: - 各インターバルで、ボットはドライラン(eth_estimateGas)を通じてexecuteArbitrageをチェックする。呼び出しが成功する場合、実際のトランザクションが送信され、1回のウォレット確認が必要となる。 - その他の選択された関数も同様にチェックされるが、送信されることはないため、追加の確認は不要。 - バックグラウンドスキャナーがメインネット上のライブなUniswap V2/V3スワップイベントを監視し、誰がスワップしたか、方向、およその金額をログに記録する。 - アクティビティはLogsパネルにリアルタイムで表示される。 READMEは、リターンは市場のボラティリティ、ボット間の競争、ネットワークのガス代に依存し、結果は保証されないと述べています。当時の市場状況下で1 ETHの入金につき1日あたり約500ドルという仮定的な平均に言及し、これは約束ではなく変動する可能性があると明示的に注記しています。収益性、セキュリティ、正確性に関する独立した検証は、リポジトリの資料では提供されていません。