yfinance-雅虎财经获取金融数据-数据提供商-01013


yfinance 是一个流行的 Python 库,可用于从雅虎财经获取金融数据。虽然雅虎财经主要聚焦于全球金融市场,但也可以使用它来获取 A 股数据。以下是使用 yfinance 获取 A 股数据的详细步骤和示例代码:

安装 yfinance

在使用 yfinance 之前,需要先安装它。可以使用 pip 进行安装:

pip install yfinance

获取 A 股数据

要获取 A 股数据,需要使用股票的正确代码。在雅虎财经中,A股股票代码需要添加后缀 .SS(上海证券交易所)或 .SZ(深圳证券交易所)。

以下是一个示例代码,展示如何使用 yfinance 获取 A 股数据:

import yfinance as yf

# 定义要获取数据的 A 股股票代码,这里以贵州茅台(600519.SS)为例
stock_code = "600519.SS"

# 创建 Ticker 对象
stock = yf.Ticker(stock_code)

# 获取历史数据,可根据需要调整参数
# period 参数可以是 '1d', '5d', '1mo', '3mo', '6mo', '1y', '2y', '5y', '10y', 'ytd', 'max'
# interval 参数可以是 '1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1wk', '1mo', '3mo'
hist_data = stock.history(period="1y", interval="1d")

# 打印获取到的历史数据
print(hist_data)

代码解释

  1. 导入 yfinance:使用 import yfinance as yf 导入 yfinance 库,并将其重命名为 yf,方便后续使用。
  2. 定义股票代码:定义要获取数据的 A 股股票代码,需要在代码后面添加 .SS.SZ 后缀。
  3. 创建 Ticker 对象:使用 yf.Ticker(stock_code) 创建一个 Ticker 对象,用于表示该股票。
  4. 获取历史数据:使用 stock.history() 方法获取股票的历史数据。可以通过 period 参数指定数据的时间范围,通过 interval 参数指定数据的时间间隔。
  5. 打印数据:使用 print() 函数打印获取到的历史数据。

注意事项

  • 由于雅虎财经的数据可能存在延迟或不完整的情况,建议在使用数据进行分析时,结合其他数据源进行验证。
  • 某些数据可能需要付费才能获取,yfinance 只能获取雅虎财经公开的免费数据。