ZaifのAPIを使って現在価格を取り出してみよう
先日、仮想通貨が全面的に大下落しました。
その時にオンライン取引所のサーバが込み合い注文が通らない、あるいはページ自体閲覧できないできない状態となりました。買いのタイミングであれば損失はありませんが、売りのタイミングでこうなってしまうと大損害です。
そこで、今回はZaifのAPIを使って現在価格などを取得してみようと思います。
最終的には取引もできたらと思いますが、現在ZaifではAPIキーに関してごちゃごちゃしているようなので未定です。
現在の価格を取り出す
現在価格を取り出すにはAPIキーは必要ありません。特定のURLを叩くだけで取得できます。
サンプルコードを見てみる
Zaifでサンプルコードが公開されているのでまずこちらを見てみましょう。
import requests import json response = requests.get('https://api.zaif.jp/api/1/last_price/btc_jpy') if response.status_code != 200: raise Exception('return status code is {}'.format(response.status_code)) json.loads(response.text)
1,2行目は必要なライブラリのインポートです。インストールしていない場合はpipでインストールしておきます。
import requests import json
3行目が円建てのビットコインの価格を取得している箇所です。GETメソッドで取得しています。
[currecy_pair]の部分に通貨を指定します。ビットコインの場合はbtc_jpyとなります。
response = requests.get('https://api.zaif.jp/api/1/last_price/[currecy_pair]')
4,5行目はレスポンスのHTMLステータスを見て成功以外のステータスの場合例外を発生させています。
6行目はレスポンスのボディ部分を取り出しています。json形式で返ってきます。
{"last_price": 130065.0}
下記のように書くと返ってきたjsonを辞書型でいいかんじに変換してくれます。あとはキーを指定すれば値を取得できます。
import requests import json response = requests.get('https://api.zaif.jp/api/1/last_price/btc_jpy') if response.status_code != 200: raise Exception('return status code is {}'.format(response.status_code)) r = response.json() print(r["last_price"])
130065.0
ビットコイン以外の価格を取り出す
ビットコイン以外の通貨を取り出すには[currecy_pair]にどのように指定すればいいのでしょうか。
取得できる通貨を調べてみます。
import requests import json response = requests.get('https://api.zaif.jp/api/1/currency_pairs/all') r = response.json() for i in range(len(r)): print(r[i]["currency_pair"])
cicc_btc xem_btc bitcrystals_btc mona_btc mosaic.cms_jpy xem_jpy sjcx_btc jpyz_jpy pepecash_btc zaif_jpy mona_jpy bch_jpy fscc_jpy xcp_jpy fscc_btc cicc_jpy pepecash_jpy xcp_btc erc20.cms_jpy ncxc_jpy bch_btc eth_btc btc_jpy eth_jpy zaif_btc bitcrystals_jpy sjcx_jpy ncxc_btc
このように指定することで有効な通貨ペアをすべて取得できます。
response = requests.get('https://api.zaif.jp/api/1/currency_pairs/all')
現在、28ペアの価格が取得できるようなので、試しにXEMの価格を取得してみましょう。
import requests import json response = requests.get('https://api.zaif.jp/api/1/last_price/xem_jpy') if response.status_code != 200: raise Exception('return status code is {}'.format(response.status_code)) print(response.json()["last_price"])
100.02
2018年もよろしくお願いいたします
皆様、あけましておめでとうございます。
目標は口に出してしまうとやる気がなくなるタイプなので、心に秘めて2018年惰性で頑張っていこうと思います。
今年もとりとめもない記事を書いていくとは思いますが、ブログおよび筆者共々どうぞよろしくお願い致します。
仮想通貨は簡単に掘れました-仮想通貨マイニング
巷でブームの仮想通貨。 仮想通貨はよく分からないけど欲しいな。
そんな人でも大丈夫。仮想通貨をマイニングしてみました。 パソコンさえあれば凄く簡単にできるので是非みなさんもマイニングしてみませんか?
メールアドレスだけを登録し、ソフトをインストールしてどの通貨をマイニングするか選択するだけの簡単操作です。
必要なもの
必要なものはこの2つ。実質1つです。
- パソコン
- メールアドレス(登録用)
以上です。個人情報や銀行口座は必要ありません。
マイニングソフトを入手する
仮想通貨をマイニングするためにソフトを入手しましょう。 今回はMinerGateを使用します。
MinerGateに登録
MinerGateのサイトへアクセスします。サイトはこちらです。
画面右上の「Sign up」をクリックします。
続いて、メールアドレスとパスワード、確認用にもう一度パスワードを入力します。 「私はロボットではありません」にチェックをして「Sign up & start mining」をクリックします。
登録は以上で完了です。簡単!
マイニングソフトをインストール
登録が完了すると次のような画面になります。 ご自身が使っているパソコンと同じバージョンのものを選択してソフトをダウンロードします。
Windows7以降で64bitの場合は上、32bitの場合は下を選択します。
インストールは設定を変えずに進めて大丈夫です。
仮想通貨を掘ろう!
とりあえずマイニングしてみよう
さっそく仮想通貨をマイニングしていきましょう。 ソフトを起動すると初回はログインを求められます。
先ほど登録したメールアドレスを入力し、「Start mining」をクリックします。
「Start smart mining」というボタンが表示されます。
このボタンを押すと、ご自身のパソコンと採掘量を鑑みて最適な通貨を選択して採掘を開始してくれます。
通貨を選択してマイニングする
もちろん自分で通貨を選択してマイニングすることもできます。 金槌のボタンをクリックするとマイニングできる通貨一覧が表示されます。
ところで、マイニングする方法として2つあり、CPUとGPUを使う方法があります。
CPUは所謂Corei7などの中央演算処理装置。必ずどのパソコンにも搭載されているものです。 GPUはグラフィック専門の処理装置です。 ゲーミングパソコンには搭載されていますが、一般的なパソコンには搭載されていません。
ということで、CPUを使ってXMR(Monero)をマイニングしてみます。 使用するCPUのコア数を選択します。
MAXで使ってしまうとパソコンが重くなるのでコアは1つは残しておきます。 コア数を選択したら「Start mining」をクリックします。
マイニングがはじまりました。 「H/s」の数字は処理数なので数値が大きいほどマイニングできていることになります。
CPUとGPU両方でマイニングするとこのようになります。
GPUが搭載されていない場合はボタンをクリックできません。 搭載されていても通貨によっては性能が足らず赤色でハイライトされる場合もあります。
おや?マイニングした記憶がない通貨がマイニングされてる?
マイニングしていると他の通貨も一緒にマイニングするものがあります。 例えばMoneroをマイニングしていると一緒にFantomCoinもマイニングされます。 これは一緒のアルゴリズムを使ってついでに他の通貨もマイニングしちゃおうということで自動でマイニングされます。
いくつマイニングしたか確認
いくつマイニングできたか確認するには、MinerGateのウェブサイトへ行き「Dashboard」をクリックします。 するとマイニングした仮想通貨の一覧が表示されます。
一番上のAccount statusのAccount balanceがマイニングした総量です。 数値はビットコインで換算して表示されているので、矢印マークをクリックするとドルなどに変更できます(実際に換金されたりはしません)。
Total minedもマイニングした総量ですが、こちらは未認証(後述)を含む総量です。
主な数値
通貨名の右にある数値
承認済みのマイニングした仮想通貨の総量です。 その右側の数値はビットコイン相当量です。単位をドルなどに変更できます。
Youの右にある数値
現在マイニング中のハッシュ数です。パソコンの性能が高いほどこの値が大きくなります。 マイニング中の場合ステータスはOnlineになります。
Unconfirmed
未承認のマイニングした仮想通貨の量です。単位はその通貨の単位です。 一定量マイニングすると認証され自身のものになります。 どれだけマイニングすれば認証されるかは各通貨によって異なります。
Total mined
マイニングした仮想通貨の総量です。単位はその通貨の単位です。
Good shares
成功したマイニング数です。
Bad shares
失敗したマイニング数です。
以上
手順としては、MinerGateへメールアドレスを登録、ソフトをインストールしてボタンを押すだけという簡単なものでした。
採掘した通貨を換金するには一定量採掘する必要がありますが、その量を満たすまで時間がかかるのでコツコツと採掘する必要があります。
出金可能な量を採掘出来たら換金方法について記事を書こうと思います。それまでコツコツとパソコンに頑張ってもらおうと思います。