zoukankan      html  css  js  c++  java
  • 数据分析---使用Tushare对股票分析

    Demand:

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

    使用tushare包获取某股票的历史行情数据

    • pip install tushare

    import tushare as ts
    df = ts.get_k_data('600519',start='1900-01-01')
    
    df.to_csv('./maotai.csv')
    
    #输出该股票所有收盘比开盘上涨3%以上的日期
    
    df = pd.read_csv('./maotai.csv')
    df.drop(labels='Unnamed: 0',axis=1,inplace=True)
    
    #验证data列中数据的数据类型
    type(df['date'][9])
    
    #将date这一列的数据先转成时间类型然后将其作为原数据的行索引
    df = pd.read_csv('./maotai.csv',index_col='date',parse_dates=['date'])
    df.drop(labels='Unnamed: 0',axis=1,inplace=True)
    
    #(收盘-开盘)/开盘 > 0.03
    (df['close'] - df['open']) / df['open'] > 0.03
    #True:满足需求
    #false:不满足
    
    #返回了满足需求的行数据
    df.loc[(df['close'] - df['open']) / df['open'] > 0.03]
    #获取了满足需求的日期
    df.loc[(df['close'] - df['open']) / df['open'] > 0.03].index
    
    #结论:如果获取了一组布尔值,接下来改组布尔值就直接作为元数据的行索引
    
    (df['open'] - df['close'].shift(1))/df['close'].shift(1) < -0.02
    
    #满足需求的行数据
    df.loc[(df['open'] - df['close'].shift(1))/df['close'].shift(1) < -0.02].index
    
    
    
    df_new = df['2010':'2019']
    #数据的重新取样的机制(resample):根据指定好的规则进行指定数据的提取
    
    df_monthly = df_new.resample('M').first()
    #计算出买股票一共花了多少钱
    
    cost_monry = df_monthly['open'].sum()*100
    df_yearly = df_new.resample('A').last()
    
    df_yearly = df_yearly[:-1]
    
    recv_monry = df_yearly['open'].sum()*1200
    last_price = df.iloc[-1]['close']
    
    cunHuo_price = last_price * 900
    
    #计算总收益
    cunHuo_price+recv_monry-cost_monry

     

  • 相关阅读:
    Linus大神Win 7发布当天踢馆恶搞
    使用OpenSSL生成CSR文件,并申请全球通用SSL证书
    看Google的1000万.不是美元..是1000万台服务器!
    常见病毒 木马进程速查表
    GeoServer 2.0 正式版发布
    linux LiveCD 制作笔记
    开源WEB服务器lighttpd 1.4.24发布
    Nginx 的 server_names_hash_bucket_size 问题
    商业开源厂商最爱GPL,GPL并不能保证软件自由
    MySQL update回滚 mysqlbinlog回复数据
  • 原文地址:https://www.cnblogs.com/xied/p/12588745.html
Copyright © 2011-2022 走看看