Google検索binanceの3点アビトラを行ってみました。GitHub3通貨間アービトラージで稼ぐことはできるのか?|かかってコアラ辺りを目に入れつつ。上手く利益が出てる例は無かったですが...結局先人の成果物を理解することが難しかったので自分で組んでみました。やりたいこと/大まかな流れBinance内の通貨取引ペア全370種を得るBinance内の取引通貨種全143種を得る3通貨ぐるっと回せるルート全1328種を得る3で得たルートで3回取引したときに元手がどう変わるかアルゴリズムは含みません。勝機の有無を知りたかったので。解析とか判定はもっと先の話。ccxt.binance()binance.load_markets()各ライブラリを呼び出します。load_marketsはとりあえず呼んどけみたいな感じ。len(Pairlists)keysの中身はこんな感じ。シンボルって言うんですかね。取引出来る通貨ペア全種が得られます。'DENT/ETH']本執筆時で370種でした。オオスギィ!Pl_sumに種類数を突っ込んでおきます。price.set_index("name")ask,bidの取得に合わせて、シンボル名称がスラッシュで区切られているのを前提に分割しておきます。この量だと時間差がかなり出てくるので、時刻を併記しておきます。これは使い道は無いですが、気になったので。10:47:15だんだん見える化が進んできました。sorted(l)前述のペアの通貨を全てリストに連結。setで重複除いて、昇順で並べます。'ZRX']全143種が得られました。"BNB"]アルトコイン同士の取引は出来るわけ無く、ベースとなる支払いに使える通貨が限られています。BTCでしかやるつもり無いですが、4種宣言してリストに入れておきます。BaseCurrency[i0]これからT0、T1、T2と言う変数に3種の通貨を割り当てて行きます。いうルートを導くために処理をつなげます。True):最初のT0は”BTC"です。最初のl[i1]は通貨名昇順第1番目”ADA"です。居ることを確認して次に行きます。True):最初のT1は”ADA"です。最初のl[i2]は通貨名昇順第1番目”ADA"です。居ないので行けませんね。次のl[i2]は通貨名昇順第2番目”ADX"です。居ないので行けませんね。(中略)X番目のl[i2]は”BNB"です。居るので次に行きます。True):T0は”BTC"です。T2は"BNB"です。居るので次に行きます。1基礎通貨(T0)、第1購入通貨(T1)、第2購入通貨(T2)の定義が出来たので、それぞれの購入時のレートを出します。buy時に最初の通貨に戻ります。97%/101%って形で考えるか、-3%/+1%って形で考えるか。'{:.5f}'.format(buyT0)])得られたレートを格納します。ここまでをループします。ascending=False)print(AbiPair)利益率の高い順にソートして調理完了。printすると以下が得られます。-0.02771(後略)6.まとめ目的である市場の観察は果たせました。上位8組のみ、とかなり厳しい戦いな模様。ここには手数料が入っていないので実利はもっと薄まります。勝ち目が薄いのは分かりましたが、ゼロではないかなと。データ集めて見てみたいところです。upLoginユーザーは見つかりませんでした。