*

仮想通貨取引所のアクセス拒否との死闘と解決策

これまで取引所とさまざまな悪戦苦闘を繰り広げてきましたが、
良いアイディアが思いついたので、一回まとめたいと思います。

【これまでの経緯】
取引所にAPIのアクセス拒否される

プロキシを経由してIPアドレスを分散

一つのプロキシだと止まってしまうことがあるので複数のプロキシを使う

プロキシサーバーで停止するとレスポンス待ちになって自サーバーのCPUがパンクして止まる

プロキシ接続にタイムアウトを設定し、プロキシサーバーが止まった場合は次の別のプロキシを使う

取引所でオーダーが通ってレスポンスが返ってくる途中でプロキシサーバーが止まった場合、
オーダーが2重3重で発注される

とここまで来たのですが、
実にシンプルな解決策を思いつきました。

APIにPrivateアクセスする場合、
どの取引所でも「アクセスごとに増加しなければならない数字」(通常はUNIXタイムスタンプ)を
ハッシュに含めます。

これが増加していない場合はエラーになるので、それを逆に利用します。

つまり、今までは
プロキシを繰り返し送信するfor文の中で都度タイムスタンプを発行していたのですが、
それをfor文の前に変数に入れることによって、
2重3重にオーダーが通りそうな場合はエラーを発生させることで約定を防ぐことができます。

つまり、

これを

こうすればよかっただけです。(コードについては前の投稿を見てください。)

こんな簡単なことに気付かなかったなんて、頭がいい人に見られたらバカにされても文句は言えないですね。

ちなみに今のPHPではマルチタスクもできるので、
オーダーの部分だけマルチタスクにしても良いかもしれません。

しかし、そんなモチベーションはないので、
極めたい人は試してみてください。

ちなみに、アクセス拒否は取引所側の手違いということで、
現在はプロキシを通さずに生IPでやれています。

今回のプロキシ云々が影響するのは、よっぽど大量アクセスをしている人に限られるでしょう。

Message

メールアドレスが公開されることはありません。

このコメントはWEBに公開されるので、問い合わせ等はメールでお願いします。

関連記事

BCH(ビットコインキャッシュ)のアービトラージの取引結果(Binance vs Poloniex)

今回はビットコインキャッシュのアービトラージの取引結果です。 日本時間 bid(売値)

記事を読む

【仮想通貨】現物取引のアービトラージと信用取引のアービトラージは全然別物です

今さら~ な感じもしますが、タイトルの通りです。 仮想通貨からトレードの世界に入ってきた方の中には

記事を読む

APIで取引所の残高を取得する 仮想通貨の自動売買開発④

公開:2017/6/21 前回はPRIVATE APIにアクセスするためのハッシュの生成でした

記事を読む

仮想通貨アービトラージに取引所間の送金は必ずしも必要ではない

ここまで話を進めてきていまさら~な感じもするのですが、そもそものところで誤解があるようなので、アービ

記事を読む

BinanceとPoloniexの自動アービトラージシステムを作る2

BinanceのプライベートAPIにちょっと他の取引所とは違うクセがあったので、今回はそれを紹介しま

記事を読む

 
  • ブログ管理人の横瀬兼元(ペンネーム)です。

    各トピックに対するコメントは各記事のコメント欄にお願いします。それ以外のご質問、ご相談などは
    infoあっとfxantenna.com
    まで
    私の偽物がいるらしいので偽物にご注意ください。
no image
ストップレベル=0はストップレベルがないことではない

MT4/MT5では予約注文を行う際にストップレベルというものがあります

no image
私の偽者、偽ブログにご注意ください

読者の方からご連絡いただいたのですが、私のブログの内容をそのままコピー

no image
サービス展開向けの仮想通貨自動売買システムを作るには

前置き ビットコイン、仮想通貨の自動売買を作る目的として、通常は個人

一回の演算で複数のリクエストを送る 仮想通貨の自動売買⑪

公開:2017/9/4 基本的にjson形式でAPIをたたく場合

コインチェックAPIで信用取引 仮想通貨の自動売買⑩

公開:2017/9/4 これまではAPIで現物取引を扱ってきまし

→もっと見る

PAGE TOP ↑