生活, 其他记录

使用AKShare库获取股票数据

很久之前写过一篇关于 Tushare 获取股票数据并进行股票回测的博文,由于 Tushare 库改为门槛比较高的积分制和收费制,使用起来很麻烦,因此目前不再推荐 Tushare 库,已把原博文删除。

除了 Tushare 库外,还有 Baostock 库可以获取股票数据。虽然 Baostock 库目前不需要注册和登录,但调用代码时实际上是用默认的匿名 API 账号和密码登录的,因此也存在类似于 Tushare 库转为收费的风险。

本篇推荐 AKShare 库来获取股票数据。这个库本质是爬虫,调用时获取各个权威网站的股票数据以及其他数据。该工具可以用于学术(经济/社会)研究的目的。具体使用方法见官网的说明。AKShare 官网:https://akshare.akfamily.xyz/。安装方法:pip install akshare --upgrade。

一个简单的代码示例:

import akshare as ak

stock_zh_a_hist_df = ak.stock_zh_a_hist(symbol="000002", period="daily", start_date="20170101", end_date='20250101', adjust="")
print(stock_zh_a_hist_df)

其他代码示例可以阅读:

以下是画出单个股票的价格波动数据的例子。其中,把一些常用代码集成到 Guan 软件包中,从而实现更加简洁的调用。Guan 软件包的安装:pip install guan --upgrade。网址:https://py.guanjihuan.com。这里同样也需要安装 AKShare 软件包。

Python代码为:

"""
This code is supported by the website: https://www.guanjihuan.com
The newest version of this code is on the web page: https://www.guanjihuan.com/archives/35979
"""

import guan

title, stock_data = guan.history_data_of_one_stock(symbol='000002', period='daily')
print(title)
print(stock_data[0])
num = 30
date_array = stock_data[0:num, 0]
opening_array = stock_data[0:num, 1]
closing_array = stock_data[0:num, 2]
high_array = stock_data[0:num, 3]
low_array = stock_data[0:num, 4]
guan.plot(date_array, closing_array, style='o-', xlabel='date', ylabel='price')
guan.plot_stock_line(date_array, opening_array, closing_array, high_array, low_array)

2023年12月30日运行的结果:

3,739 次浏览

【说明:本站主要是个人的一些笔记和代码分享,内容可能会不定期修改。为了使全网显示的始终是最新版本,这里的文章未经同意请勿转载。引用请注明出处:https://www.guanjihuan.com

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

Captcha Code