」という人へ向けてまずは各取引所の板から価格を取得して、そこから価格差を導き出すプログラムをアービトラージの基礎として解説しました。Pythonを使って仮想通貨(ビットコイン)で売買注文する方法の記事でccxtライブラリを使用したPythonでのbitFlyer注文の方法を解説しました。実践的なアービトラージbotを作るためというより、これから作ろうとする初心者の足がかりとなることを目標としています。知識0から実践的なアービトラージができるプログラムが欲しい人はnoteで買える仮想通貨の自動売買botや関連noteをまとめてみたを参考にして見てください。」を覚えることができます。※JavaScriptが良い人はJavaScript(node.js)を使った仮想通貨アービトラージ(裁定取引)のやり方を読んでみてください。「もっとも安い価格の取引所で買い、もっとも高い価格の取引所で売る」ご存知のようにこれだけです。そのために必要なのは各取引所の「リアルタイムの買い価格」「リアルタイムの売り価格」の二つです。それぞれの取引所から二つのデータを集めて比較し、もっとも安い買い価格と、もっとも高い売り価格の二つをリアルタイムで比較して、ある条件以上の価格差になっていた場合に注文を入れる過程のコードにしたいと思います。他にも精度を高めるための視点は色々ありますが、上記5つのポイントなどを考慮しつつ利益を出せるようにする実践的な部分は話が分岐して細かくなってしまうためここでは無視しています。実際に利益を出していこうとするといくらくらいの価格差から実行するべきかどうかは、過去データを使って仮の送金時間などを考慮に入れてバックテストした方が良いでしょうね。その前にまずは動かせるようになりたいところです。ターゲットにする取引所の板情報を取得しよう今回はテストとして5つの国内取引所(bitbank・bitflyer・coincheck・liquid・zaif)を対象にしました。取引所間のコードの違いを一つにまとめてくれるccxtライブラリを用います。Pythonを使って仮想通貨(ビットコイン)で売買注文する方法の記事を参考にしてみてください。対応している取引所は以下のコマンドかgithubのページで確認しましょう。ccxtprint(ccxt.exchanges)板情報を取得するコードまずはそれぞれのターゲットでもっとも高い買い値(買い気配値)ともっとも安い売り値(売り気配値)を出力してみましょう。ask)上記の内容で出力すると以下のような結果が出力されます。1209965.0これで一先ず出力できました。ask)target_exchanges配列の中に5種類の取引所を用意しています。文で順番にtarget変数へ5種類の取引所の名前を格納して実行しています。Udemyの記事を読んでみてください。for文やif文、もしくは関数などを体系だって学びたいという人は無料でハイクオリティ教材であるprogateでPythonの基礎編をこなすことをオススメします。ask)通常はccxtを呼び出す場合、ccxt.bitflyer()のように呼び出せば良いですが、’bitflyer’のように「”」シングルクォートで囲まれた文字列となっています。‘()’)と言った書き方にしています。None」ではgetboard[‘bids’][0][0]の中身に対して条件分岐をさせています。getboard[‘bids’][0][0]の中身が空っぽであればNoneという文字列を返します。板が空になることは通常ないのですが何かあった際の保険のような形ですね。お得な組み合わせを出力しよう5種類の取引所の中でもっとも高い買値と安い売値を見つけて差益を出してみましょう。'円です')上記のコードを出力すると以下の答えが帰ってきます。'円です')単純にif文を使って前回(もしくはbest_bid、best_ask変数の初期値)の値を超える、下回るものならその値をベストなものとしてbest_bid、best_ask変数へと格納していくシンプルなコードです。あとは注文するなりなんなりしよう取引所によってはAPIにて成行注文はできないので基本はbestな価格帯とほとんど同じ価格で指値を入れましょう。注文をするためにはAPIキーの読み込みが必要です。Pythonを使って仮想通貨(ビットコイン)で売買注文する方法の記事を参考にする必要があります。以下のようなコードを参考にしてccxtが使えるようにして注文していきます。'あなたのAPIシークレットキー'APIキーとAPIシークレットキーを取引所に応じて読み込まないといけません。セキュリティ上の観点からも別ファイルで格納しておく必要があります。別ファイルで格納しつつ、ファイルをimportして使えるようにする書き方は色々あるので調べてみてください。(時間があれば追記します。まとめ今回の記事の内容を別の通貨で比較したり、ccxtライブラリで取得できる取引所全体で比較しても面白いかと思います。アービトラージの難易度は世界への仮想通貨の普及に伴って高まってきています。シンプルな方法やビットコインではなかなか利益を出していけないのではないでしょうか。海外取引所を用いる場合はセキュリティなどももちろんですし、最近はKYC(個人情報の申請と認証)も世界的に厳しくなっているので実践する場合は引き降ろせなくなる事態に陥らないように少額から始めつつ、下調べを忘れないようにしましょう。ビットコインバーゲンでは暗号資産に関わる全般の情報はもちろん、自動売買に関する記事もアップロードしています。自動売買に興味がある人に特におすすめなのはプログラミング知識0で自作botが作るQUOREAです。自分で作ったbotで利益を出せば利益に応じて歩合の収入を得ることができたり他のbotと成績を競うことができます。実際に使って理解したメリットとデメリットで読んでみてください。関連する記事の一覧こちらの記事も読まれています。しない仮想通貨」をテーマに1万円から始める方法をブロードキャストするブログ、ビットコインバーゲン運営者。少額botトレードの組み合わせ投資の提唱者です。バイヤー時代の目利き力でお得な情報をまとめています。金融としても技術としてもブロックチェーンは好きで、ブロックチェーン先進国エストニアにも訪問済み。フロントエンドから簡易的なDAppを作れるようにミニWebサービス開発もやってます。