見出し画像

超簡単! PythonによるBSC DeFi bot作り③ ~Pancake Swap~

納豆男爵です。これまでPythonとWeb3.pyを使った簡単なbotの作り方を紹介してきましたが、今回はついにスワップに挑戦していきます。
PythonとWeb3.pyについてよく知らないという方は過去の記事から順にみることをお勧めします。

超簡単! PythonによるBSC DeFi bot作り① ~送金する~

超簡単! PythonによるBSC DeFi bot作り② ~残高を調べる~

この記事ではPancakeSwapを使ったスワップの方法を紹介します。具体的には以下の3つに取り組んでいきます。

① BNBでCAKEを買う

② BUSDでCAKEを買う

③ Approveする

この3つが使えるようになればひとまず上場戦に挑むことができるようになります。何か新しいトークンがPancakeSwapに上場される、となったとして、上場される瞬間にスワップするコードを実行すれば、ブラウザで買う人よりは間違いなく早く買えます。以下の記事で紹介している「直コン」で買う人よりもおそらく早いです。

PancakeSwap直コンで上場戦に勝つ方法

ただし、本記事はbotを使った仮想通貨取引を推奨するものではありません。この記事で公開するプログラムを実行することによって資産を失う恐れがあります。この記事によって生じた損失について当方では一切の保証をいたしません。各自の責任によってお試しいただくようお願いいたします。

では、順番にソースコードを見ていきましょう。

PancakeSwapで取引するための準備

と、その前にPancakeSwapで取引するために色々と準備が必要です。前回ご紹介したようにコントラクトの関数を叩くためにはコントラクトのABI(Application Binary Interfaceの略らしい)情報をあらかじめ入手する必要があるのです。
ということでPancakeSwap Router V2のコントラクトを見に行きましょう。
bscscanで以下のアドレスを開きます。
0x10ED43C718714eb63d5aA57B78B54704E256024E
以下の順序でABI情報をJSONファイルとして保存しましょう。(ABI保存の流れは前回記事参照)
・「Contract」タブをクリック
・下にスクロールすると「Contract ABI」が現れるので右側の「Copy ABI to clipboard」をクリック
・適当なテキストファイルに貼り付け
・"PancakeSwap_Router_ABI.json"として保存

ついでにCAKE TokenのABIも入手しておきましょう。こちらの記事を見て入手済みの方はそのまま持っておきましょう。CAKEのコントラクトアドレスは
0x0E09FaBB73Bd3Ade0a17ECC321fD13a19e81cE82 です。
こちらは"Cake_Contract_ABI.json"として保存しておきます。

あとは以下がそろっていれば準備完了です。
・取引したいウォレットのアドレス
・取引したいウォレットの秘密鍵
・あらかじめPancakeSwapでBNBやBUSDをApproveしておく
 (Approveされていないと取引できない)

① BNBでCAKEを買う

まずはBNBでCAKEを買うソースコードを全部載せます。
以下のコードでは0.001BNBを支払ってCAKEに買っています。

ここから先は

10,475字 / 3画像

¥ 500

この記事が気に入ったらサポートをしてみませんか?