一文读懂量化数据efinance

简介

  • efinance 是一个用于获取股票、基金、期货、债券数据的免费开源 Python 库。从源代码可以看出,其主要基于东方财富网的api获取数据。虽然本身并没有提供数据服务,但其提供的功能已经比较多了,包括同时支持多股票请求,支持日k、周k、月k、60分钟、30分钟、15分钟、5分钟、1分钟k线数据等。

使用pip安装或更新:

pip install efinance

更新

pip install efinance --upgrade

安装后在命令行运行python -c "import efinance as ef” ,不报错则表明安装成功。

常见用法

使用前需要"import efinance as ef” 导入efinance库才能正常使用该库的各种功能

获取股票数据

  1. 获取A股历史日 K 线数据。支持同时获取多股票数据,支持日k、周k、月k、60分钟、30分钟、15分钟、5分钟、1分钟k线数据等

ef.stock.get_quote_history(stock_codes=['600519','300750'], beg='20220901', end='20221015', klt=60)
  1. 获取港美股的股票 K 线数据(支持输入股票名称以及代码)

ef.stock.get_quote_history('AAPL')
ef.stock.get_quote_history('微软')
ef.stock.get_quote_history('腾讯')
  1. 获取 ETF K 线数据,以中概互联网 ETF 为例说明

ef.stock.get_quote_history('513050')
  1. 沪深市场 A 股最新状况

ef.stock.get_realtime_quotes()
  1. 股票龙虎榜

ef.stock.get_daily_billboard()
  1. 沪深 A 股股票季度表现。默认为最新季度,也可以指定季度

ef.stock.get_all_company_performance()
  1. 股票历史单子流入数据(日级)

>>> import efinance as ef
>>> ef.stock.get_history_bill('300750')
  1. 股票最新一个交易日单子流入数据(分钟级)

>>> import efinance as ef
>>> ef.stock.get_today_bill('300750')

获取期货数据

  • 获取交易所期货基本信息: ef.futures.get_futures_base_info()

  • 获取期货历史行情: ef.futures.get_quote_history('115.ZCM')

获取基金数据

  • 获取基金历史净值信息: ef.fund.get_quote_history('161725')

  • 获取基金公开持仓信息: ef.fund.get_invest_position('161725')

  • 同时获取多只基金基本信息: ef.fund.get_base_info(['161725','005827'])

获取可转债数据

  • 获取可转债整体行情:ef.bond.get_realtime_quotes()

  • 获取全部可转债信息:ef.bond.get_all_base_info()

  • 获取指定可转债 K 线数据:ef.bond.get_quote_history('128053')

结论

efinance是一个用于获取股票、基金、期货、债券数据的免费开源的 Python 库, 其功能非常强大:

  • 支持股票数据获取。可以同时获取多股票数据,支持日k、周k、月k、60分钟、30分钟、15分钟、5分钟、1分钟k线数据等; 支持获取港美股的股票 K 线数据(支持输入股票名称以及代码);支持获取 ETF K 线数据;支持获取沪深市场 A 股最新状况等

  • 支持期货数据获取。 可以获取交易所期货基本信息和期货历史行情

  • 支持获取基金数据。可以获取基金历史净值信息,基金公开持仓信息等

  • 支持获取可转债数据。可以获取可转债整体行情,可转债 K 线数据等

当然,我们也可以根据自己需要对efinance进行改造,增加更多有用的功能。

交流

关注微信公众号:诸葛说talk,获取更多相关内容。同时还能获取邀请加入量化投资研讨群, 与众多从业者、技术大牛一起交流、切磋,名额有限,不要错过。

写文章不易,觉得本文对你有帮助的话,帮忙点赞转发赞赏,让笔者有坚持写好文章的动力。

参考

### 使用Python进行量化交易平台获取市场数据 在现代金融市场中,投资已成为个人和机构追求财富增长的重要手段。为了有效进行量化交易,获取高质量的市场数据至关重要。以下是几种常用方法及库来实现这一目标。 #### 1. 利用Efinance库获取金融数据 `efinance` 是一个专门为中文投资者设计的强大工具,能够方便快捷地抓取沪深股市行情、财务指标等公开信息[^2]。下面是一个简单的例子展示如何通过该库下载特定时间段内的某只股票的历史收盘价: ```python import efinance as ef stock_code = '000001' # 平安银行代码为例 df = ef.stock.get_quote_history(stock_code) print(df.head()) ``` 这段代码会返回包含日期、开盘价、最高价、最低价等多个字段的数据框对象 `DataFrame` ,便于后续处理分析。 #### 2. 借助Tushare接口访问更广泛资源 除了本地爬虫外,还可以考虑注册并申请 Tushare Pro API Key 来调用其提供的各类服务。相比其他方式而言,这种方式具有更新及时性强、覆盖面广等特点,在实际项目开发中有广泛应用场景[^1]。 安装依赖包: ```bash pip install tushare ``` 编写脚本来读取指定证券品种的基础资料以及日K线记录: ```python import tushare as ts pro = ts.pro_api('your_token_here') # 获取个股基本信息 basic_info = pro.stock_basic(ts_code='000001.SZ', fields='ts_code,symbol,name,area,industry,list_date') # 查询历史行情 daily_data = pro.daily(ts_code='000001.SZ', start_date='20230101', end_date='20231231') ``` 以上两种途径均能很好地满足日常研究需求;当然还有更多第三方平台可供选择,比如 Yahoo Finance 、 Quandl 等国际知名站点也提供了相应的 SDK 或 RESTful Web Service 接口供开发者集成到自己的应用程序当中去。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值