You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python yfinance的auto_adjust=True参数功能存疑:全OHLC还是仅收盘价?

yfinance中auto_adjust=True的具体作用

结论:auto_adjust=True会调整所有OHLC(开盘价、最高价、最低价、收盘价)价格,同时会移除原本的Adj Close列——因为此时收盘价已经是复权后的数值。

可以通过实际测试验证这一点:

import yfinance as yf

# 下载未复权数据
data_raw = yf.download("AAPL", start="2023-01-01", end="2023-01-05", auto_adjust=False)
print("未复权数据列:", data_raw.columns.tolist())
print("未复权收盘价:", round(data_raw['Close'].iloc[-1], 2))
print("官方复权收盘价:", round(data_raw['Adj Close'].iloc[-1], 2))

# 下载自动复权数据
data_adj = yf.download("AAPL", start="2023-01-01", end="2023-01-05", auto_adjust=True)
print("\n自动复权数据数据列:", data_adj.columns.tolist())
print("复权后收盘价:", round(data_adj['Close'].iloc[-1], 2))
print("复权后开盘价:", round(data_adj['Open'].iloc[-1], 2))

运行后会发现:

  • 自动复权后的Close值和未复权数据里的Adj Close完全一致;
  • 复权后的Open、High、Low也都按照相同的复权比例进行了调整,并非只修改收盘价。

yfinance的这个参数逻辑是基于分红、拆股等事件对所有价格维度做统一复权,确保整个价格序列能准确反映股票的实际收益情况。StackOverflow那篇帖子的说法不准确,大概率是测试时的疏漏或者基于旧版本的yfinance(早期版本可能存在差异)。

内容的提问来源于stack exchange,提问作者amp1590

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 09:27:08