仮想通貨自動売買入門 PythonでbitFlyerAPIてすと①

仮想通貨自動売買したいいいいい
という事はおそらく多くの人が考えてるかなと思うので何番煎じかわかりませぬが、
なるべく丁寧に書いて差異化しようと思います◎
※投資は自己責任で!

動作・開発環境

OS:windows10
言語:Python3
Pythonの開発・動作環境:Jupyter notebook

さて、調べると多くの人はLinuxとかMac使ってそうな印象をうけました。
API使おうと思うと自然とターミナルのコマンドでいけるからなんですかね。
なのでwindowsでやりたいぼくちゃんはちょっとてこずりました。

APIとは

BitFlyerさんではAPI公開してくれてるので、自分のPCから
「いまオタクのBitCoinおいくらですか?」と聞くと
「80万だよ」
ってJSON形式で返してくれます。
これを使ってみなさん分析だとか自動売買していると。
超便利いいいいい試してみたいいいって思った方は↓からどうぞ

bitFlyer ビットコインを始めるなら安心・安全な取引所で

で、APIのページがこちら
https://bitflyer.jp/ja-jp/api
4つあって、
■bitFlyer Lightning API
ここで紹介されているAPIドキュメント書いてある事が基本できること
基本はここ見ればOK!
■bitFlyer Lightning API Playground
どんな返事くるかお試しできる。
ちょびっとサンプルコードものってる。
Pythonはのってない…
■chainFlyer API
よくわかないのだが、多分マインイングしたい人用??
■Echo API
法人用

となっております。チェケラッチョ!!(初めてつかった)

基本的な使い方

まずはドキュメントを見てみると…
https://lightning.bitflyer.jp/docs?lang=ja#http-public-api

はいはいなるほど… ふむふむ……
ってよくわかんねえ!! って僕はなりました。
本業プログラマな方はこれ読んで即わかるんですかね。
僕と同様にわからなかった人に向けておそらくつまずく箇所&ポイントをメモしておきます。

■エンドポイントURL
このURLは固定で、その後ろにAPI仕様にのっとって付け足すとそれなりの返事をしてくれるという、API使用する上での固定のパスみたいなもの。と理解した。
■回数制限
privteAPIは一分間に200回アクセスが上限
それ以上やったらアクセス制限される恐れがあるので、無限ループで短期間アクセスしまくるみたいな失敗しないようにね★ミ
■認証
privteAPIの使用にはkeyの発行が必要。
今回はまずはpublicAPIを使うので不要。いずれ追記します。
■PublicAPIの使い方
ドキュメントを読むと
GET /v1/getmarkets
ってリクエストしろみたいな事書いてあるけど、はい??ってなりました^p^
これはLinuxやMacのターミナルのコマンドにこのGETに相当するものがあり、
GET エンドポイントURL+/v1/getmarkes
としろという意味だとわかるのにそこそこかかった…
なにこれ常識なの??

これをJupyterつかってPythonで書くとこんなかんじ

無事取れてるようですね!!
APIドキュメントのGETに相当するのが”requests.get()”になります。
()の中に呼びたいAPIのURL書いてゲットすべし!
※コードは最後に一括で載せます。小分けにGistするのめんどいので

↑でとったのはどんな市場があるかを返してくれるAPIでした。
おそらく皆さん価格情報を取りたいと思うので次はTickerをリクエストしてみます。
取り方は “/v1/getticker”をエンドポイントにくっつけてrequest.get()です!

とれました!いえい!
今回はJSON形式で取得している結果をPython内用のデータに変化してます。
後で解析とかしたいですよねきっと??

さて、最後に通貨ペアの指定です。
これに一番手間取りました…
先ほどは “/v1/getticker”をエンドポイントにくっつけてrequest.get()したのですが、これは通貨ペアを指定していないので、デフォルトのBTC_JPYで取得しています。でももちろん他の通貨も取りたいですよね??僕はとりたい!!そしてドキュメントに書かれている一行。

クエリパラメータ

  • product_codeマーケットの一覧で取得できる product_code または alias のいずれかを指定してください。 省略した場合の値は BTC_JPY です。

引用:https://lightning.bitflyer.jp/docs?lang=ja#http-public-api

あい??
結局どうすればいいのおおおおおおおおお
となって3時間位リアルに悩んで結果、答えはこうでした。
GET エンドポイントURL/v1/getticker/?product_code=FX_BTC_JPY
この”?”をつける書き方とか一般てきなんですかね?知りませんでした。
実行すると。

こんな感じでとれました。超苦労したわ…

ちょっと疲れたのでひとまずここまで。
コードは↓

つづく。


“仮想通貨自動売買入門 PythonでbitFlyerAPIてすと①” への1件の返信

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です