前言: 哈喽,俗话说:“盛世藏古董,乱世买黄金”。黄金自古以来都是价值浮动不是很大的货币,直到现在社会依然有很多人收藏黄金。而古董是我们老祖宗留给我们的财富属于不可再生的资源,所以在未来肯定是增值趋势。而黄金是当今世界唯一流通的货币,所以任何时间都不会失去其固有的金属价值。
文章图片
今天小编就用python来分析一下最近的股票市场。
一、数据获取 数据获取范围为2022年一月一日到2022年2月25日,获取的数据为俄罗斯黄金,白银,石油,银行,天然气:
# 导入模块
import numpy as np
import pandas as pd
import yfinance as yf# GC=F黄金,SI=F白银,ROSN.ME俄罗斯石油,SBER.ME俄罗斯银行,天然气
tickerSymbols = ['GC=F', 'SI=F', 'ROSN.ME', 'SBER.ME','NG=F']# 获取这些代码的数据
MSFT = yf.Ticker(tickerSymbols[0])
TSLA = yf.Ticker(tickerSymbols[1])
AAPL = yf.Ticker(tickerSymbols[2])
AMZN = yf.Ticker(tickerSymbols[3])
GOOG = yf.Ticker(tickerSymbols[4])# 获取代码的历史价格
MSFT_df = MSFT.history(period='1d', start='2022-1-1', end='2022-2-25')
TSLA_df = TSLA.history(period='1d', start='2022-1-1', end='2022-1-25')
AAPL_df = AAPL.history(period='1d', start='2022-1-1', end='2022-1-25')
AMZN_df = AMZN.history(period='1d', start='2022-1-1', end='2022-1-25')
GOOG_df = GOOG.history(period='1d', start='2022-1-1', end='2022-1-25')# 比如天然气
GOOG_df.head()
如下:
文章图片
二、合并数据
# 将每只股票的收盘列保存到新变量中
MSFT = MSFT_df['Close']
TSLA = TSLA_df['Close']
AAPL = AAPL_df['Close']
AMZN = AMZN_df['Close']
GOOG = GOOG_df['Close']# Concatenate all stocks close columns into one data frame
stocks_df = pd.concat([MSFT, TSLA, AAPL, AMZN, GOOG], axis='columns', join='inner')# Rename the data frame columns with their corresponding tickers symbols
stocks_df.columns = ['gold', 'silver', 'oil', 'bank', 'gas']# Visualize the new data frame
stocks_df.head()
如下:
文章图片
三、绘制股票每日百分比变化
# 接下来,让我们计算股票每日百分比变化并绘制它们以直观地分析它们在过去一个多月中的变化行为。
# 获取每日百分比变化
stocks_df = stocks_df.pct_change().dropna()# 可视化新数据框
stocks_df.head()# 绘制每日百分比变化
stocks_df.plot(figsize=(20, 10), title="Daily Returns");
如下:
文章图片
从图也可以看出哪个变动大,哪个稳定(自己用眼睛看)
四、箱线图 上面的图确实不好看,所以我们画一个箱线图更加直观:
# 箱线图
# 计算累积回报
cumulative_returns = (1 + stocks_df).cumprod()# 绘制累积回报
cumulative_returns.plot(figsize=(20, 10), title="Cumulative Returns");
# 箱线图直观地显示风险
stocks_df.plot.box(figsize=(20, 10), title="Portfolio Risk");
累计回报图:
文章图片
箱线图:
文章图片
【Python|乱世买黄金(用python分析一下最近的股票市场)】显然是天然气收益最高;盒子越宽,晶须越长,股票的波动性就越大。石油最稳定,天然气波动大了点
五、计算月化夏普比率
#计算月化夏普比率
sharpe_ratios = (stocks_df.mean() * 30) / (stocks_df.std() * np.sqrt(30))
sharpe_ratios = sharpe_ratios.sort_values(ascending=False)
sharpe_ratios
如下:
文章图片
#将夏普比率可视化为条形图
sharpe_ratios.plot(figsize=(20, 10), kind="bar", title="Sharpe Ratios");
如下:
文章图片
六、结论 根据以上结果,建议购买黄金,其次为白银,天然气,俄罗斯银行和石油不建议购买。注意:以上分析数据为2022年1月1日到2022年2月5日分析图。
最后完整代码已经打包整理好了,有需要的小伙伴,可以点击这行字体,要么私信小编!
文章图片
推荐阅读
- 尚硅谷|Python爬虫 urllib -- 爬虫的相关概念介绍、urllib库的基本使用、urllib(1个类型和6个方法)
- java基础|JAVA基础之超详细面向对象程序设计一|CSDN创作打卡
- python|学了这么久的Python,到底是什么水平(用这两个项目就能得到检验)
- 人工智能|名校硕士苦攻5年AI无论文痛苦吐槽,导师放养怎么办()
- 深度学习|在Android上部署TF目标检测模型
- 项目|python之逻辑回归项目实战——信用卡欺诈检测
- python-opencv|opencv缩放
- 图像处理|5分钟学会,使用opencv进行基本的图像操作—读、写、显示、缩放、裁剪(python语言)
- Python|用反向传播学习识别mnist手写数字(mini-batch版)