这个仓库 efinance
是一个用于获取股票、基金、期货数据的免费开源 Python 库,旨在方便用户获取数据以服务于个人交易系统需求。以下是关于该仓库的详细介绍:
项目基本信息
- 作者:个人开发者
- 项目链接:Micro-sheep/efinance
- 文档链接:https://efinance.readthedocs.io
- 更新日志:changelog.md
安装方式
- 通过
pip
安装:
pip install efinance
- 通过
pip
更新:
pip install efinance --upgrade
- 通过
docker
安装:
# 克隆代码
git clone https://github.com/Micro-sheep/efinance
# 切换工作目录为该项目的根目录
cd efinance
# 构建镜像(-t 指定构建后生成的镜像名称 . 指定 build 的对象是当前工作目录下的 dockerfile)
docker build -t efinance . --no-cache
# 以交互的方式运行镜像(运行之后自动删除容器,如不想删除 则可去掉 --rm)
docker run --rm -it efinance
- 源码安装(用于开发):
git clone https://github.com/Micro-sheep/efinance
cd efinance
pip install -e .
代码结构
.env
.gitignore
.readthedocs.yaml
Dockerfile
LICENSE
README.md
changelog.md
docker-compose.yaml
pyproject.toml
requirements.txt
tea.yaml
tox.ini
docs/
api.md
conf.py
example.md
index.md
install.md
requirements.txt
examples/
bond.ipynb
fund.ipynb
futures.ipynb
stock.ipynb
efinance/
__init__.py
api/
bond/
common/
config/
fund/
futures/
shared/
stock/
utils/
核心功能示例
股票数据获取
- 获取股票历史日 K 线数据:
import efinance as ef
stock_code = '600519'
ef.stock.get_quote_history(stock_code)
该代码可获取指定股票(如贵州茅台,代码为 600519
)的历史日 K 线数据,包括开盘价、收盘价、最高价、最低价、成交量等信息。
- 获取非 A 股的股票 K 线数据:
import efinance as ef
stock_code = 'AAPL'
ef.stock.get_quote_history(stock_code)
支持输入股票名称以及代码,获取非 A 股股票(如苹果,代码为 AAPL
)的 K 线数据。
- 获取沪深市场指定股票前十大股东信息:
import efinance as ef
ef.stock.get_top10_stock_holder_info('600519', top=1)
可获取指定股票(如 600519
)的前十大股东信息,包括股东代码、股东名称、持股数、持股比例等。
- 获取沪深 A 股市场股东数目变化情况:
import efinance as ef
# 获取最新报告期的股东数目变化情况
ef.stock.get_latest_holder_number()
# 获取指定报告期的股东数目变化情况
ef.stock.get_latest_holder_number(date='2021-06-30')
可获取沪深 A 股市场最新公开的或指定报告期的股东数目变化情况,包括股东人数、股东人数增减、较上期变化百分比等信息。
容器化配置
仓库中包含 docker-compose.yaml
文件,用于定义和运行多容器 Docker 应用程序,通过以下配置可以构建和运行应用:
version: "3"
services:
app:
build:
context: .
# 环境变量文件
env_file: ./.env
# 项目工作目录(可在 .env 文件中找到定义)
working_dir: ${APP_WORKING_DIR}
综上所述,efinance
仓库提供了丰富的金融数据获取功能,支持多种安装方式,并具备容器化部署的能力,方便开发者进行金融数据的获取和处理。