飽き性の頭の中

今は福岡でWeb開発をしている26歳。単なる文字の記録。

仮想通貨取引所bitbankのAPI制限(直列での処理)回避方法|API Keyを複数使って並列処理

f:id:tawachan39:20200219144233j:plain

こんにちは、たわです。仮想通貨取引所であるbitbankのAPI制限についてです。

bitbank

bitbankは国内のメジャーな取引所の1つです。

細かい特徴は他記事を当たってもらうとして、個人的な所感としては、手数料が少ないのでとても気に入っています。

API制限について

bitbankでプログラムで注文の自動化をしていたときに遭遇したAPI制限についてメモしておきます。

同時発注件数は30件

同時発注件数に関する制限は30ということが公式情報でわかります。

blog.bitbank.cc

APIリクエストが直列で処理される

エラーにはならないですが、少し癖のある特徴が、APIが直列で処理されることです。

同じAPI Keyを使って並列でリクエストを投げたとしても、サーバー側では直列で処理されます。

なので、同時に多くの注文を指す場合結構時間がかかってしまいます...。

API Keyを複数使うと並列でリクエストできる

ですが、挙動を見てみると、キューを積んで直列に処理しているのは、API Key単位のようです。

なので、API Keyをいくつか用意していい感じに使い分けるとその分並列に注文を指すことができて、処理時間を短縮することができました。

まとめ

bitbankのAPI制限は直列で処理することで負荷を軽減しているようでした。

あまり酷使すると迷惑がかかると思いますが、一応API Keyを量産することで並列で多くのAPIリクエストを実行することができることがわかりました。