数据分析--01股票分析

文章目录

需求:股票分析

  • 使用tushare包获取某股票的历史行情数据。
  • 输出该股票所有收盘比开盘上涨3%以上的日期。
  • 输出该股票所有开盘比前日收盘跌幅超过2%的日期。
  • 假如我从2010年1月1日开始,每月第一个交易日买入1手股票,每年最后一个交易日卖出所有股票,到今天为止,我的收益如何?

import tushare as ts
import pandas as pd
from pandas import DataFrame,Series
import numpy as np
df=ts.get_k_data(code='600519',start='2000-01-01')
# 将DataFrame 存储到csv文件中
df.to_csv('./maotai1.csv')
df

df=pd.read_csv('maotai.csv')

# 删除 无用的列
df.drop(['Unnamed: 0'],axis=1,inplace=True)
# 先转为时间 再设置索引 如果是先设置索引再转时间就报错
df['date'] =pd.to_datetime(df['date'])

df=df.set_index('date')
# 1 输出该股票所有收盘比开盘上涨3%以上的日期。
# 取出所有为Ture的索引
raise_1=df.loc[(df['close']-df['open'])/df['open']>0.03].index  
raise_1  


# 2.输出该股票所有开盘比前日收盘跌幅超过2%的日期。
data=df
# 取出某一列或者某几列 上下或者左右移动 
data['close']=data['close'].shift(periods=1,axis=0)

data.loc[((data['open']-data['close'])/data['close']<-0.02)].index


# 3.假如我从2010年1月1日开始,每月第一个交易日买入1手股票,每年最后一个交易日卖出所有股票,到今天为止,我的收益如何?

# 收入-支出

df=pd.read_csv('maotai.csv')

# 删除 无用的列
df.drop(['Unnamed: 0'],axis=1,inplace=True)
# 先转为时间 再设置索引 如果是先设置索引再转时间就报错
df['date'] =pd.to_datetime(df['date'])

df=df.set_index('date')

# 筛选出数据
df=df.loc['2010-01':'2021-12']
# 购买的价格
buy_price=df['open'].resample('M').first().sum()*100
# 2010-2020年之间卖的价格
sale_price1=df['open'].resample('Y').last().sum()*100
# 2021到今天(9.21)之间股票价格利润
sale_price2=df['close'].iloc[-1]*900
profite=sale_price1+sale_price2-buy_price
profite

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值