BaoStock:使用python的baostock接口,进行交易日查询,pythonbaostock, 在做量化分析


在做量化分析时,有时会用到股票的交易日信息,这些信息可以从上交所官网或深交所官网获取,从官网下载文件并不是很好的方法,如果能通过python接口下载,就可以放入程序中了,而BaoStock接口(官网:http://www.baostock.com)刚好提供了此功能(以下代码来自官网,侵删)。

根据官网介绍,交易日查询接口:query_trade_dates()。

方法说明:查询股票交易日信息信息,可以通过参数设置获取起止年份数据,提供2014-2018年数据。 返回类型:pandas的DataFrame类型。(作者注:2014年是最近新增的,原来只有2015-2018,接口是有人在维护的,可以从首页看到版本更新)

示例代码如下:

importbaostockasbsimportpandasaspd####登陆系统####lg=bs.login(user_id="anonymous",password="123456")#显示登陆返回信息print('loginresponderror_code:'+lg.error_code)print('loginresponderror_msg:'+lg.error_msg)####获取交易日信息####rs=bs.query_trade_dates(start_date="2017-01-01",end_date="2017-06-30")print('query_trade_datesresponderror_code:'+rs.error_code)print('query_trade_datesresponderror_msg:'+rs.error_msg)####打印结果集####data_list=[]while(rs.error_code=='0')&rs.next():#获取一条记录,将记录合并在一起data_list.append(rs.get_row_data())result=pd.DataFrame(data_list,columns=rs.fields)####结果集输出到csv文件####result.to_csv("D:\\trade_datas.csv",encoding="gbk",index=False)print(result)####登出系统####bs.logout()


参数含义:

start_date:开始日期,为空时默认为2015-01-01。

end_date:结束日期,为空时默认为当前日期。


打印结果如下所示:

技术分享图片



返回数据说明
参数名称参数描述
calendar_date日期
is_trading_day是否交易日(0:非交易日;1:交易日)


可以看到,1是交易日;0非交易日。

返回类型是DataFrame类型,很方便处理,赞一个,希望帮到大家。



BaoStock:使用python的baostock接口,进行交易日查询

评论关闭