ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

数据分析--01股票分析

2021-09-21 20:35:21  阅读:142  来源: 互联网

标签:数据分析 01 -- open df date close csv data


文章目录

需求:股票分析

  • 使用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

标签:数据分析,01,--,open,df,date,close,csv,data
来源: https://blog.csdn.net/LIANGFANGWEI/article/details/120404987

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有