zoukankan      html  css  js  c++  java
  • 股票数据的处理(获取,头部尾部显示,循环处理,向量化处理,提取列数据,画图)

    # hanbb
    # come on!!!
    import pandas_datareader.data as web
    import datetime
    import numpy as np
    import matplotlib.pyplot as plt
    start = datetime.datetime(2016, 1, 1) # or start = '1/1/2016'
    end = datetime.date.today()
    date = web.get_data_yahoo('300481.sz',start=start,end=end)
    # DAX = web.DataReader(name="GDAXI",data_source="yahoo",start=start,end=end)
    
    # print(date.info()) # 打印基本信息
    # print(date.head()) # 打印头五条信息
    # print(date.tail()) # 打印后面五条信息
    
    # 图形显示
    # plt.plot(date['Close'])
    # plt.show()
    
    '''
    # 循环方法处理
    date['ret_loop']=0.0  # 增加一列全部是零
    for i in range(1,len(date)):              # 一列数据的逐个处理
         date['ret_loop'][i]=np.log(date["Close"][i]/date["Close"][i-1])
    #
    # # plt.plot(date['ret_loop'])
    # # plt.show()
    # print(date[['Close','ret_loop']].tail())   # 打印两列的尾部信息
    '''
    
    # 向量化处理
    date['return']=np.log(date["Close"]/date["Close"].shift(1))
    print(date[['Close','return']].tail())
    
    # 图像显示
    plt.figure(figsize=(7,5))       # 确定图片大小
    plt.subplot(211)                # 确定第一个图的位置 (行,列,第几个)两行一列第一个图
    
    plt.plot(date['Close'],'b',label="Close")
    
    plt.grid(True)
    plt.axis('tight')
    plt.xlabel("Date")
    plt.ylabel('Colse')
    plt.title("300481",size=20)
    
    plt.legend(loc=0)
    
    plt.subplot(212)               # 确定第一个图的位置
    plt.plot(date['return'],'g',label="Return")
    plt.ylim(-0.15,0.15)
    plt.ylabel("Return")
    plt.legend(loc=0)
    
    plt.show()

  • 相关阅读:
    SQL CREATE TABLE 语句
    SQL CREATE DATABASE 语句
    SQL INSERT INTO SELECT 语句
    SQL SELECT INTO 语句
    Why is chkconfig no longer available in Ubuntu?
    drag-html
    js利用offsetWidth和clientWidth来计算滚动条的宽度
    procomm plus
    很多shell命令后面的单横杠和双横杠,原来这个意思
    angular md-toast 颜色
  • 原文地址:https://www.cnblogs.com/hanbb/p/7862584.html
Copyright © 2011-2022 走看看