板一覧をGET
ブラウザのアドレスバーにアドレスを入れてデータを得る
アドレスバーに貼り付けるだけ→https://api.bitflyer.jp/v1/getboard

何やらもの凄いデータ量です、赤丸のスクロールバーから推測して30画面スクロールくらいありそう。
ではプログラムでデータを取りましょう
import requests
import pprint
def getdata():
url="https://api.bitflyer.com"
path="/v1/getboard"
return (requests.get(url+path).json())
pprint.pprint(getdata())
結果は無限に続いてるようなデータの山
{'asks': [{'price': 797449.0, 'size': 0.679},
{'price': 797488.0, 'size': 0.5644},
{'price': 797490.0, 'size': 0.214998},
{'price': 797500.0, 'size': 2.3447},
{'price': 797519.0, 'size': 0.1},
{'price': 797539.0, 'size': 0.1},
{'price': 797565.0, 'size': 0.1},
・・・・・・・・・・・・続く
データ形式は{辞書[リスト{辞書データ2個}]}が基本形のようです。
‘asks’というキーで{‘price’: 797449.0, ‘size’: 0.679}が大量に入った
リスト[]が得られるようです。
‘asks’以外にもキーはあるか調べます。
import requests
def getdata():
url="https://api.bitflyer.com"
path="/v1/getboard"
return (requests.get(url+path).json())
board=getdata()#後処理用に一旦変数に入れる
for keys in board.keys(): #**1 データ群{board}にキーが有るだけ繰り返す
print(keys) #キーをprint
mid_price bids asks
3種類あるようです。
次にそれぞれの個数を調べる。
mid_priceはデータが1個しかなく、lenでカウントできない
import requests
import pprint
def getdata():
url="https://api.bitflyer.com"
path="/v1/getboard"
return (requests.get(url+path).json())
board=getdata()
print('midprice =',board['mid_price'])
print('asks 件数',len(board['asks']))
print('bids 件数',len(board['bids']))
midprice = 797820.0 asks 件数 1283 bids 件数 1604
真ん中のmidprice=中値810053を挟んで
上側にasks=売り板が1283件

下側にbids=買い板が1604件
ボットで扱うデータ、{‘price’: 797449.0, ‘size’: 0.679},が3000件も出力されるんじゃ訳和歌山県
しかし、勝てるBOTプログラマーはこのデータをプログラム中で使いこなしているのだ。
板とは
板が厚い方に値は動きやすい。(株など、BTCは無法者なので?)
板が薄い方に大量の売買を仕掛けられると値段が吹っ飛ぶ。
#**1 : データ群{board}にキーが有るだけ繰り返す
for keys in board.keys():
boadというJsonデータの中に、辞書のキーを調べる(探す)関数(正確にはオブジェクトのメソッド)で、辞書のキーがあればkeysに代入して
print(keys) それをprintする
これをboardデータ内にキーがなくなるまで繰り返す。
mid_price
bids
asks
ここでは3つ見つかった。