1. 获取股票历史行情数据
任务目标
使用 yfinance 获取苹果公司(AAPL)近一年的历史日线行情数据,将数据保存为 CSV 文件,并验证文件内容完整可读。
环境依赖
需要安装 yfinance 和 pandas:
pip install yfinance pandas
完整代码
import yfinance as yf
import pandas as pd
# 下载 AAPL 近一年日线数据
ticker = "AAPL"
df = yf.download(ticker, period="1y", interval="1d", auto_adjust=True)
# 重置索引,将日期从索引变为普通列
df.reset_index(inplace=True)
# 保存为 CSV
csv_path = "aapl_history.csv"
df.to_csv(csv_path, index=False, encoding="utf-8-sig")
print(f"数据已保存至: {csv_path}")
print(f"共 {len(df)} 条记录")
print("前3行数据预览:")
print(df.head(3))
运行方式
将上述代码保存为 fetch_stock_data.py,在命令行执行:
python fetch_stock_data.py
验证方法
- 程序正常结束,无报错输出。
- 当前目录下生成
aapl_history.csv文件。 - CSV 文件包含以下列:
Date、Open、High、Low、Close、Volume(因auto_adjust=True,无 Adj Close 列)。 - 记录数约为 250 条左右(一年交易日数量),且
Date列无缺失值。
预期输出示例
数据已保存至: aapl_history.csv
共 251 条记录
前3行数据预览:
Date Open High Low Close Volume
0 2024-01-02 187.1500 188.4400 183.8900 185.6400 82488700
1 2024-01-03 184.2200 185.8800 181.2700 184.2500 79330700
2 2024-01-04 181.2700 183.4500 180.2900 181.9100 70536100
注意:以上输出为基于代码逻辑的预期格式示例,实际数值会随下载日期不同而变化。若网络正常且代码执行无误,即可判定任务完成。