数据处理:pandas进行股票数据和时间事件日志分析

本文介绍了如何使用Python的pandas库进行股票数据分析,包括获取和分析股票交易数据,以及时间事件日志的读取、清洗和分析。在股票数据部分,涉及了波动幅度、增长曲线和增长率的计算;在时间事件日志部分,涉及了数据清洗、时间分配及专注力分析等。
摘要由CSDN通过智能技术生成

第一部分:股票数据分析

一.概述

例如一个股票数据的下载链接:
http://quotes.money.163.com/service/chddata.html?code=0600690&start=19931119&end=20180706&fields=TCLOSE;HIGH;LOW;TOPEN;LCLOSE;PCHG;TURNOVER;VOTURNOVER;VATURNOVER
把 code, start, end 字段修改一下即可下载其他股票在指定时间的交易数据。股票代码前面的那个数字表示的是交易所,0 表示上海证券交易所,1 表示深圳证券交易所。

二.数据分析

1.某数据的波动幅度:例如按月分析

adj_price = data['Adj Close']
resampled = adj_price.resample('m').ohlc()
(resampled.high - resampled.low) / resampled.low

2.增长曲线:adj_price.plot(figsize=(8, 6))
3.增长倍数:
1)最高增长倍数:total_max_growth = adj_price.max() / adj_price.min()
2)当前平均增长倍数:total_growth = adj_price.iloc[0] / adj_price.iloc[-1]
3)最大年均复合增长率:求出价格最高、最低的年份之差,再对增长倍数开相应次数的根号
在这里插入图片描述

min_date = adj_price.argmin()
max_date = adj_price.argmax()
max_growth_per_year = total_max_growth ** (1.0 / (max_date.year - min_date.year))
max_growth_per_year

4)平均年化增长率:

price_in_years = adj_price.to_period(freq='A').groupby(level=0).first() #按年分组并用每年第一月份数据表示
diff = price_in_years.diff() #求出每一年与上一年之差
rate_in_years =  diff / (price_in_years - diff) #当年数据减去与上一年之差=上一年数据,差值/上年数据==增长率
rate_in_years.plot(kind='bar', figsize=(8,6)) #柱状图
X = [
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值