【初心者向け】Zaif API×Pythonでプチフィンテック4 APIからの公開情報の収集

前回までの記事で仮想通貨の自動取引botの開発準備が整いましたので、今回からはZaif APIやPythonの使い方を紹介しながら、botの作成を徐々に進めて行きたいと思います。

さて、今回ですが、「API」という言葉のイメージが沸いていない方も多くいらっしゃると思いますので、Pythonによる開発は一旦おいておき、Webブラウザ経由でZaif APIを利用する方法を紹介したいと思います。

<スポンサーリンク>

Zaif APIの概要

Zaifが提供しているAPIはいわゆるWeb APIというもので、これを使うことにより、ブラウザがインターネット上の通常のサイトにアクセスする際の手順に従ってZaifのサービスを活用することができます。

そして、提供されているAPIはZaifのAPI仕様によると、①現物公開API、②現物取引API、③先物公開API、④レバレッジ取引APIの4つに分類されています。

本シリーズでは、現物取引の自動化を行うという前提のもと、①現物公開API、②現物取引APIの2種類を利用します

これら2つの概要は以下の通りです。

No. API 概要
現物公開API ・通貨ペアの取引価格や取引所全体の取引状況など、一般に公開されている情報を提供するAPI
・認証が不要
現物取引API ・発注/約定状況や資産状況など、個々の口座に紐づく情報を取得するためのAPI
・発注もこのAPIを利用して行う
・認証が必要

ブラウザ経由での公開情報の取得

それでは早速、ブラウザから公開情報を取得してみましょう。

例えば、特定通貨ペアの現在の終値(最後に取引された価格)を取得するためには、現物公開APIの中の「last_price」というものを使います。

実際にブラウザで、以下のURLにアクセスしてみましょう。

https://api.zaif.jp/api/1/last_price/btc_jpy

すると、ブラウザ上には以下のようにビットコインの現在の終値が表示されます。

{"last_price": 1312340.0}

別のAPIも試してみましょう。

現物公開APIの中には、取引所での取引状況を取得するAPIとして、「trades」というものがあります。

これを使って、今度はモナーコインの取引状況を取得したいと思いますが、そのためには以下のURLにブラウザでアクセスします。

https://api.zaif.jp/api/1/trades/mona_jpy

結果は次の通りです。

[{"date": 1516323789, "price": 729.0, "amount": 1.0, "tid": 95102009, "currency_pair": "mona_jpy", "trade_type": "ask"}, {"date": 1516323783, "price": 729.2, "amount": 6.0, "tid": 95101989, "currency_pair": "mona_jpy", "trade_type": "bid"}, {"date": 1516323776, "price": 729.0, "amount": 3.0, "tid": 95101974, "currency_pair": "mona_jpy", "trade_type": "ask"}, {"date": 1516323776, "price": 729.0, "amount": 20.0, "tid": 95101973, "currency_pair": "mona_jpy", "trade_type": "ask"},
・・・

少し見づらいですが、モナーコインの直近の取引状況に関して、取引時刻、価格、数量や取引種類(bid:買い、ask:売り)等の情報を取得することができました。

なお、見づらい原因は、出力される情報に「[ ]」や「{ }」といったかっこが付されているためですが、これはAPIが返す情報がJSON呼ばれるフォーマットに従っているためです。この形式については、別途紹介したいと思います。

さて、このようにZaif APIを活用することにより、Webブラウザ経由でZaifのサービスを利用することができることがお判りになったかと思います。

終わりに

公開情報をブラウザ経由で取得できることが分かったところで、次回はこれら情報を取得するPythonプログラムの作成方法を紹介したいと思います。

カテゴリ:フィンテック
<スポンサーリンク>

シェアする

フォローする