*

APIでZAIFとbitFlyerのアカウント情報を取得する 仮想通貨の自動売買開発⑤

公開:2017/7/2

さて、そろそろ他の取引所のAPIも触っていきます。

ビットフライヤーとZAIFのPRIVATE API

ビットフライヤーのPRIVATE APIを使う場合

WEB APIは各取引所によって、微妙に仕様が異なります。

コインチェックの場合、phpのfile_get_contentsで取得できましたが、
BitFlyerはfile_get_contentでは上手くいきません。
(PUBLIC APIは問題ありません。)

原因は”謎”です。

というよりも、そもそもfile_get_contentでうまくいくことの方が昨今めずらしいです。
この周辺のワードで検索するとそういった記事が結構でてきます。

PHPのバージョンにもよるのですが、今回はCURLというものを使います。CURLというのはPHPから細かくWEBリクエストするための割と新しい関数群みたいなものです。

現在利用しているPHPのバージョンは5.3ですが、(古い?)CURLは問題なく利用できます。

CURLの基本的な使い方に関しては、詳しく書いているブログがたくさんありますので、そちらを参照してください。

bitFlyerは、ハッシュ化の際に
(タイムスタンプ)+(POSTかGET)+アクセスするパス+HTMLボディ
を連結させます。

ドキュメントを見ると、エンドポイントURLがhttps://api.bitflyer.jp/v1/で、
各メソッドのパスが/v1/me/getbalanceのようになっていますが、

最終的なアクセス先は
https://api.bitflyer.jp/v1/v1/me/getbalance
ではなく、
https://api.bitflyer.jp/v1/me/getbalance
です。

(当たり前と言えば当たり前ですが、変数に代入すると、ここら辺の表記が分かりにくくなるので…)

ハッシュ方式はコインチェックと同じsha256なので、関数はそのまま使えます。

正直、WEBAPIまわりは専門ではないので、詳しい方からみたら冗長な箇所あるかと思いますが、
これで一応動きます。

トレードする際にはボディに各パラメータを指定してください。

ZAIFのPRIVATE APIを使う場合

ZAIFの場合は、Githubにあるサンプルがちゃんと動くので、それを使うのもありかと思います。

また、ハッシュは
nonce=”タイムスタンプ”&method=”リクエストする情報タイプ”&その他情報…
でHMAC-SHA512で署名します

前回までの関数がそのまま使えます。

ちなみにドキュメントの説明

「signはPOSTする全てのパラメータ(nonceとmethodおよびメソッド毎のパラメータ)を URLエンコードしたクエリ形式(param1=val1&param2=val2)のメッセージとして、Secret Keyを用いてHMAC-SHA512で署名します。」

が滅茶滅茶わかりにくいと思ったのは、私だけではないはず。
日本語のパラメータはないので、URLエンコードする必要はないと思います。

あとZAIFはタイムスタンプに小数点以下も使えるので、この際小数点以下のタイムスタンプにします。

これによってどんな違いが生まれるかというと、一秒間に2回以上のアクセスが可能になるわけです。
(整数の場合、一秒以内に2回以上アクセスすると、タイムスタンプが同数なので、エラーになります。)

これでコインチェックとビットフライヤーとZAIFのWEB APIが使えるようになったので、業者間アービトラージの前段階が完了です。

Message

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

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

関連記事

no image

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

前置き ビットコイン、仮想通貨の自動売買を作る目的として、通常は個人的に利用するというものがほとん

記事を読む

仮想通貨取引所のチャット音声自動読み上げシステムを作る3 AJAXでリアルタイム表示させる

前回はbitFlyerのAPIから最新のチャットを取得するところまでやったので、 今回はそれをリア

記事を読む

How to create BTC trading systems with bitFlyer’s API(get rate, account info and trade)

As you may know, bitFlyer is one of the most popul

記事を読む

【ビットコイン】板情報で自動売買

面倒臭がって今まで見て見ぬふりをしてきたのですが、 APIで板情報が取れるんですよね。 最近

記事を読む

仮想通貨の自動売買 API vs UWSC

現在、WEB APIxPHPを使う方法とUWSCを使う方法を考察していますが、 実際に開発する

記事を読む

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

    各トピックに対するコメントは各記事のコメント欄にお願いします。それ以外のご質問、ご相談などは
    infoあっとfxantenna.com
    まで
    私の偽者がいるらしいのでご注意ください。
質問回答コラム

Q. 管理人さん自身はEAで運用しているのですか A.  して

【MT5】MACD, ストキャスティクス, モメンタムEA(配布)

GBPUSD 2018/1/1~2018/12/31 H2

【MT5】 3通貨相関アービトラージEA(無料プレゼント)

EUR, GBP, USD の3通貨の相関を利用したさや取りトレード

no image
仮想通貨対応マーチンゲールEA(無料配布)

USDJPY 2018/1/1~2018/12/31 Spread:

最適化なしで勝率98.31%()のトレードシステム【あげます】

GBPUSD D1 Spread:2 2018/1/1~2018/1

→もっと見る

PAGE TOP ↑