前稿で、pythonを使って1ALISいくらかをYobitで調べる方法を書きました。
AvacusでのALISの価格を調べる方法がわかったので、以下に記載します。
以下のように、https://apis.avacus.io/2/market/rates?fiat=jpy¤cy=alis にアクセスすると、json形式で結果が返ってきます。
この結果をプログラムでつかまえればいいです。
前稿のプログラムを修正しました。
#
# xalis_j.py - 1ALISいくらかを表示する。
# 1. YobitでXALIS/USDを取得する。
# 2. YahooファイナンスからUSD/JPYを取得する。
# 3. XALIS/JPY(Yobit)を表示する。
# 4. AvacusからALIS/JPYを取得して表示する。
# 5. YobitでALISの板情報を取得して表示する。
#
import yobit_api
from bs4 import BeautifulSoup
import urllib.request as req
# YobitでXALIS/USDを取得する。
res = yobit_api.PublicApi().get_pair_ticker(pair="xalis_usd")
xalis_usd = res.get("last") # 最新の約定価格
#print("XALIS/USD=", xalis_usd)
# YahooファイナンスからUSD/JPYを取得する。
url = "https://stocks.finance.yahoo.co.jp/stocks/detail/?code=usdjpy"
res = req.urlopen(url)
soup = BeautifulSoup(res, "html.parser")
usd_jpy = float(soup.select_one(".stoksPrice").string)
#print("USD/JPY=", usd_jpy)
# XALIS/JPYを表示する。
print("ALIS/JPY(Yobit) =", xalis_usd * usd_jpy)
# AvacusからALIS/JPYを取得して表示する。
url = "https://apis.avacus.io/2/market/rates?fiat=jpy&currency=alis"
res = req.urlopen(url)
soup = BeautifulSoup(res, "html.parser")
json = eval(soup.string)
print("ALIS/JPY(Avacus)=", json["data"][0]["alis_jpy"])
# YobitでALISの板情報を取得して表示する。
res = yobit_api.PublicApi().get_pair_depth(pair="xalis_usd")
print("売り気配 買い気配")
print("-----------------------")
for i in range(10):
print("{0:.8f}".format(res["asks"][i][0] * usd_jpy), "{0:.8f}".format(res["bids"][i][0] * usd_jpy))
ついでに、YobitでのALISの板情報を取得して表示するようにしてみました。Yobitの板情報XALIS/USDを日本円単位にしています。ソース内の「&」は小文字にしてください。
pythonの書式付き表示の方法がよくわかりません...。C言語のprintf()みたいに動いてくれません。右寄せして桁を揃えたいんですが。詳しい方、教えてくださいませ。
以上