AKShare获取单一股票历史数据
·
概述
本文将介绍如何使用Python的AKShare库获取工商银行股票历史数据,并计算日收益率,最终将处理好的数据保存为CSV文件。
环境准备
确保已安装以下Python库
pip install akshare pandas
获取数据
这里以工行(601398)为例
df_stock = ak.fund_etf_hist_sina(symbol="sh601398")
确保日期列为日期格式,并设为索引
df['date'] = pd.to_datetime(df['date'])
df.set_index('date', inplace=True)
以股票数据的日期为基准创建DataFrame,计算收盘价的日百分比变化
returns = pd.DataFrame({
'收益率': df['close'].pct_change()
}).dropna()
保存数据到csv文件
returns.to_csv('工行收益率.csv', encoding='utf-8-sig')
完整代码
import akshare as ak
import pandas as pd
# 获取工商银行股票数据
df = ak.fund_etf_hist_sina(symbol="sh601398")
# 数据处理
df['date'] = pd.to_datetime(df['date'])
df.set_index('date', inplace=True)
# 创建收益率DataFrame
returns = pd.DataFrame({
'收益率': df['close'].pct_change()
}).dropna()
# 输出结果
print(f"收益率数据概览:")
print(returns.head())
print(f"\n数据时间范围: {returns.index.min()} 至 {returns.index.max()}")
print(f"总交易日数: {len(returns)}")
# 保存数据
returns.to_csv('工行收益率.csv', encoding='utf-8-sig')
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)