BitflyerのBotトレードはどの環境で動かすと良いのか
Bitflyer FXを始めてからAPIサーバのレスポンス速度が気になったので測定してみました。
■なぜ気になる?
注文時のロジックとして"APIで現在の価格取得=>注文するorしない判断=>APIで注文"の流れなのですが、API接続(インターネット)の時間が早ければ早いほどこちらが想定している取引が出来ると考えます。
私のAPIの取得のタイミングや注文の仕方などの影響もあるのでAPIサーバの接続だけを改善すればいいって訳ではないのですが、いずれサーバで動かす事考えるとねーって事で。
現在は検証中なのでローカル環境で動かしています。
■状況
BitflyerはIPで検索するもcloudflare.comを利用しているのでサーバ場所が分かりません。
他の取引所であればAWSを利用してる所が多いので、AWSで運用すればいいかなーと想像しています。(実際は測定しないと分かりませんが。)
■結果から(実際測定した情報は下部に)
1. Conoha
2. AWS
3. ローカル環境 自身のPC(Mac)です。※千代田区です。
4. Sakura <= 測定出来ず
VPSのみで測定しています。
私が常時契約しているVPSが上記のみですのでご了承下さいませ。
もし上記以外で計測した人いましたら教えて頂けると幸いです。
Sakuraはなぜか測定できーず。ネットワークに詳しくないのですが何かしら許可する必要とかあったりしますかね?
古いVPSなので何かしらあるのかな。。。
一応同じ時間帯に計測しましたが手動で順番に測定したので正確ではないです。
何度も計測してBitflyerに迷惑かけるのも気が引けるので各サーバで一回しか行っていません。本当は何度か時間帯を変えて測定するのがいいのでしょうがね。
---------------------------------------------
AWSの場合
ping -c 10 api.bitflyer.jp
PING api.bitflyer.jp.cdn.cloudflare.net (104.20.223.62) 56(84) bytes of data.
64 bytes from 104.20.223.62: icmp_seq=1 ttl=52 time=1.60 ms
64 bytes from 104.20.223.62: icmp_seq=2 ttl=52 time=1.58 ms
64 bytes from 104.20.223.62: icmp_seq=3 ttl=52 time=1.61 ms
64 bytes from 104.20.223.62: icmp_seq=4 ttl=52 time=1.55 ms
64 bytes from 104.20.223.62: icmp_seq=5 ttl=52 time=1.56 ms
64 bytes from 104.20.223.62: icmp_seq=6 ttl=52 time=1.53 ms
64 bytes from 104.20.223.62: icmp_seq=7 ttl=52 time=1.59 ms
64 bytes from 104.20.223.62: icmp_seq=8 ttl=52 time=1.55 ms
64 bytes from 104.20.223.62: icmp_seq=9 ttl=52 time=1.53 ms
64 bytes from 104.20.223.62: icmp_seq=10 ttl=52 time=1.56 ms
--- api.bitflyer.jp.cdn.cloudflare.net ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 24849ms
rtt min/avg/max/mdev = 1.536/1.570/1.616/0.032 ms
---------------------------------------------
---------------------------------------------
ローカルの場合
$ ping -c 10 api.bitflyer.jp
PING api.bitflyer.jp.cdn.cloudflare.net (104.20.223.62): 56 data bytes
64 bytes from 104.20.223.62: icmp_seq=0 ttl=56 time=48.212 ms
64 bytes from 104.20.223.62: icmp_seq=1 ttl=56 time=43.976 ms
64 bytes from 104.20.223.62: icmp_seq=2 ttl=56 time=45.263 ms
64 bytes from 104.20.223.62: icmp_seq=3 ttl=56 time=51.698 ms
64 bytes from 104.20.223.62: icmp_seq=4 ttl=56 time=39.526 ms
64 bytes from 104.20.223.62: icmp_seq=5 ttl=56 time=42.933 ms
64 bytes from 104.20.223.62: icmp_seq=6 ttl=56 time=44.575 ms
64 bytes from 104.20.223.62: icmp_seq=7 ttl=56 time=47.176 ms
64 bytes from 104.20.223.62: icmp_seq=8 ttl=56 time=38.855 ms
64 bytes from 104.20.223.62: icmp_seq=9 ttl=56 time=43.447 ms
--- api.bitflyer.jp.cdn.cloudflare.net ping statistics ---
10 packets transmitted, 10 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 38.855/44.566/51.698/3.657 ms
---------------------------------------------
---------------------------------------------
Conohaの場合
$ ping -c 10 api.bitflyer.jp
PING api.bitflyer.jp.cdn.cloudflare.net (104.20.223.62) 56(84) bytes of data.
64 bytes from 104.20.223.62: icmp_seq=1 ttl=59 time=1.02 ms
64 bytes from 104.20.223.62: icmp_seq=2 ttl=59 time=1.05 ms
64 bytes from 104.20.223.62: icmp_seq=3 ttl=59 time=1.07 ms
64 bytes from 104.20.223.62: icmp_seq=4 ttl=59 time=1.06 ms
64 bytes from 104.20.223.62: icmp_seq=5 ttl=59 time=1.03 ms
64 bytes from 104.20.223.62: icmp_seq=6 ttl=59 time=1.14 ms
64 bytes from 104.20.223.62: icmp_seq=7 ttl=59 time=1.05 ms
64 bytes from 104.20.223.62: icmp_seq=8 ttl=59 time=1.07 ms
64 bytes from 104.20.223.62: icmp_seq=9 ttl=59 time=1.04 ms
64 bytes from 104.20.223.62: icmp_seq=10 ttl=59 time=1.05 ms
--- api.bitflyer.jp.cdn.cloudflare.net ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9013ms
rtt min/avg/max/mdev = 1.021/1.063/1.145/0.034 ms
---------------------------------------------
---------------------------------------------
Sakuraの場合
$ ping -c 10 api.bitflyer.jp
PING api.bitflyer.jp.cdn.cloudflare.net (104.20.222.62) 56(84) bytes of data.
--- api.bitflyer.jp.cdn.cloudflare.net ping statistics ---
10 packets transmitted, 0 received, 100% packet loss, time 18999ms
---------------------------------------------