码迷,mamicode.com
首页 > 移动开发 > 详细

【机器学习】Pandas库练习-获取yahoo金融苹果公司的股票数据

时间:2020-07-15 01:13:47      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:plt   sort   练习   data   app   移动平均   mat   移动   code   

    # 获取yahoo金融苹果公司的股票数据。
# 1、分析拉取的数据,找到收盘数据列的列名。
# 2、绘制收盘价格柱状图。
# 3、分析拉取的数据涨跌率,股价移动平均和波动率。
# 4、 找出开盘价和收盘价最高的那一天
# 5、 获取股票表格总共有多少行多少列
# 6、 对股票的每列按照月为单位求平均值
# 7、将股票表格按照adj close股价进行由高到低排序

# 练习提示:
# 1. 使用pandas_datareader读取苹果公司的2020年上半年的股票指数
# 2. 求股票的涨跌率return:当天的收盘指数/前一天的收盘指数的对数
# 3. 股价的移动平均值:#求移动平均值rolling(42).mean()
# 4. 股价的波动率:return(股票的涨跌率).rolling(42).std() 乘以窗口期的均方根
import datetime
import yfinance as yf #雅虎api
import pandas_datareader.data as web
import numpy as np
import pandas as pd
import cmath
import matplotlib.pyplot as plt

#1
yf.pdr_override()
start = datetime.datetime(2020, 1, 2)#开始日期
end = datetime.datetime(2020, 7, 1)#结束日期
apple = web.get_data_yahoo(AAPL, start, end)
print(apple.columns.values)
#
# #2
# apple[‘Close‘].plot(kind=‘bar‘)
# plt.show()
#
# # 3
# # 涨跌率
# apple[‘Return‘] = np.log(apple[‘Close‘]/apple[‘Close‘].shift(1))
# apple[‘Return‘].plot(kind=‘bar‘)
# plt.show()
# #股价移动平均
# apple[‘42d‘]=apple[‘Close‘].rolling(42).mean()
# apple[‘42d‘].plot(kind=‘bar‘)
# plt.show()
# #波动率
# apple[‘Mov_Vol‘]=apple[‘Close‘].rolling(42).std()*cmath.sqrt(42)
# apple[‘Mov_Vol‘].plot(kind=‘bar‘)
# plt.show()
# # 4
# apple=apple.sort_values(by=‘Open‘)
# print("OpenMax:",apple.index[-1])
# apple=apple.sort_values(by=‘Close‘)
# print("CloseMax:",apple.index[-1])
# apple=apple.sort_values(by=‘Close‘)
# # 5
# print("行数:",len(apple.index))
# print("列数:",len(list(apple)))
# # 6
# apple[‘index‘] = apple.index
# print(apple.groupby([apple[‘index‘].dt.year, apple[‘index‘].dt.month]).mean()[‘Close‘])
# 7
print(apple.sort_values(by="Adj Close",ascending=False))

 

【机器学习】Pandas库练习-获取yahoo金融苹果公司的股票数据

标签:plt   sort   练习   data   app   移动平均   mat   移动   code   

原文地址:https://www.cnblogs.com/LPworld/p/13303084.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!