pandas股票分析

import pandas as pd
#可以将本地的文件数据读取到df,./data/600519.xlsx
df = pd.read_excel('data/600519.xlsx')
df.head()

Out[186]:

#删除无用的一列
df.drop(columns='Unnamed: 0',inplace=True) #inplace=True将删除操作作用在了原始数据中
df.shape
(2153, 7)
df.head()

#将date列转转换成时间类型
df['date'] = df['date'].astype('datetime64') #astype用作类型转换

计算股票的每日收益率和7日波动率:通过计算收益率和波动率,评估股票的风险和收益情况。

每日收益率:(当日收盘价 - 前一日的收盘价)/ 前一日的收盘价

                           shift():将一组数据向前或者前后进行移动

                          7日波动率:对每日收益率数据进行每7日滚动的方差计算

                           rolling():设置滚动窗口

df['close'].shift(1)  #前日收盘

#每日收益率:(当日收盘价 - 前一日的收盘价)/ 前一日的收盘价
day_rate = (df['close'] - df['close'].shift(1)) / df['close'].shift(1)
day_rate

#7日波动率
day_7_rolling_rate = day_rate.rolling(7).var() #var计算一组数据的方差
day_7_rolling_rate

#每日市值
day_values = df['close'] * df['volume']
day_values

#找出市值数据中最大最小值下标(市值最大和最小日期)
day_values.idxmax() #求最大元素下标

day_values.idxmin() #求最小元素下标

输出该股票所有收盘比开盘上涨3%以上的日期

(收盘 - 开盘) / 开盘 > 0.03

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值