Python 与金融科技6|上证50的收盘价汇总

上一期中,我们批量获取了上证50全部股票的交易数据,并将每支股票的交易数据以CSV的格式保存到本地。这一期中,我们将把五十支股票的复权收盘价汇总为一个文件,并将其保存到本地。

前言

在这个系列中,我们将共同学习如何借助Python这个强大的工具处理金融数据。在正式开始这个系列的学习之前,需要您具有Python编程的基础知识,至少需要将Python安装好。如果暂时还不满足这一要求的,建议先关注公众号 IT信息教室,学习 Python入门教程。

内容首发于微信公众号IT信息教室,如果您想学习更多AI相关的技能,欢迎搜索关注或微信扫描下方二维码关注~~

在这里插入图片描述

收盘数据的汇总

目前我们获取到每一支股票的交易数据中包含 开盘价 Open,收盘价 Close,最高价 High,最低价 Low,交易量 Volume 和复权收盘价 Adj Close。这一期我们重点关注复权收盘价,并将五十支股票的复权收盘价汇总到同一个文档中。

类似的的,我们使用函数 compileData 来实现本期的功能:

def compileData():
    with open ('SS50tickers.pickle', 'rb') as f:
        tickers = pickle.load(f)

首先获取上证50所有的股票代码供后续使用。获取的方式与之前相同:

使用文件操作 open 设置为读取模式 ‘rb’,然后使用 load 方法读取 pickle 格式文件中的内容。

因为要将所有的复权收盘价存放到一个文件中,所以首先需要创建一个 data frame 格式的变量用于存放数据。

使用 pandas 中的 DataFrame 方法可以创建一个空的 data frame 格式的变量。

因此,首先需要导入 pandas 这个工具包:

import pandas as pd

然后在函数中使用 pd.DataFrame() 方法创建一个新的变量:

mainDataFrame = pd.DataFrame()

接下来通过一个循环语句,按照保存的文件名,分别读取每支股票的数据文件:

for ticker in tickers:
    dataFrame = pd.read_csv('stockDataFrames/{}.csv'.format(ticker))

然后对每支股票的数据进行预处理。首先设置索引方式为按照时间列 ‘Date’ 索引:

dataFrame.set_index('Date', inplace = True)

因为我们只汇总复权成交价,也就是 ‘Adj Close’ 这一列的数据,因此,我们只保存这一列的数据,并以当前股票的名称来命名这一列。

使用 rename() 这个方法重命名列名称,另外使用 drop() 这个方法删除其它几列。

dataFrame.rename(columns = {
   'Adj Close': ticker}, inplace = True)
dataFrame.drop(['Open', 'Close', 'High', 'Low', 'Volume'], 1, inplace = True
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值