baostock量化对数据的下载其实就是通过计算的方式去决策股票的买卖。目前根据量化计算方式其实跟量子计算一点关系都没有。那么,都说在股票量化交易过程中,可以利用l2股票接口来获取策略选股的方案是很普遍的,利用数据接口下载十档行情,就能探知当前市场状态,是多或空等来判断,需要执行python股票日行情接口开发者在优化多空指标设定的时候,便以非多即空的基本模型为主 ,就能很快的了解和掌握股票行情了,baostock量化具体又是如何下载十档行情数据的呢?
例如根据baostock量化的开发L2接口的功能来参考:
(1)数据说明:
交易所 | 数据类型 |
上交所 | 十档行情快照(Level-2) |
委托队列(Level-2) | |
逐笔成交(Level-2) | |
深交所 | 十档行情快照(Level-2) |
逐笔委托(Level-2) | |
委托队列(Level-2) | |
逐笔成交(Level-2) | |
沪深交易所 | 期权、可转债 |
(2)消息类型:
消息 | 说明 |
TickRecord | 逐笔成交 |
OrderRecord | 逐笔委托 |
OrderQueueRecord | 委托队列 |
StockQuoteRecord | 股票十档行情 |
(3)参考代码:
import pandas as pd
def fenshishuju_dfcf(daima):
if daima[:2] == "sh":
lsbl = '1.'+daima[2:]
else:
lsbl = '0.' + daima[2:]
wangzhi = "http://push2his.eastmoney.com/api/qt/stock/trends2/get?&fields1=f1%2Cf2%2Cf3%2Cf4%2Cf5%2Cf6%2Cf7%2Cf8%2Cf9" \
"%2Cf10%2Cf11%2Cf12%2Cf13&fields2=f51%2Cf52%2Cf53%2Cf54%2Cf55%2Cf56%2Cf57%2Cf58&" \
"ut=7eea3edcaed734bea9cbfc24409ed989&ndays=1&iscr=0&secid="+lsbl+ \
"&_=1643253749790"+str(time.time)
resp = requests.get(wangzhi, timeout=6)
# print (resp) #打印请求结果的状态码
data = json.loads(resp.text)
shuju = {'日期时间': [], '最新价': [], '均价': [], '成交额': []}
for k in data['data']['trends']:
lsbl = k.split(",")
shuju['日期时间'].append(lsbl[0])
shuju['最新价'].append(lsbl[2])
shuju['均价'].append(lsbl[-1])
shuju['成交额'].append(lsbl[-2])
shuju = pd.DataFrame(shuju)
print(shuju)
return shuju
if __name__ == '__main__':
while 1:
fenshishuju_dfcf('sh603102')
time.sleep(3);
执行示例:
也就是说,baostock量化是通过l2接口下载十档行情数据,但前提需要开发者懂得怎样去参考开发文档去完善获取数据的办法,理解之后,那自然也就方便多了。如果大家在操作过程中出现疑问或难题,也可以Q一下方反馈或者建议,不断的完善和升级系统的个性化服务。