R筋

プログラミング、金融、育児

【python】bitflyerのAPIを操作 public API・chat編

コインチェックの流出事件から1週間がたちました。この事件を発端にネム以外の仮想通貨も乱高下しています。世の中の大半はそこまで混乱していないみたいですが、コインチェックにお金を預けていた人はもちろん、コインチェック以外の取引所でも仮想通貨の取引をしている人達はまだまだスリリングな日々を過ごしていることでしょう。
bitflyerのチャット履歴を取得して関係各位の混乱を確認いたしましょう。

今回は、チャットに様々な文字列が入ってくるせいで、Rを使うとエラーが起きやすくpythonで取得することにしました。pythonはpybitflyerというbitflyeAPIを簡単に取得できるパッケージがあるため、こちらを使います。

import pybitflyer
api=pybitflyer.API()
chat = api.getchats()
print(chat)

[{'nickname': '実穂ノア♚world🍀LOVE💑', 'message': '皆で稼ぐw', 'date': '2018-01-30T01:29:43.68'}, {'nickname': 'はじめてのお取引', 'message': 'おわりじゃああビットのおわりじゃあ', 'date': '2018-01-30T01:29:44.993'}, {'nickname': '利確', 'message': '現物', 'date': '2018-01-30T01:29:45.92'}, {'nickname': 'こころぴょんぴょん🐰', 'message': 'ぴょぴょんぴょん🐰', 'date': '2018-01-30T01:29:46.793'}, {'nickname': '大根38円', 'message': 'mecyべえww', 'date': '2018-01-30T01:29:48.607'}, {'nickname': 'からだすこやかちゃ〜', 'message': '濃いや', 'date': '2018-01-30T01:29:50.08'}, {'nickname': 'Lチキン', 'message': 'Low', 'date': '2018-01-30T01:29:53.083'}, {'nickname': 'てやんでぃ', 'message': 'あがるパワーはない', 'date': '2018-01-30T01:29:55.963'}, {'nickname': 'みどり🍀', 'message': 'てかリバるんかこれ?www', 'date': '2018-01-30T01:29:56.09'},......

こちらもjson形式で、発言時間、名前、発言内容がとれます。
途中で省略しましたがパラメータを指定しない場合5日前からの発言を取得しますので40メガバイトほどのデータでした。
pandasで整形しています。

import pandas as pd
chat2 = pd.DataFrame(chat)

f:id:anpontan382:20180204120414p:plain
f:id:anpontan382:20180204120453p:plain

5日間で30万件のデータでした。
うーむ内容ゼロ!

コインチェック”,"coincheck","CC"の文字列を含む発言を取り出します。

chat2[chat2["message"].str.contains('コインチェック')|chat2["message"].str.contains('coincheck')|chat2["message"].str.contains('CC')]

f:id:anpontan382:20180204121527p:plain

3,772件でした。
5日間の全履歴の内、約1%はコインチェック関連の発言ということですね。

ちなみに、一番書き込みしている人は誰かを調べてみましたら、

chat2["nickname"].value_counts()

いなごflyer 6105
First order 2913
スキャルプD@バイオプ 2573
チョレイ 2517
☺🐰🐈 Sofia🕊@sofia_bitfx🐮🐻@ピコ 2435

「いなごflyer」さんが圧倒的なコメント量でした。
気になって「いなごflyer」で検索すると、こんなサイトが
inagoflyer.appspot.com
どうやら世界中の取引所の売り数量・買い数量を比較できるようです。取引所ごとにAPIを取得しなくても、すべて見れるというのが凄いですね。また、一定のボリュームを超えたときに音で教えてくれるみたいです。
これを見ながら一気に大きな圧力がかかった方向に便乗する短期売買をしてみるのも楽しいかもね。