*

APIでコインチェック、ZAIF、bitFlyerのレートの比較&トレード 仮想通貨の自動売買開発⑧

公開:2017/7/11

今回は業者間アービトラージに向け、PUBLIC APIで取得したデータからbidとaskを抽出し、それぞれを比較します。
Private APIに比べると超簡単です。

WEB APIで取得したデータはJSON形式で返ってくるので、(いらない情報てんこ盛りで)、必要な情報だけを連想配列に格納します。


あとはこれをPHP上で比較するだけです。


ひとつ注意しなければならないのは、PUBLIC APIの取得に失敗すると、それぞれの値が0になってしまう可能性があるということです。

比較する場合は、その前に0ではないこと(取得に成功していること)を条件に入れましょう。

また、例ではメッセージを表示するだけですが、PHPなのでメール送信が可能です。

PHPだからメールで取引状況を確認できる!

これ、結構メリットだと思います。JavascriptやC#でもできないことはないでしょうが、やっぱりサーバーサイド専用の言語であるPHPにはかなわないと思います。

コーディングしているとき、「Javascriptで書いて、HTA化すれば良かったんじゃね?」と頭をよぎりましたが、このメール機能の実装によりPHPの方が良いような気がしてきました。

これで、「取引が発生したらメール送信する」といったことができるので、外出先でも確認できます。

単位時間当たりの大量取引を防ぐ

お察しの通り、これだけの条件文では、ある一定時間に大量にトレードする可能性が発生します。

EA(為替の自動売買プログラム)の場合、public変数やグローバル変数で、「前にトレードした時刻」を記録することが可能ですが、PHPの場合、基本的にアクセスする度にデータは消えてしまいます。

ではどうするかというと、会員制サイトでよく使う”セッション”を使います。

アクセスする元のIPが常に一緒であるからこそ、できる方法です。もしPHPの起動方法がDDosチックなやり方の場合、この手法は使えません。(そんな人いないか)

つまり、
ローカルPCのブラウザ → PHPサーバー → 各取引所APIサーバー
という図式です。

PHPをXAMPPなどでローカルで稼働させ、UWSCか何かで連打する方法もありだと思います。

私は海外VPS(仮想デスクトップ)が一つ余っているので、上の方法をとりますが、将来的に自動売買させて放置するのであればVPS上でやるのが一番いいと思います。

(VPSは余力がある場合にレンタルすればOKです。)

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

関連記事

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

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

記事を読む

仮想通貨取引所APIにプロキシを使うとき

以前、取引所APIのアクセス回数上限を突破するためにプロキシをご紹介したのですが、 それに関して「

記事を読む

仮想通貨取引所のサーバーの場所(自動売買の最適なロケーションは?)

FXの世界ではそれぞれのブローカーのサーバーがどこにあるかを調べて、 それに対して最も近いデータセ

記事を読む

ビットコイン自動売買システムの作り方 一覧

今ならAPIの仕様の改良により、 CoinCheck、ZAIF、bitFlyer、POLONIEX

記事を読む

MT4から取引所のビットコインレートを取得して比較する

今までMQLしか触ったことがない人にとって、jSONだのHASHだのが出てくるAPIの処理は荷が重か

記事を読む

 

  • (↑広告です。このサイトの管理者の運営ではありません)



  • 横瀬兼元(ペンネーム)です。

    ご質問、ご相談などは
    infoあっとfxantenna.com
    まで
    偽者(オリジナルある模倣者)がいるらしいのでご注意ください。
【MT4EA】半年で5万回以上トレードしても右肩上がりにできる証明(EA配布)

(ただし、スプレッドが狭ければ...) EURUSD

no image
(MT4EA)MACDと特殊ベッティング【EA検証班求ム】 

. . 超シンプルなMACDのEAです

MT4の1分足テストで起こる致命的な現象

1分足っていうのは他の時間枠といろいろ違う点があります。 まず、本題か

no image
【EA検証班募集】コツコツドカンとドローダウン(MT4) ~原理は単純を、構造は複雑を、人は最も人らしく~

EURGBP 2018.11.1~2019.4.30 D1 Sp

MT5のテスターではスプレッドは変更できないという事実

を知らない人が多くて、「このバックテストのスプレッドはいくつですか」と

→もっと見る

PAGE TOP ↑