Loading ...

用Python获取Bibox上线交易对 k 线数据

Author: Queent, Created: 2020-12-15 16:29:47, Updated:

一、数据范围 只要在Bibox上线的交易对, 历史K线数据都可以提取。但是貌似最多只能提取1000条数据。 K线的频率可选范围还是满广的,支持1min 3min 5min 15min 30min 1hour 2hour 4hour 6hour 12hour day week。

二、步骤 1.引入库

import pandas as pd import requests

2.提取整理数据

#数据频率 #支持 1min 3min 5min 15min 30min 1hour 2hour 4hour 6hour 12hour day week d=[‘1min’, ‘3min’, ‘5min’, ‘15min’, ‘30min’, ‘1hour’, ‘2hour’, ‘4hour’, ‘6hour’, ‘12hour’, ‘day’, ‘week’] while True: period=input(‘输入数据频率:’) if period in d: break else: print(‘频率错误,请重新输入’) continue #数据长度 #在1-1000之间 while True: size=input(‘输入希望提取的数据长度,在1-1000之间:’) try: size=int(size) except: size=input(‘请重新输入’) if size in range(1,1001): break else: print(‘数据长度需在1-1000之前,请重新输入’) continue #想要提取的交易对信息 #用下滑线连接,如BTC_USDT. #因为交易对太多了,这里就没有写成 while loop。 pair=input(‘输入想提取的交易对:’)

#数据网址 url = f’https://api.bibox.com/v1/mdata?cmd=kline&pair={pair}&period={period}&size={size}’

header = { “User-Agent”: “Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36”, “X-Requested-With”: “XMLHttpRequest” }

r = requests.get(url, headers=header)

df = pd.read_json(r.text) df1=df.result.apply(pd.Series) df1[‘Date’]=pd.to_datetime(df1[‘time’], unit=‘ms’) df1=df1.iloc[:,1:] #df1中包含k线数据


More