证券宝www.baostock.com是一个免费、开源的证券数据平台(无需注册)。
提供大量准确、完整的证券历史行情数据、上市公司财务数据等。
通过python API获取证券数据信息,满足量化交易投资者、数量金融爱好者、计量经济从业者数据需求。
返回的数据格式:
pandas DataFrame类型,以便于用pandas/NumPy/Matplotlib进行数据分析和可视化。同时支持通过BaoStock的数据存储功能,将数据全部保存到本地后进行分析。支持语言:目前版本BaoStock.com目前只支持Python3.5及以上(暂不支持python 2.x)。
持续更新:BaoStock.com还在不断的完善和优化,后续将逐步增加港股、期货、外汇和基金等方面的金融数据,为成为一个免费金融数据平台努力。
分享优化:请通过微信、网站博客或者知乎文章等方式分享给大家,使它能在大家的使用过程中逐步得到改进与提升,以便于更好地为大家提供免费服务。
平台麦克:证券宝BaoStock.com从发布到现在,已经帮助很多用户在数据方面减轻了工作量,同时也得到很多用户的反馈。它将一如既往的以免费、开源的形式分享出来,希望给有需要的朋友带来一些帮助。
平台服务特点Baostock 平台的一些主要特点和服务:
数据覆盖范围广泛:Baostock 提供了广泛的金融数据,涵盖了中国A股市场的股票、指数、基金、期货等多个领域。用户可以获取到历史K线数据、财务报表、公司公告等各类金融信息。
数据接口多样:Baostock 提供了多种数据接口,包括Python、Java、C++等不同编程语言的接口,使得开发者可以更灵活地使用其提供的数据服务。用户可以通过 API 获取数据,进行进一步的数据分析和量化研究。
专业的数据分析工具:Baostock 平台提供了一系列专业的数据分析工具,帮助用户进行技术分析、基本面分析、资金流向分析等。这些工具能够辅助用户制定投资策略、进行风险管理和优化投资组合。
量化交易支持:Baostock 的数据服务也支持量化交易,用户可以通过平台获取实时市场数据,进行算法交易和策略回测。这使得投资者能够更加智能地执行交易策略,提高投资效益。
社区支持和文档资源:Baostock 平台拥有活跃的社区,用户可以在社区中分享经验、提问问题,并得到其他用户和 Baostock 官方团队的支持。此外,Baostock 提供了详细的文档资源,方便用户深入了解其数据服务和接口使用。
下载安装 方式1:pip install baostock使用国内清华源安装:
pip install baostock -i https://pypi.tuna.tsinghua.edu.cn/simple/ --trusted-host pypi.tuna.tsinghua.edu.cn方式2:访问 https://pypi.python.org/pypi/baostock 下载安装
python setup.py install或pip install xxx.whl
pip install baostock 注意:程序运行时,文件名、文件夹名不能是baostock。
版本升级pip install --upgrade baostock
使用前提:
安装Python
安装pandas(pip install pandas)
建议安装Anaconda,以免出现问题(Anaconda是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项,下载地址https://www.anaconda.com/download/)。
每日最新数据更新时间: 当前交易日17:30,完成日K线数据入库;第二自然日11:00,完成分钟K线数据入库;第二自然日1:30,完成前交易日“其它财务报告数据”入库;周六17:30,完成周线数据入库; 获取数据范围说明 股票数据 日、周、月K线数据,时间范围:1990-12-19至今。5、15、30、60分钟K线数据,时间范围:1999-07-26至今。 指数数据 日、周、月K线已经包含指数:综合指数,规模指数,一级行业指数,二级行业指数,策略指数,成长指数,价值指数,主题指数,基金指数,债券指数。时间范围:2006-01-01至今。 季频财务数据 已经包含的财务数据:部分上市公司资产负债信息、上市公司现金流量信息、上市公司利润信息、上市公司杜邦指标信息。时间范围:2007年至今。 季频公司报告 上市公司业绩预告信息,时间范围:2003年至今。上市公司业绩快报信息,时间范围:2006年至今。 Baostock 简易使用指南Baostock 是一个提供中国A股市场金融数据的强大工具,其最新版本提供了更为直观和便捷的登录方式。在本指南中,我们将一步步介绍如何使用 Baostock,包括安装、登录、获取数据和简单数据分析。
1. 安装 Baostock首先,确保您已经安装了最新版本的 Baostock 库。您可以使用以下命令通过 pip 进行安装:
pip install baostock2. 登录 Baostock
最新版本的 Baostock 现在提供了直观的登录方式。以下是登录 Baostock 的示例代码:
import baostock as bs # 登录系统 lg = bs.login() # 检查登录是否成功 if lg.error_code == '0': print("Baostock登录成功") else: print(f"Baostock登录失败,错误代码:{lg.error_code}, 错误信息:{lg.error_msg}")
图片
3. 获取 A 股股票列表Baostock 允许您直接获取 A 股市场的股票列表,无需进行注册。以下是获取股票列表的示例代码:
# 查询 A 股股票列表 stock_list = bs.query_all_stock(day="2022-01-01") print(stock_list)4. 获取股票历史K线数据
您可以使用 Baostock 获取特定股票的历史K线数据,无需进行登录。以下是获取股票历史K线数据的示例:
# 选择某一只股票,如平安银行(代码:sz.000001) code = "sz.000001" # 直接获取股票历史K线数据 k_data = bs.query_history_k_data_plus( code, "date,open,high,low,close,volume", start_date="2022-01-01", end_date="2022-12-31", frequency="d" ) print(k_data)5. 登出 Baostock
使用 Baostock 完成操作后,及时登出系统是个好习惯。以下是登出 Baostock 的示例代码:
import baostock as bs # 登出系统 lg = bs.logout() # 检查登出是否成功 if lg.error_code == '0': print("Baostock登出成功") else: print(f"Baostock登出失败,错误代码:{lg.error_code}, 错误信息:{lg.error_msg}")
这就是最新版本 Baostock 的简易使用指南。希望这能帮助您更快速、便捷地获取并分析 A 股市场的金融数据。如有其他问题或需求,请随时提出。
使用场景代码案例下面通过几个具体的例子来展示 Baostock 平台的使用场景:
1. 获取股票历史K线数据使用 Baostock 提供的接口,可以轻松地获取某只股票的历史K线数据。以下是使用 Python 接口的示例:
import baostock as bs # 登录系统 bs.login() # 选择某只股票,如平安银行(代码:sz.000001) code = "sz.000001" # 获取股票历史K线数据 k_data = bs.query_history_k_data_plus( code, "date,open,high,low,close,volume", start_date="2022-01-01", end_date="2022-12-31", frequency="d" ) # 输出结果 print(k_data) # 登出系统 bs.logout()2. 获取公司财务报表数据
Baostock 提供了获取公司财务报表的接口,可以帮助用户进行基本面分析。以下是获取公司财务报表数据的示例:
import baostock as bs # 登录系统 bs.login() # 选择某只股票,如平安银行(代码:sz.000001) code = "sz.000001" # 获取公司财务报表数据 financial_data = bs.query_profit_data(code, year=2021, quarter=3) # 输出结果 print(financial_data) # 登出系统 bs.logout()3. 使用Python进行简单数据分析
获取到的数据可以通过 Python 进行进一步的分析和可视化。以下是一个简单的例子,计算股票每日涨跌幅并绘制走势图:
import baostock as bs import pandas as pd import matplotlib.pyplot as plt # 登录系统 bs.login() # 获取股票历史K线数据 k_data = bs.query_history_k_data_plus( "sz.000001", "date,open,high,low,close,volume", start_date="2022-01-01", end_date="2022-12-31", frequency="d" ) # 将查询结果转换为数据框 df = k_data.get_data() # 将 'close' 列转换为浮点型 df['close'] = pd.to_numeric(df['close'], errors='coerce') # 计算每日涨跌幅 df['daily_return'] = df['close'].pct_change() # 绘制股价走势图和涨跌幅 plt.figure(figsize=(10, 6)) plt.plot(df['date'], df['close'], label='Close Price') plt.plot(df['date'], df['daily_return'], label='Daily Return', linestyle='--') plt.title('Stock Price and Daily Return') plt.xlabel('Date') plt.ylabel('Price/Return') plt.legend() plt.show() # 登出系统 bs.logout()
运行结果如下:
图片
这些例子展示了 Baostock 在获取金融数据和进行相关分析方面的强大功能,使得用户能够更加方便地进行股票研究、量化交易策略的制定等工作。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。