金融数据---ETF日线行情数据
数据来自东方财富
使用 AkShare 获取 ETF 基金历史数据的详细教程
概述
本教程将详细介绍如何使用 Python 的 AkShare 库获取 ETF 基金的历史数据。我们将使用 fund_etf_hist_em
函数从东方财富网获取数据。
安装 AkShare
首先,确保你已经安装了 AkShare 库。如果尚未安装,可以使用以下命令安装:
pip install akshare
代码分析
import akshare as ak# 设置参数
symbol = "513100" # ETF 基金代码,例如 513100 是纳指ETF
period = "daily" # 数据周期:daily-日线, weekly-周线, monthly-月线
start_date = "19700101" # 开始日期,格式为 YYYYMMDD
end_date = "20500101" # 结束日期,格式为 YYYYMMDD
adjust = "" # 复权类型:""-不复权, "qfq"-前复权, "hfq"-后复权# 获取数据
df = ak.fund_etf_hist_em(symbol=symbol,period=period,start_date=start_date,end_date=end_date,adjust=adjust
)# 打印数据
print(df)
参数说明
- symbol (字符串):
- ETF 基金代码
- 示例: "513100" (纳指ETF), "510300" (沪深300ETF)
- period (字符串):
- 数据周期类型
- 可选值: "daily" (日线), "weekly" (周线), "monthly" (月线)
- start_date (字符串):
- 数据开始日期
- 格式: "YYYYMMDD" (年月日)
- 如果基金上市日期晚于开始日期,将返回从上市日开始的数据
- end_date (字符串):
- 数据结束日期
- 格式: "YYYYMMDD" (年月日)
- 如果结束日期晚于当前日期,将返回到最新可用日期的数据
- adjust (字符串):
- 复权类型
- 可选值: "" (不复权), "qfq" (前复权), "hfq" (后复权)
返回数据说明
函数返回一个 pandas DataFrame,包含以下列:
- 日期 (date): 交易日期
- 开盘 (open): 开盘价
- 收盘 (close): 收盘价
- 最高 (high): 最高价
- 最低 (low): 最低价
- 成交量 (volume): 成交量(手)
- 成交额 (amount): 成交额(元)
- 振幅 (amplitude): 振幅百分比
- 涨跌幅 (change_percent): 涨跌幅百分比
- 涨跌额 (change_amount): 涨跌额
- 换手率 (turnover_rate): 换手率百分比
数据结果
日期 开盘 收盘 最高 最低 成交量 成交额 振幅 涨跌幅 涨跌额 换手率
0 2013-05-15 0.990 0.997 0.999 0.989 877116 87379278.0 1.00 -0.40 -0.004 0.93
1 2013-05-16 0.997 0.999 0.999 0.994 265570 26501420.0 0.50 0.20 0.002 0.28
2 2013-05-17 0.999 0.997 1.000 0.996 36379 3630062.0 0.40 -0.20 -0.002 0.04
3 2013-05-20 1.002 0.997 1.004 0.996 80490 8033039.0 0.80 0.00 0.000 0.09
4 2013-05-21 0.997 0.997 0.998 0.994 161124 16023195.0 0.40 0.00 0.000 0.17
... ... ... ... ... ... ... ... ... ... ... ...
2996 2025-09-08 1.698 1.696 1.699 1.694 2489904 422336578.0 0.29 -0.29 -0.005 2.63
2997 2025-09-09 1.698 1.701 1.701 1.696 3196478 542998716.0 0.29 0.29 0.005 3.38
2998 2025-09-10 1.704 1.711 1.711 1.704 2657639 453939668.0 0.41 0.59 0.010 2.81
2999 2025-09-11 1.707 1.708 1.709 1.703 2891104 493321883.0 0.35 -0.18 -0.003 3.05
3000 2025-09-12 1.713 1.714 1.715 1.712 1590274 272498566.0 0.18 0.35 0.006 1.68[3001 rows x 11 columns]