1 介绍

文档 Document:Akshare

Github:Akshare

2 安装

2.1 重要提示
  1. 目前 AKShare 仅支持 64 位版本的操作系统安装和使用;
  2. 目前 AKShare 仅支持 Python 3.8(64 位) 及以上版本, 这里推荐 Python 3.11.x(64 位) 版本;
  3. AKShare 推荐安装最新版本的 Anaconda (64 位), 可以解决大部分环境配置问题;
  4. 对于熟悉容器技术的小伙伴, 可以安装 Docker 使用, 指导教程如下: AKShare Docker 部署.
2.2 安装
pip install akshare --upgrade -i https://pypi.tuna.tsinghua.edu.cn/simple

3 试用

3.1 指数数据
import akshare as ak

# 单次返回所有指数的实时行情数据
zh_index_spot_em_df = ak.stock_zh_index_spot_em(symbol="上证系列指数")

效果(沪市指数列表):

3.2 指数历史行情
# 单次返回具体指数的所有历史行情数据
index_df = ak.index_zh_a_hist(
        symbol="000300", period="daily", start_date="20140101", end_date="20240930")

效果(沪深300历史数据):

4 用途

举例:可以计算各个指数每年的年收益率

def calculate_annual_returns(df:pd.DataFrame):
    # 确保传入的DataFrame包含'date'和'close'列
    if 'date' not in df.columns or 'close' not in df.columns:
        raise ValueError("DataFrame must include 'date' and 'close' columns")

    # 将 'date' 列转换为日期格式
    df['date'] = pd.to_datetime(df['date'])

    # 添加一个 'year' 列,其中包含日期的年份
    df['year'] = df['date'].dt.year

    # 对每年的数据进行分组,并计算年初和年末的收盘价
    annual_data = df.groupby('year').agg({'close': ['first', 'last']})

    # 计算年度收益率
    annual_data['annual_return'] = round((
        annual_data['close']['last'] / annual_data['close']['first'] - 1) * 100)

    # 重置索引以方便查看结果
    annual_returns = annual_data.reset_index()

    # 重命名列以使其更具描述性
    annual_returns.columns = [
        'year', 'start_of_year_close', 'end_of_year_close', 'annual_return']

    # 输出起止日期
    start_date = dt.datetime.strftime(df['date'].min(), '%Y%m%d')
    end_date = dt.datetime.strftime(df['date'].max(), '%Y%m%d')

    return annual_returns, start_date, end_date
4.1 中国
4.1.1 国债指数 000021

4.1.2 上证综指 000001

4.1.3 深证成指 399001

4.1.4 创业板 399006

4.1.5 中小100 399005

4.1.6 上证50 000016

4.1.7 沪深300 000300

4.2 美国
4.2.1 道琼斯工业平均指数 DJIA

4.2.2 纳斯达克综合指数 IXIC

4.2.3 纳斯达克100指数 NDX

4.2.4 标准普尔500 INX

4.3 商品
4.3.1 COMEX 黄金(以人民币央行中间价计价)

4.3.2 COMEX 黄金(以美元计价)

4.3.3 美元人民币汇率中间价

4.4 中国香港
4.4.1 恒生指数 HSI

4.4.2 恒生科技指数 HSTECH

4.4.3 恒生国企指数 HSCEI

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐